中级会员
 
- 积分
- 354
- 金钱
- 354
- 注册时间
- 2016-4-12
- 在线时间
- 97 小时
|
今天学习模拟IIC读取AT24C02,调试了一天终于调试成功,用的是原子的历程,但是用的开发板不是,所以遇到了很多困难,但我绝对问题越多,收货也就越多。接下来给大家分享下调试过程中遇到的问题。
1.GPIO口方向配置问题,由于我的板子上SCL和SDA分别接的是PB6,PB7, 所以GPIO口需要重新配置,刚开始不会配置方向 因为一开始学的就是库函数,寄存器一窍不通,后来看数据手册,终于配置成功。
2.关于AT24C02地址的选择,我开发板上A0接高A1,A2接低 ,所以原子历程中读写的地址都需要更改,写从0XA0改为0XA2,读从0XA1改为0XA3;之前用的默认都接地,所以刚开始也没发现,也不会配置,看不懂数据手册,最后才弄懂,我的A2A1A0 是001 写RW是0,读RW是1,再加上1010,就是0XA2,0XA3的由来。
3.刚开始没找到问题,我看STM32手册上面说IIC的GPIO应该配置为开漏复用输出,我就把原子的推挽输出给改了,后来发现推挽输出才能用 也不知道为什么,希望大神可以指导下
|
-
GPIO方向配置
|