嗨,请帮助,我构建和调试(UART接口)I2C_EEPROM示例而不进行任何修改。我没有将任何EEPROM连接到引脚P0_2和P0_3。所以在腻子终端必须打印出一些错误代码,但代码操作粘在某个地方。在这里我清除所有测试但测试4,我放入项目中的一些日志,我弄清楚了代码操作卡在wait_until_i2c_fifo_is_empty();如何解决这个错误?谢谢
我尝试使用我的DS3231 RTC模块进行测试。我将地址从地址设置为0x68。并尝试在地址02H处读取1个字节。代码陷入困境_for_received_byte();我不知道如何解决这个问题,我尝试了另一个DS1307,发生了同样的错误
当我使用EEPROM AT24C256时,构建和调试代码(无修改,地址为0x50)相同的错误发生,但在从EEPROM读取时,在测试2中被卡在测试2中
设备:
嗨thanhtu131,
您使用的是SDK I2C示例代码吗?您是否向您使用的I2C接口发送了正确的命令?
谢谢,PM_DIALOG.
是的,我使用了他的SDK 5.0.4 I2C示例代码。我可以阅读DS1307数据一对夫妻时间,然后我不能再次读取它,我再次尝试加载SDK A并运行它,但仍然发生错误。它是否可以是DA14580硬件错误?Bescause我可以使用DS1307模块与My Raspberry PI3 +(I2C接口)一起使用。DA14580 I2C FIFO寄存器是否受到损害?
我试图禁用所有读取测试并连接EEPROM。所有写入测试工作,但它适用于所有定义的所有从地址(0x12,0x15,0x50),而只有0x50是正确的。当我启用读取测试2时,当我定义的evevy地址时,代码陷入了read_for_received_byte()
嗨thanhtu131,
您正在使用的i2c驱动程序用于接口EEPROM存储器。通过发送0x08并等待来自另一侧的ACK,实现内存(如果内存准备好运行),则轮询内存(如果内存准备好运行)。
关于wait_for_receive_byte(),宏检查计算所接收的数据的寄存器,如果您留在那里,这意味着另一边还没有向您发送任何东西。
检查连接线的状态以及通过I2C总线的交易,以检查您的I2C接口响应驱动程序发送的数据。此外,请检查您要发送的命令。
谢谢,PM_DIALOG.