求助_I2C通信问题

[复制链接]
2964|8
 楼主| laibour 发表于 2012-4-4 15:04 | 显示全部楼层 |阅读模式
用PIC26K20(主机)和PIC67J60(从机)做硬件I2C通信时,当主机向从机发送数据,正常发送几个字节后,从机的应答时出现一个小的尖峰,主机就收不到应答,这可能是什么原因啊?
NE5532 发表于 2012-4-4 16:33 | 显示全部楼层
程序打断点,看结束通讯时,两边的I2C状态机在什么状态,再来推断哪里错了。
1521732588 发表于 2012-4-5 11:41 | 显示全部楼层
干扰吧, 看看电路设计,不然单片机出来的不可能有尖峰的
 楼主| laibour 发表于 2012-4-5 16:48 | 显示全部楼层
2# NE5532
主机没有收到应答就跳到了错误处理的地方,从机就自动复位了。那个小尖峰是在第九个时钟脉冲(应答脉冲)正好结束时产生的。搞不清楚的是为什么从机会自动复位呢,这样即使主机重新启动或者发停止,从机这段时间都不会再响应了。
NE5532 发表于 2012-4-5 17:16 | 显示全部楼层
考虑是否开了狗和从机在该应答的时候做了什么,是否PC指针跳飞。
1521732588 发表于 2012-4-5 17:16 | 显示全部楼层
检查从机是否有干扰
 楼主| laibour 发表于 2012-4-6 08:31 | 显示全部楼层
5# NE5532
把开门狗关闭了,从机的其它程序都被我屏蔽了,只剩下一个I2C中断,也一样会出现这种情况。下面是我用手机拍出来的波形

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| laibour 发表于 2012-4-9 09:45 | 显示全部楼层
可能是I2C频率过高,接收应答时受到了其它中断的影响。
mianxi 发表于 2012-4-9 10:16 | 显示全部楼层
感谢楼主分享。。。同时强烈鄙视那些看帖不回帖的人!




















-------------------------------------------------------------------------------------------------------------------
汕头不孕不育|汕头宫颈糜烂|汕头宫颈炎|
您需要登录后才可以回帖 登录 | 注册

本版积分规则

22

主题

81

帖子

0

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