关于I2C总线,应答和非应答,哪位老师帮忙解释一下!
最近在学习单片机,学习到EEPROM用到I2C总线,了解了下I2C总线。觉得没什么太大问题。
但我现在用到一个A/D-D/A芯片也是I2C总线,芯片如果长时无应答就算接收到,转换的数据就会丢失,但如果等待,程序就会停止在那。程序上有没有什么好方法。
还有非应答,怎么都觉得没什么用啊!
请教高人给说说!
[解决办法]
不对吧,就算AD-DA转换没完成你的I2C应该也是有应答的吧,只不过你所得到的数据不对而已。一般这类转换芯片都像一楼说的有个中断,AD-DA转换完成就会产生一个中断,你的MCU收到这个中断再启动I2C去读结果。如果你实在不想用中断,那就必须要在相邻两次读之间有个延时,至于延多久就要你去试了。