超声波模块

电路连接

超声波HCSR04模块有四个引脚,VCC,GND,TRIG和ECHO。

VCC接5V即可。

TRIG引脚负责发射超声波信号的信号引脚。这个引脚需要用超过10us的高电平来启动,所以写了一个20us的函数。每一点HCSR04会发射8个40khz的方波。方波发射后,ECHO引脚会输出高电平。

ECHO引脚是用来测量距离的数据引脚。当一个超声波信号发射后,ECHO引脚会输出高电平。当ECHO引脚直到检测到超声波信号回来的时,ECHO引脚输出低电平。

//以定时器0和定时器1为例
#define uint unsigned int
uint PWM=0;  //定义PWM值,控制电机转速
unit pwm=0;sbit IN11 = P1^0; //定义逻辑口
sbit IN21 = P1^1;    sbit IN31 = P1^2;
sbit IN41 = P1^3;sbit a1=P2^1; //定义驱动使能口a1
sbit b1=P2^32 //定义驱动使能口b1sbit RX=P1^6;//定义超声波接收端Echo
sbit TX=P1^7;//定义超声波控制端Triguint i=0,j=0;void Time() //定时器0和1初始函数
{ TMOD |= 0x11;  //设置定时器0方式为1 定时器1为方式1
//  TMOD |= Ox01;  //设置定时器0方式为1EA=1;          //打开总中断TH0 = 0xfc;    //设置定时器处置为高四位,定时1msTL0 = 0x18;    //设置定时器设置为低四位ET0 = 1;   //打开定时器0中断允许TR0 = 1;       //打开定时器0TH1 = 0xfc;    //设置定时器处置为高四位,定时1msTL1 = 0x18;    //设置定时器设置为低四位ET1 = 1;    //打开定时器1中断允许TR1 = 1;       //打开定时器1}void Timer0() interrupt 1
{TH0=0xfc; TL0=0x18;      if(i>PWM)a1=1;else a1=0;           i++;if(i>=100)i=0;
}
void Timer1() interrupt 3
{TH1=0xfc; TL1=0x18;      if(j>pwm)b1=1;else b1=0;       j++;if(j>=100)j=0;
}void delay_20us()  //超声波延时20微秒
{TX=1;                         _nop_();_nop_();_nop_();_nop_(); _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();      _nop_();TX=0;
}void forward_move()  //电机正转函数,速度50,最大速度100
{PWM = 50;pwm = 50;IN11 = 0; IN21 = 1;    IN31 = 0;                                      IN41 = 1;
}void stop()  //电机停止
{PWM = 0;pwm = 0;IN11 = 0; IN21 = 0;    IN31 = 0;                                      IN41 = 0;
}void count_distence()  //定义超声波测距函数
{time=TH0*256+TL0;TH0=0;TL0=0;//s = 340m/s * time us /2 = 170*time *10^-6 m = 0.17*time mmS= (long)(time*0.17);  if(S<100){stop();}if(S>=100){forward_move(); }
}void main()
{Timer();while(1){delay_20us();while(!RX);//等待TX发出TR0=1;     //开始计时while(RX); //当TX发出时,RX为高电平TR0=0;     //终止计时count_distence();}
}

51单片机小项目--超声波避障小车相关推荐

  1. 利用52单片机制作的超声波避障小车(包含所有源码)

    做这个超声波避障小车的原因是因为单片机课程设计 一.硬件部分 1.电机驱动 电机驱动四个输入端IN1.IN2.IN3和IN4,四个输出端OUT1.OUT2.OUT3和OUT4,一个接地端GND,单片机 ...

  2. 51单片机小项目--红外巡线小车

    这次项目要求我们使用51单片机,实现红外循迹,超声波避障的功能. 我将这个几个实现的任务一步步分解开来,首先要然小车动起来,需要模块是需要电机和定时器,我们那时候用到小黄电机,驱动是用的L298N.然 ...

  3. 基于51单片机的红外自动避障小车(lunwen+任务书+开题+文献综述+翻译及原文+避障程序)

    目 录 1 绪论 1 1.1 课题研究背景及意义 1 1.2 国内外研究现状 1 1.2.1国外智能车辆研究现状 2 1.2.2发展前景 3 1.3 课题主要研究内容 4 2 工作原理及总体设计 5 ...

  4. 基于51单片机的超声波避障小车设计(含Proteus仿真)

    超声波避障程序随处可见,基于51单片机的超声波避障小车也很成熟,但是完整的Proteus仿真并不容易找到开源资料. 这次主要给大家分享其Proteus仿真部分. 涉及到的模块有:超声波模块(hc-sr ...

  5. stm32捕获占空比_基于STM32超声波避障小车

    不管是对于初学者还是对于一个玩过单片机的电子爱好者来说,或多或少都接触到过小车项目,今天给大家介绍的的一个项目基于STM32超声波避障小车.这也是我曾经的一个课设,在此开源分享给大家,全文5000多字 ...

  6. c语言超声波壁障源码,超声波避障小车源程序【精】

    电子制作空间收集的这套入门级小车(只是入门级的,仅供参考)希望诸位入门智能车的吧友有所帮助.可以实现避障.寻迹.测距.寻找静态物体.做这个项目的经验,可分为四步. 第1步:根据实际情况确定智能小车所需 ...

  7. STM32F103RCT6 实验代码之舵机+超声波避障小车(一)杂谈+电机+L298N

    STM32 舵机+超声波避障 一.直流电机 二.L298N模块 寒假由于时间较长,自己就想做一个智能车玩玩,第一个做的是蓝牙小车,不过比较简单,我就不打算具体另开一个部分,到时候挑一些与避障小车不一样 ...

  8. 基于STM32三路超声波避障小车

    基于STM32的避障小车 最近几天的学习了STM32输入捕获输入捕获的相关知识,为了巩固自己学习的知识特意制作一辆有三个超声波组成的4轮避障小车来加深对输入捕获的理解. 1.输入捕获简介 输入捕获模式 ...

  9. STM32F103RCT6 实验代码之舵机+超声波避障小车(三)蓝牙遥控

    STM32 蓝牙遥控 一.蓝牙简述 二.蓝牙遥控 一.蓝牙简述 我这次把小车的坑补上,这是小车的最后一个部分,蓝牙遥控.这个部分重点在于蓝牙,其实蓝牙可以相当于一个串口,用串口通信就可以进行手机与单片 ...

最新文章

  1. 如皋技校计算机老师,如皋中专计算机考试名列南通第一 共2457人参考合格率达95.5%...
  2. Forrester发表2010年度MSS市场分析报告
  3. 【网络安全】xhCMS代码审计思路
  4. java web开发技术大_2021年六大javaweb开发主流技术
  5. mysql正在加载_mysql 数据库基本操作
  6. shopex安装Zend Optimizer - 3.3.0后依然乱码
  7. Spring Boot Test 进行JPA 测试保存数据到数据库
  8. 富文本支持粘贴excel表格_Anki插件-OneNote importer(富文本批量导入)
  9. springboot map数据类型注入_Spring Boot(五):春眠不觉晓,Mybatis知多少
  10. 小苹果 html,定时轮播.html
  11. android studio没有logcat窗口_区块链研究实验室|从Android调用区块链智能合约
  12. EGE基础:鼠标消息篇
  13. 5.2 Photoshop复制图层的几种方式 [原创Ps教程]
  14. USB Host、USB Device和USB otg的理论简析
  15. cc2530dma控制器功能_dma控制器是什么_dma控制器工作方式
  16. KMPlayer播放mkv视频不出声音的解决办法
  17. 初步了解PS“时间轴”
  18. 餐饮行业裂变解决方案
  19. Jquery之瀑布流
  20. 【Python】获取数组中非零元素

热门文章

  1. 利用百度地图API制作房产酒店地图
  2. 【计算机图形学入门】笔记5:光栅化(三角形的离散化)
  3. 5G定位系统,实现通信服务和定位功能一体化
  4. java生成pdf分页_java itext导出PDF 分页 github
  5. Android代码修改ConstraintLayout约束关系
  6. 锁相环(PLL)低杂散方案设想
  7. 微信开发工具及Hbuilder中引用阿里巴巴矢量库(步骤一样)
  8. espwho-esp32cam-vscode开发使用
  9. 公司招聘专员爆头痛哭,求职者再拒绝我的邀请我就要。。。
  10. 交换机芯片笔记1.2