应用mpu6050时遇到的问题
今天在折腾mpu6050,顺带了解了一下软件iic跟硬件iic,学习了一下滴答计时器(Systick),跟定时器延迟函数。
网上看的资料说是硬件iic会在不同频率下有卡死情况,所以建议开发还是用软件iic。
在while中调用Systick做的Delay函数就会卡中断,所以不用这个了。
定时器delay目前没遇到bug。
操作寄存器实现引脚GPIO状态切换
1 | #define MPU_SDA_IN() {GPIOB->CRH&=0XFFFF0FF;GPIOB->CRH|=((uint32_t)8<<12);} |
参考:
MPU6050移植正点原子指南和寄存器操作端口模式
STM32端口IO方向设置问题的
STM32 GPIO的配置寄存器(CRL、CRH)快速学习
STM32寄存器操作端口模式SDA_OUT()/SDA_IN()
IO口的输入输出与上下拉电阻
最后折腾一顿,各种分析bug,到最后才发现引脚没接线。接上线立刻出数了,无语子= =
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 素颜的博客~!
评论