标题: 超声波测距模块没有收到回波信号,则ECHO引脚则一直为低电平吗? [打印本页]

作者: Cmz@    时间: 2020-6-9 17:09
标题: 超声波测距模块没有收到回波信号,则ECHO引脚则一直为低电平吗?
while(Rx==0); //等待Rx回波引脚变高电平
             succeed_flag=0; //清测量成功标志
             EX0=1;          //打开外部中断
                   TH1=0;          //定时器1清零
超声波测距模块没有收到回波信号,则RX引脚会一直是低电平,然后陷入while的死循环吗?


作者: 离离原上菜    时间: 2021-3-9 18:42
超声波这个问题,你现在搞清楚了吗,我也有同样疑问。不过我觉得是一发出方波以后,echo就高电平,这样收到回波以后,echo变低,这样echo高电平的时间刚好是从发送到接受的时间。我准备稍后拿程序验证一下
作者: 酒后言    时间: 2022-4-19 09:43
我也出现过这样的问题,后来找到问题的原因是电压给的不够,无法驱动超声波运作,所以就造成了死循环无法跳出来。
作者: laowang123222    时间: 2022-4-19 12:39
是的,while循环里RX=0之后才会继续执行下面的语句
作者: npn    时间: 2022-4-19 12:49
酒后言 发表于 2022-4-19 09:43
我也出现过这样的问题,后来找到问题的原因是电压给的不够,无法驱动超声波运作,所以就造成了死循环无法跳 ...

需要在规定时间内等到回波信号,超时返回 -1,否则会死循环。
作者: zyx999    时间: 2022-7-13 18:15
npn 发表于 2022-4-19 12:49
需要在规定时间内等到回波信号,超时返回 -1,否则会死循环。

具体怎么解决呢




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1