modernhill
驱动小牛
驱动小牛
  • 注册日期2004-05-12
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分98分
  • 威望278点
  • 贡献值0点
  • 好评度172点
  • 原创分0分
  • 专家分0分
阅读:1341回复:5

Samsung2440 IIC 驱动问题

楼主#
更多 发布于:2007-08-31 10:59
哪位兄弟做过2440上的IIC控制器的控制,我现在在驱动中控制IIC寄存器进行IIC操作的时候会出现随机的错误,奇怪的不得了,从抓到的错误波形上来看,IIC控制器在发CLOCK脉冲的时候有的时候会被强制拉底一到两个脉冲,导致SLAVE检测不到正常的CLOCK脉冲,所以产生错误,难道系统会不定期的把IIC的CLOCK线拉低?这是什么原因啊?
wince_lover
驱动中牛
驱动中牛
  • 注册日期2007-01-10
  • 最后登录2010-12-20
  • 粉丝0
  • 关注0
  • 积分1103分
  • 威望735点
  • 贡献值2点
  • 好评度279点
  • 原创分1分
  • 专家分0分
沙发#
发布于:2007-08-31 11:50
IIC的DAT和CLOCK要加上拉,你加了没有
modernhill
驱动小牛
驱动小牛
  • 注册日期2004-05-12
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分98分
  • 威望278点
  • 贡献值0点
  • 好评度172点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-08-31 13:25
上拉电阻加了的,两边都已经加了。。。
modernhill
驱动小牛
驱动小牛
  • 注册日期2004-05-12
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分98分
  • 威望278点
  • 贡献值0点
  • 好评度172点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-09-01 16:16
经过仔细抓IIC的波形,发现原因应该是CLOCK线上脉冲偶尔会被强制拉低一个或者两个脉冲,从而导致IIC的时序乱掉,大家帮忙分析一下什么可能导致这个问题呢?
microsun
论坛版主
论坛版主
  • 注册日期2002-11-11
  • 最后登录2014-07-18
  • 粉丝0
  • 关注0
  • 积分1052分
  • 威望1159点
  • 贡献值0点
  • 好评度848点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2007-09-01 16:50
可以把别的DRIVER都去掉,看看是不是别的设备启动以后对它有影响.
学海无涯
modernhill
驱动小牛
驱动小牛
  • 注册日期2004-05-12
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分98分
  • 威望278点
  • 贡献值0点
  • 好评度172点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2007-09-03 18:17
谢谢斑竹的提示,但是我后来仔细抓了好多错误的波形,我想不明白的是2440IIC控制器在出错的时候是少发了一到两个脉冲的,如果是发的时候被其他的模块拉低的话,那整个操作周期的时间应该是一定的,但是我发现少脉冲的时候操作时间居然也少了,感觉上是IIC控制器出错了。。。出错的时候一般都是CLOCK线上会被拉低一个半的脉冲宽度,也就是说在本来在应该有两个CLOCK脉冲的地方变成了只有一个半脉冲宽度的低电平。。。难道是2440的IIC控制器坏了?
游客

返回顶部