FLASH模拟EEPROM的实验中,我看到了这样的代码
//定u8的字符串数组 获取数组的长度 这里SIZE为17
const u8 TEXT_Buffer[]={"STM32 FLASH TEST"};
#define SIZE sizeof(TEXT_Buffer)
//向指定地址写数据
STMFLASH_Write(FLASH_SAVE_ADDR,(u16*)TEXT_Buffer,SIZE);
以上函数中,把u8类型的指针转换成u16的了,那么SIZE是不是也要对应/2呢?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
官方版本的 類似的函數 有多一個參數要傳遞
這參數會表明是寫入
uint_8t
uint_16t
uint_32t
uint_64t
哪一種資料長度
---------------------------------
在文档里有说明是u16的长度,即半字的个数
只是直接除二會有問題 還需要做點處理
譬如你用u8 字串 有11個字的時候
sizeof 直接除二 會剩5
同志 你解决这个问题了吗?是不是官方的错了?
一周热门 更多>