STM32/STM8技术论坛
直播中

编代码好心塞

10年用户 8经验值
擅长:可编程逻辑 嵌入式技术 光电显示
私信 关注
[资料]

避障模块,GPIO_ReadInputDataBit()函数

请教各位前辈,做避障小车时遇到了一些问题,说明:用的8路红外避障模块(模块遇到障碍源时,输出低电平信号)
我设置的是上拉输入,然后用GPIO_ReadInputDataBit()读取8个口的信号,然后用一个变量的8位分别存储,然后用switch...case语句进行判断;
以下是我编的代码,但是功能没法儿实现啊...求教各位,是哪里出了错。。 QQ圖片20160410160408.jpg
已退回3积分

回帖(4)

xyufeng2008

2016-4-10 17:24:50
你可以给s1到s8赋确定的值,然后看看led是不是按预想的亮,如果是,说明是模块不正常
举报

编代码好心塞

2016-4-11 00:27:13
引用: xyufeng2008 发表于 2016-4-10 17:24
你可以给s1到s8赋确定的值,然后看看led是不是按预想的亮,如果是,说明是模块不正常

我后来又重新编了一下case语句...然后用led试验是可行的..但是连上电机就不行了...
举报

梅梦醒

2016-4-23 19:15:00
兄弟,如果s8=0000 0001  ,执行s8<<8后就成了s8=0001 0000 0000,这应该不是你想要的结果吧?
举报

梅梦醒

2016-4-23 19:16:30
如果是这个错了的话,那前面的除开s1不移动之外,其他的左移动都要减1
举报

更多回帖

发帖
×
20
完善资料,
赚取积分