打印
[PIC®/AVR®/dsPIC®产品]

I2C从设备接收不到数据

[复制链接]
1215|22
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
驱魔鮔|  楼主 | 2020-3-26 17:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 驱魔鮔 于 2020-3-26 17:21 编辑

设备:PIC18F26K83
模块:I2C

想请教各位大佬一个问题,我使用MCC生成代码之后,将主设备的代码烧入后,使用示波器能看见正确的波形,但是应答位为高,之后去从设备调试代码,发现接收缓冲器中没有收到任何东西,这是为什么?是因为配置出问题了吗?因为是MCC生成的代码,我就不附代码了

使用特权

评论回复
沙发
accepta| | 2020-3-29 16:15 | 只看该作者
应答为高,说明从设备没有正确响应,首先确认波形有没有真的给到从设备内部

使用特权

评论回复
板凳
CoolSilicon| | 2020-3-31 09:20 | 只看该作者
既然能够看到I2C的波形, 那么MCC生成的代码肯定是能够工作的.

从设备不响应,
1.请检查下连接, 有没有SCL/SDA搞反.
2. 检查下从设备, 看看供电, 连接, 片选之类的是否正常;
3. 看看发出来的波形, 是否符合从设备的I2C的时序要求, 通常指速度...
先检查的看看吧.你都有示波器了, 调I2C应该很简单的..

使用特权

评论回复
地板
kkzz| | 2020-4-1 21:07 | 只看该作者
程序可能有问题     

使用特权

评论回复
5
hudi008| | 2020-4-1 21:07 | 只看该作者
控制总线产生一个SCL下降沿,器件将发送数据至SDA,单片机就读取这个SDA,然后产生下一个SCL下降沿。

使用特权

评论回复
6
lzmm| | 2020-4-1 21:07 | 只看该作者
示波器勾出来信号对吗

使用特权

评论回复
7
minzisc| | 2020-4-1 21:08 | 只看该作者
是不是没有上拉电阻呢  

使用特权

评论回复
8
selongli| | 2020-4-1 21:08 | 只看该作者
I2C总线读取什么设备呢

使用特权

评论回复
9
fentianyou| | 2020-4-1 21:09 | 只看该作者
要接上拉电阻   

使用特权

评论回复
10
xiaoyaodz| | 2020-4-1 21:09 | 只看该作者
拉一个小电阻就可以了  

使用特权

评论回复
11
febgxu| | 2020-4-1 21:09 | 只看该作者
是不是代码写的有问题呢

使用特权

评论回复
12
sdlls| | 2020-4-1 21:10 | 只看该作者
是不是速度太快了呢  

使用特权

评论回复
13
pixhw| | 2020-4-1 21:10 | 只看该作者
读取的时候注意时序。  

使用特权

评论回复
14
selongli| | 2020-4-1 21:10 | 只看该作者
把电路图上传看看吧   

使用特权

评论回复
15
kkzz| | 2020-4-1 21:10 | 只看该作者
检查I2C设备地址写对了没

使用特权

评论回复
16
minzisc| | 2020-4-1 21:10 | 只看该作者
iic比较弱的。         

使用特权

评论回复
17
hudi008| | 2020-4-1 21:10 | 只看该作者
建议检查一下下进去的CMD是不是正确  

使用特权

评论回复
18
lzmm| | 2020-4-1 21:10 | 只看该作者
时序可以自己写,只要满足条件就好

使用特权

评论回复
19
pixhw| | 2020-4-1 21:10 | 只看该作者
硬件的问题,也有可能的。  

使用特权

评论回复
20
sdlls| | 2020-4-1 21:10 | 只看该作者
太快的速度可能影响效率。  

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

2

帖子

0

粉丝