51超声波测距模块代码
时间: 2023-09-15 22:23:11 浏览: 47
以下是51单片机使用超声波测距模块的代码:
```c
#include <reg51.h>
sbit Trig = P1^0;
sbit Echo = P1^1;
unsigned int distance;
void delay(unsigned int us)
{
while(us--);
}
void UltrasonicWave()
{
unsigned int temp=0;
Trig = 1;
delay(10);
Trig = 0;
while(!Echo);
while(Echo)
{
temp++;
delay(10);
if(temp>500) break;
}
distance = temp * 1.7;
}
void main()
{
while(1)
{
UltrasonicWave();
}
}
```
在上述代码中,Trig和Echo引脚分别连接到P1.0和P1.1。使用超声波测距模块的原理是,先向Trig引脚发送一个高电平信号,持续时间为10us,然后Trig引脚自动变为低电平。此时,模块会发出8个40KHz的超声波脉冲,同时Echo引脚输出高电平,表示模块已经发出了超声波。当超声波遇到障碍物时,会被反射回来,Echo引脚也会变为低电平,此时可以通过计算高电平持续的时间来计算出超声波的往返时间,从而得到距离。在这里,我们通过计算高电平持续的时间和一个系数1.7来得到了距离。整个过程会不断循环,实时监测距离的变化。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)