deity0750 发表于 2010-8-9 23:16:03

马老师,求教!!!我用MEGA16硬件I2C时,TWINT位老不置1!!

求教!!!我用MEGA16硬件I2C时,TWINT位老不置1!!
我第一次用MEGA系列,MEGA16L。但在程序启动I2C总线一个起始信号后,I2C中断标志TWINT位总不置位。WHY!!!

deity0750 发表于 2010-8-15 21:48:59

为什么没人回复呢????

skyward 发表于 2010-8-18 22:06:58

我用的128,第一次可以读,第二次就死在那了,也不知道原因

correspondence 发表于 2011-8-8 01:34:02

这问题我碰过,这是单片机问题,我用了三个MEGA16L,一个没事,另外两个就像楼主说的那样

aishiqi1992 发表于 2011-10-15 22:34:30

我现在也是这个问题头疼呢,前两个还能,第三个就不置1了,死循环在那里,你现在问题解决了吗??

jingwaner 发表于 2011-10-16 01:26:06

有可能是SCL时钟过快,还有就是上拉电阻

biyabc 发表于 2012-8-11 15:46:04

请问你们解决这个问题没有啊,我的现在也出现这个问题啦!

richwen 发表于 2012-12-17 10:12:39

看到两篇有这个问题,我也要用到了,怎么办?!{:sweat:}

machao 发表于 2012-12-18 03:45:14

总是先怀疑单片机,这是初学者最常见毛病。单片机当然会有问题,但只有真正的高手,才能证明是单片机的问题。
1、上线要检查电路以及硬件连接是否正确
2. 检查IIC的时钟是否正确。AVR的IIC工作时钟非常重要,你正确设置过吗?如果你是抄的代码,那么你彻底看懂吗?跑这段代码时,AVR系统时钟正确的应该是多少?你熔丝位设置对吗?

有一片AVR可以,而另外1片不行,通常的情况是2片AVR的熔丝位设置不一样,系统工作频率不同造成的。
页: [1]
查看完整版本: 马老师,求教!!!我用MEGA16硬件I2C时,TWINT位老不置1!!