>>
知识广场
记一次调试BUG: ADX345输出为0【C语言优先级<<小于+】
导读:
在调试ADX345时,读0X00寄存器可以得到229,证明i2c没问题,但读取数据时,log打出来的总是0翻阅网上各种文章,复位,延时,都试了,不好使。后来仔细检查代码发现:gyro[0] = tmp…
在调试ADX345时,读0X00寄存器可以得到229,证明i2c没问题,但读取数据时,log打出来的总是0
翻阅网上各种文章,复位,延时,都试了,不好使。
后来仔细检查代码发现:
gyro[0] = tmp[0]<<8 + tmp[1];
结果一直不对,静态没有输出。再检查代码发现,<<优先级比+要低,加括号后改为
gyro[0] = comp2raw((tmp[0]<<8) + tmp[1]);
输出结果正常了。
相关推荐
- 阅读榜
- 1. U.FL座 IPEX/IPX接头1代,2代,3代,4代,5代区分对照图
- 2. NTC热敏电阻B值3950(温度系数对照表)
- 3. PWM转模拟量DAC消除纹波的方法总结
- 4. 快速开发CSS的利器——less的基本用法
- 5. Win10: WMI Provider Host 占用CPU过高解决方案
- 6. 什么情况下免征教育附加税,地方教育附加税?两附加费优惠政策
- 7. 什么是热电阻两线制、三线制、四线制接线?接法原理总结
- 8. STM32 编译 Error: L6411E、L6310E 解决方法
- 9. NB-IoT中的PSM,eDRX,DRX模式分别表示是什么?
- 10. linux主机ssh命令来查看某一端口是否开放