?TWI读写问题
微控器:ATmega128问题:目前TWI读写芯片寄存器都没有问题. 不过最近调试的时候发现一个问题:往芯片的几个寄存器写上数据完成寄存器配置后,下面接着执行一个读(任意一个寄存器),这个读也无误.接下来再执行任意TWI读写(任意连接在AVR上并且具有IIC口的芯片的寄存器)就会有问题:启动IIC后,一直处于等待ACK(TWINT一直没有置位).
不明白这是什么问题,如果IIC的读写有问题的话,读回来的数据却是对的.如果没有问题的话:为什么在连读或者读完再写其它的寄存器,启动IIC后会没有反应? 估计你对所操作的芯片的时序命令还有误,或程序处理不对. 我用的是TWI口,所以不需要自己模拟IIC时序.可能某个寄存器没有置位或者清0. 在我新出的书中有对IIC的详细介绍和多个例子,包括使用I/O模拟和硬件TWI的.
页:
[1]