通过阅读DM3730数据手册,I2C_2支持SCCB模式。按照数据手册的描述,将I2C_2配置为SCCB模式,具体配置如下:
1.移植TI提供的I2C驱动,配置I2C_2的工作时钟。
2.配置I2C_BUF寄存器为0x0;(配置I2C_2为sccb模式)
3.配置I2C_SA寄存器为0x3c;(从设备的id)
4.配置I2C_OA0寄存器为0x30;
5.配置I2C_IE寄存器为0x0; (禁用中断)
5.配置I2C_CON寄存器为0xa601;
6.开始检查I2C_STAT寄存器的值。
根据数据手册的描述I2C_STAT的第四位应该会由DM3730置1,然后开始写I2C_DATA寄存器,从而将数据发出。
我们使用示波器测试后发现,I2C_2的时钟为100 KHz,读取I2C_STAT寄存器值发现前5位始终为0,这说明我们配置的SCCB模式并没有成功。 请问我们的寄存器配置是否有问题?
Feng Dong:
5 GC General Call IRQ status. Set to 1 when general call address detected. Interrupt signaled to MPU subsystem
Read No general call detected
0x0:
Read General call address detected
0x1:
Write No effect
0x0:
Write Clear this bit to 0.
0x1:
请问这个和SCCB模式并没有成功有什么关系?没有理解,谢谢说明