再调试DSP28335的I2C模块与DS1388实时时钟时,会遇到时间突然停在一个时刻不再刷新,在线观察程序里的相关变量发现,I2C中断寄存器的值一直是0,说明没有中断产生了,有遇到过这种情况的吗?都是怎么解决的啊,或者给一个解决的思路把,谢谢!
Eric Ma:
看一下这个例程:C:\ti\controlSUITE\device_support\f2833x\v141\DSP2833x_examples_ccsv5\i2c_eeprom
里面也有用到中断。
C2000的中断分为三个级别,外设中断使能,PIE中断使能,IE中断使能,确保三个中断都有对应的使能配置,另外,清除中断标志位也是需要的,外设级别要清除,PIEACK 清除PIE级别,IE级别CPU自动清。
ERIC
再调试DSP28335的I2C模块与DS1388实时时钟时,会遇到时间突然停在一个时刻不再刷新,在线观察程序里的相关变量发现,I2C中断寄存器的值一直是0,说明没有中断产生了,有遇到过这种情况的吗?都是怎么解决的啊,或者给一个解决的思路把,谢谢!
user4244115:
回复 Eric Ma:
检测I2C的中断寄存器还需要打开I2C的中断使能吗?
再调试DSP28335的I2C模块与DS1388实时时钟时,会遇到时间突然停在一个时刻不再刷新,在线观察程序里的相关变量发现,I2C中断寄存器的值一直是0,说明没有中断产生了,有遇到过这种情况的吗?都是怎么解决的啊,或者给一个解决的思路把,谢谢!
Eric Ma:
回复 user4244115:
需要打开。
ERIC
再调试DSP28335的I2C模块与DS1388实时时钟时,会遇到时间突然停在一个时刻不再刷新,在线观察程序里的相关变量发现,I2C中断寄存器的值一直是0,说明没有中断产生了,有遇到过这种情况的吗?都是怎么解决的啊,或者给一个解决的思路把,谢谢!
user4244115:
回复 Eric Ma:
您好,如果I2C在运行过程中时序被打乱而中断,还可以继续恢复通讯吗?