永发信息网

iar 怎么将flash的固定地址用固定变量占住

答案:2  悬赏:0  手机版
解决时间 2021-11-10 14:01
  • 提问者网友:最爱你的唇
  • 2021-11-10 09:22
iar 怎么将flash的固定地址用固定变量占住
最佳答案
  • 五星知识达人网友:雾月
  • 2021-11-10 10:16
可以!前提是写入的位置是空白没有代码的部分,调用库函数:
FLASH_Unlock(); //1、解锁Flash
FLASH_SetLatency(FLASH_Latency_2); //2、72MHz系统时钟下设置两个时钟延时
FLASH_ErasePage(addr); //3、擦除指定的页,addr是页的起始地址,一次擦除2KB
FLASH_ProgramHalfWord(WriteAddr,UsrCode) ; //4、指定地址写入数据,UsrCode是unsigned int类型,STM32的Flash是双字节(半字)写入。
FLASH_Lock(); //5、Flash上锁。

注意3、4步,这两个函数是有返回值,调用时候最好看返回值以确定操作是否成功,库函数在stm32f10x_flash.c中。
全部回答
  • 1楼网友:深街酒徒
  • 2021-11-10 10:51
__root const unsigned int ver@0x08010400 = 0x4086;
编译,dowmload之後。利用IAR查看(view -> memory),地址 0x08010400 连续4个字节 00 00 86 40 (顺序有可能是反的)
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯