超声波检测SR04如果ECHO经过很长时间没有变高电平,程序是不是就会卡死在这里

超声波检测SR04如果ECHO经过很长时间没有变高电平,程序是不是就会卡死在这里_第1张图片

超声波检测SR04如果ECHO经过很长时间没有变高电平,程序是不是就会卡死在这里,

1:我最开始想的是有可能会卡死在这里。

2:我想通过一个do while进行检测超时,SR04有效检测范围在2cm到450cm,我想的是那就给他当成1000cm(来回450cm共900cm),1000cm除以340m/s(声速)大约等于30ms。我就用do while进行30ms的检测超时,我为什么会这样想,因为IIC中EEPROM有一个写入超时检测。

do while具体怎么写我没有想出来。

3:我回头一想又感觉上面都是废话,在一个屋子里面也就屋子长和宽也就6、7米,声音速度340m/s对于6、7米的距离时间也就大约20ms,对于程序来说还不到卡死的地步(我认为的卡死1、2分钟没有反应)。

4:其实也不全是废话,你把SR04对着天空,那ECHO可能会接受不到信号。

你可能感兴趣的:(笔记,单片机,stm32,c语言)