工具/软件:
您好、
参考:mcu_plus_sdk_am64x_10_01_00_32、并使用 I2C 示例进行读写验证、特别是
使用文件 i2c_memory_read.c 将 byte_count 修改为513 (从计数为10的原始值)
此外、还可以修改 txBuffer[COUNT]=(unit8_t)(count % 256); //在 count = 256时绕回为0
添加 txBuffer 的调试日志:
DebugP_LOG ("Write [I2C] Data at address 0x%x:0x%x \r\n"、(i2cEepromMemAddr + count)、txBuffer[COUNT]);
在"读取"部分中、调试日志保持不变:
DebugP_log ("读取地址0x%x 处的[I2C]数据:0x%x \r\n"、(i2cEepromMemAddr + count)、rxBuffer[COUNT]);
这是写入的输出:
在地址0x400:0x0处写入[I2C]数据
在地址0x401:0x1处写入[I2C]数据
在地址0x402:0x2处写入[I2C]数据
......
在地址0x4fe:0xFE 写入[I2C]数据
在地址0x4ff:0xff 写入[I2C]数据
在地址0x500:0x0处写入[I2C]数据
在地址0x501:0x1处写入[I2C]数据
在地址0x502:0x2处写入[I2C]数据
......
在地址0x5fe:0xFE 写入[I2C]数据
在地址0x5ff 写入[I2C]数据:0xff
在地址0x600:0x0处写入[I2C]数据
和读取的输出:
读取地址0x400:0x0处的[I2C]数据
读取地址0x401:0x1处的[I2C]数据
读取地址0x402:0x2处的[I2C]数据
读取地址0x403:0x3处的[I2C]数据
读取地址0x404的[I2C]数据:0x4
......
读取地址0x4fd:0xFD 处的[I2C]数据
读取地址0x4fe:0xFE 处的[I2C]数据
读取地址0x4ff:0xff 处的[I2C]数据
读取地址0x500:0xff 处的[I2C]数据
读取地址0x501:0xff 处的[I2C]数据
读取地址0x502:0xff 处的[I2C]数据
......
读取地址0x5fd:0xff 的[I2C]数据
读取地址0x5fe:0xff 处的[I2C]数据
读取地址0x5ff 处的[I2C]数据:0xff
读取地址0x600:0xff 处的[I2C]数据
问题是为什么超过256字节的读取变成了全部0xFF ???