21IC上关于stm32 option bytes的操作帖子记录
生活随笔
收集整理的這篇文章主要介紹了
21IC上关于stm32 option bytes的操作帖子记录
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
| 好多年過去了,樓上兩位也不知道解決沒有,我解決了,問題在于keil的debug選項。 首先代碼如下 u16 OptionByte_Read1(void)? ?? ?//兩個8字節(jié)合成1個16字節(jié)使用 { ? ?? ?? ?? ?? ? u8 high=(*(vu16*)(0x1FFFF804))&0x00ff;//讀0x1FFFF804 ? ?? ?? ?? ?? ? u8 low =(*(vu16*)(0x1FFFF806))&0x00ff;//讀0x1FFFF806 ? ?? ?? ?? ?? ? return (? ?(high<<8)+low??); } void OptionByte_Write1(u16 data)//兩個8字節(jié)合成1個16字節(jié)使用 { ? ?? ?? ?? ?? ? FLASH_Unlock(); ? ?? ?? ?? ?? ? FLASH_OB_Unlock();//解鎖 ? ?? ?? ?? ?? ? FLASH_EraseOptionBytes();//flash為ff時候才能寫入,所以先擦除,網(wǎng)上很多不成功就是沒擦除 ? ?? ?? ?? ?? ? FLASH_ProgramOptionByteData(0x1FFFF804,data>>8);? ? //寫0x1FFFF804 ? ?? ?? ?? ?? ? FLASH_ProgramOptionByteData(0x1FFFF806,data&0x00ff);//寫0x1FFFF806 ? ?? ?? ?? ?? ? FLASH_OB_Lock();??//上鎖 ? ?? ?? ?? ?? ? FLASH_Lock(); ? ? } int main() { ? ? Init_UART2(); ? ?? ?? ?? ?? ?? ?? ?? ?//簡單記錄復位次數(shù) ? ? ? ???OptionByte_Write1(0xa5a5); ? ? OptionByte=OptionByte_Read1();? ? ? ? printf("OptionByte=0x%4x\r\n",OptionByte); 然后再keil燒寫器配置中,要把16B的Flash打勾選上,不能只選64KB的那個ROM |
11.png (34.81 KB, 下載次數(shù): 0)
?
總結(jié)
以上是生活随笔為你收集整理的21IC上关于stm32 option bytes的操作帖子记录的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: STM32 Option Bytes位
- 下一篇: 如何用jlink+jflash烧写stm