做个备忘
这段时间在做一个用STM32作为主控的气压检测器,网上查找了 许多 BME280的代码 将代码编译并写入32,由于尝试修改了I2C的引脚,以为与修改普通的IO那么简单,I2C读写出来一直是0X00 或者为0XFF,尝试修改 ,由于这个模块网上说是地址位 为0XEC 或者0X76 尝试修改 但是始终不能出正确的结果,
最终怀疑是I2C
查看了
https://blog.csdn.net/wangliwang/article/details/82589602
http://www.openedv.com/posts/list/491.htm
这两个 直接解决了问题 修改I2C软件模拟中的IO方向设置直接解决了问题,
由于它本身使用的io口 PA11 PA12
//IO方向设置
#define SDA_IN() {GPIOB->CRH&=0XFFF0FFFF;GPIOB->CRH|=8<<4*4;}
#define SDA_OUT() {GPIOB->CRH&=0XFFF0FFFF;GPIOB->CRH|=3<