[PIC®/AVR®/dsPIC®产品] I2C从设备接收不到数据

[复制链接]
4589|32
 楼主| wyjie 发表于 2021-8-14 21:46 | 显示全部楼层 |阅读模式
本帖最后由 pzsh 于 2021-9-10 20:51 编辑

我使用MCC生成代码之后,将主设备的代码烧入后,使用示波器能看见正确的波形,但是应答位为高,之后去从设备调试代码,发现接收缓冲器中没有收到任何东西,这是为什么?
supernan 发表于 2021-8-14 21:48 | 显示全部楼层
是因为配置出问题了吗?
 楼主| wyjie 发表于 2021-8-14 21:55 | 显示全部楼层
因为是MCC生成的代码,我就不附代码了
supernan 发表于 2021-8-14 21:57 | 显示全部楼层
应答为高,说明从设备没有正确响应
heweibig 发表于 2021-8-14 21:59 | 显示全部楼层
首先确认波形有没有真的给到从设备内部
wangzsa 发表于 2021-8-14 22:01 | 显示全部楼层
既然能够看到I2C的波形, 那么MCC生成的代码肯定是能够工作的.
chuxh 发表于 2021-8-14 22:03 | 显示全部楼层
请检查下连接, 有没有SCL/SDA搞反.
yufe 发表于 2021-8-14 22:05 | 显示全部楼层
检查下从设备, 看看供电, 连接, 片选之类的是否正常
yufe 发表于 2021-8-14 22:07 | 显示全部楼层
看看发出来的波形, 是否符合从设备的I2C的时序要求, 通常指速度
chenjunt 发表于 2021-8-14 22:09 | 显示全部楼层
先检查的看看吧.你都有示波器了, 调I2C应该很简单的..
zhanglli 发表于 2021-8-14 22:11 | 显示全部楼层
程序可能有问题     
tian111 发表于 2021-8-14 22:19 | 显示全部楼层
控制总线产生一个SCL下降沿,器件将发送数据至SDA,单片机就读取这个SDA,然后产生下一个SCL下降沿。
ousj 发表于 2021-8-14 22:23 | 显示全部楼层
示波器勾出来信号对吗
chuxh 发表于 2021-8-14 22:26 | 显示全部楼层
是不是没有上拉电阻呢  
zhanghqi 发表于 2021-8-14 22:33 | 显示全部楼层
I2C总线读取什么设备呢
dengdc 发表于 2021-8-14 22:36 | 显示全部楼层
要接上拉电阻   
ousj 发表于 2021-8-14 22:39 | 显示全部楼层
拉一个小电阻就可以了  
songqian17 发表于 2021-8-14 22:45 | 显示全部楼层
是不是代码写的有问题呢
chenjunt 发表于 2021-8-14 22:50 | 显示全部楼层
是不是速度太快了呢  
jiajs 发表于 2021-8-14 22:53 | 显示全部楼层
读取的时候注意时序。  
您需要登录后才可以回帖 登录 | 注册

本版积分规则

927

主题

12706

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部