stm32-关于AT24C02这个芯片的坑点

Ines ·
更新时间:2024-11-10
· 682 次阅读

如标题所述,这个鬼芯片有一个很大的坑点在里面,请看下图。
AT24C系列手册
手册上写的是1k 和 2k 是8byte,之后的是16byte,这一点一定要看清楚,一定要看清楚,一定要看清楚。

我之前看手册的时候,看成了16byte,导致写入数据8字节之后的部分完全崩溃了,

具体的分析拆包代码如下:

ErrorStatus writeAt24C02(uint16_t address,void *writeBuff,uint16_t writeLen) {  int len = 0;  for(int i = 0 ; i = 0x08)   {    len = 0x08;   }   else   {    len = writeLen - i;   }   if(HAL_I2C_Mem_Write(&hi2c2, ADDR_24LCxx_Write,address + i, I2C_MEMADD_SIZE_8BIT,((u8 *)writeBuff + i),len, 0xFFFF) != HAL_OK)   {       return ERROR;   }   osDelay(30);     }  return SUCCESS; }
作者:writeing



stm32 芯片

需要 登录 后方可回复, 如果你还没有账号请 注册新账号