void AT24CXX_WriteLenByte(u16 WriteAddr,u32 DataToWrite,u8 Len)的len只能是2和4吗

2019-08-20 19:13发布

IIC程序中void AT24CXX_WriteLenByte(u16 WriteAddr,u32 DataToWrite,u8 Len)的len只能是2和4吗?
还是可以自己定?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
4条回答
正点原子
2019-08-20 22:50
 是2,或者4的,你如果要任意长度,用通用的那个函数.
[mw_shl_code=c,true]//在AT24CXX里面的指定地址开始读出指定个数的数据 //ReadAddr :开始读出的地址 对24c02为0~255 //pBuffer :数据数组首地址 //NumToRead:要读出数据的个数 void AT24CXX_Read(u16 ReadAddr,u8 *pBuffer,u16 NumToRead) { while(NumToRead) { *pBuffer++=AT24CXX_ReadOneByte(ReadAddr++); NumToRead--; } } //在AT24CXX里面的指定地址开始写入指定个数的数据 //WriteAddr :开始写入的地址 对24c02为0~255 //pBuffer :数据数组首地址 //NumToWrite:要写入数据的个数 void AT24CXX_Write(u16 WriteAddr,u8 *pBuffer,u16 NumToWrite) { while(NumToWrite--) { AT24CXX_WriteOneByte(WriteAddr,*pBuffer); WriteAddr++; pBuffer++; } } [/mw_shl_code]
  

一周热门 更多>