使用3个HC-SR04传感器,测出的数据会有影响,不知道什么问题,求大神帮忙(并不是因为发出的超声波干涉)

2019-10-16 01:52发布

本帖最后由 citabless 于 2016-12-6 19:09 编辑

我用的是STM32F103RBT6单片机,使用在一个无碳小车的比赛上的,用单片机控制转向和避障,我用了3个超声波传感器,分别测量前方F,左侧L,右侧R三个方向的距离,在测试的时候L和R的两个超声波可以一起使用,但是只要加上F数据就完全不对了测距的函数是这 测距函数 测距函数 个超声波是这么设置的
2.png 3.png 4.png 5.png
现在问题是我用了一个灯来测试传感器,函数如下 6.png
在测距函数里如果加入了Distance_F()就会导致L 和R 的数据出问题,灯常亮,但是F得数据是好的
如果把Distance_F()注释掉,只留LR,那两个互不干扰,都可以正常测距。就好像是F的程序把LR的距离数值给覆盖了还是清零了一样,不知道为什么,会不会是地址混在一起,或者内存不够数据相互覆盖了呢
距离是这么定义的 7.png 我是个单片机小白,会不会是单片机原理的问题,有没有大神能帮帮我,第一次发帖,不太懂什么规矩,也没有什么金钱,但是真的希望有人能帮帮我,,,马上就要比赛了T T 在此先谢过了
file:///C:UsersLYJAppDataRoamingTencentUsers979495991QQWinTempRichOleS]L9T6QXJ%9497@PD(OE}L3.png


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。