STM 32 IAP(对flash进行读写)
发布时间:2020-12-15 18:06:46 所属栏目:百科 来源:网络整理
导读:作者:number007cool 转自:http://blog.chinaunix.net/uid-21658993-id-1820025.html /************************************************************ **实验名称: **功能: **注意事项: **作者: ********************************************************
作者:number007cool 转自:http://blog.chinaunix.net/uid-21658993-id-1820025.html
/************************************************************
**实验名称: **功能: **注意事项: **作者: *************************************************************/
#include "STM32Libstm32f10x.h"
#include "hal.h"
#define?FLASH_ADR?0x08008000??//要写入数据的地址
#define?FLASH_DATA?0x5a5a5a5a??//要写入的数据
int main(void) { ?u32 tmp; ?ChipHalInit();???//片内硬件初始化 ?ChipOutHalInit();??//片外硬件初始化 ? ?//判断此FLASH是否为空白 ?tmp=*(vu32*)(FLASH_ADR); ?if(tmp==0xffffffff) ?{ ??FLASH_Unlock();?//解锁flash编写擦除控制器 ??FLASH_ProgramWord(FLASH_ADR,FLASH_DATA);//在指定的地址写一个字 ??FLASH_Lock();?? //锁定flash编写擦除控制器 ??USART1_Puts("kong,has writenrn"); ??LED2_OFF; ?} ?else if(tmp==FLASH_DATA) ?{ ??USART1_Puts("read rightrn"); ??LED3_OFF; ?} ?else ?{ ??USART1_Puts("read errorrn"); ??FLASH_Unlock();//解锁flash编写擦除控制器 ??FLASH_ErasePage(FLASH_ADR);//擦除flash的一个页面 ??FLASH_Lock();?? //锁定flash编写擦除控制器 ??USART1_Puts("has clear error address!rn"); ??LED4_OFF; ?} ? ?for(;;) ?{ ?? ?} ? ? }
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容