Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2006528
  • 博文数量: 356
  • 博客积分: 8284
  • 博客等级: 中将
  • 技术积分: 4580
  • 用 户 组: 普通用户
  • 注册时间: 2009-05-15 20:25
个人简介

天行健,君子以自强不息

文章分类

全部博文(356)

文章存档

2018年(1)

2016年(4)

2015年(13)

2014年(14)

2013年(2)

2012年(25)

2011年(43)

2010年(65)

2009年(189)

分类:

2010-09-18 16:17:28

/************************************************************
**实验名称:
**功能:
**注意事项:
**作者:
*************************************************************/
#include "STM32Lib\\stm32f10x.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 writen\r\n");
  LED2_OFF;
 }
 else if(tmp==FLASH_DATA)
 {
  USART1_Puts("read right\r\n");
  LED3_OFF;
 }
 else
 {
  USART1_Puts("read error\r\n");
  FLASH_Unlock();//解锁flash编写擦除控制器
  FLASH_ErasePage(FLASH_ADR);//擦除flash的一个页面
  FLASH_Lock();   //锁定flash编写擦除控制器
  USART1_Puts("has clear error address!\r\n");
  LED4_OFF;
 }
 
 for(;;)
 {
  
 }
 
 
}
 
 

阅读(6943) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~