23.4.3  超声波测距子程序的设计

23.4.3 超声波测距子程序的设计

超声波传感器发射超声波,关闭定时器,将计数器清零,随后计时开始,在接收到从障碍物返回来的超声波时计数停止,读取并计算小车与障碍物间的距离。若相距超过20cm,则小车继续前进,否则小车后退转向。超声波测距子程序流程如图23-9所示。

提取定时器的数值,然后通过计算可得到距离的Conut()函数代码如下:(S表示测出的距离,Uint型变量,如返回124,则表示为1.24m,当距离超过5m时,返回S=666,则表示超出量程。)

978-7-111-59182-5-Part03-97.jpg

图23-9 超声波测距子程序流程图

978-7-111-59182-5-Part03-98.jpg

978-7-111-59182-5-Part03-99.jpg