驱动调试:导致IIC通讯失败原因总结

部分是自己遇到过的,部分是网上看的,总结一下!

1、最简单的可能就是通讯地址不对了,地址一定通讯不了,要注意驱动7位地址和8位地址,7位地址是不带读写位的。

假设7位地址是0x1A。

8位地址在加上读写位的情况下写是0x34,读是0x35

1、确保SDA和SCL所配置的GPIO没有被配置,否则会硬件配置出问题或者GPIO设置无效。

2、、若I2C配置无误后,检查相关硬件问题

使用万用表测量I2C_SDA以及I2C_SCL的供电电压,如果与原理图中所示供电电压相差无几,则表示I2C供电电压没有问题。反之,则代表供电电压存在问题

3、时序不对,高低电平时间不匹配,导致数据起始和终止状态不对。

4、通讯电压不对,常用的IIC通讯电压为1.8V和3.3V。这个有时电压不对,通讯没问题,但是芯片工作状态不对。

暂时这样,后面再续.......

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值