使用stm32f103r8t6 实现IAP升级代码精简但是很实用
可以用来制作远程升级
单片机源程序如下:
/*******************************************************************************
** 文件名: mian.c
** 版本: 1.0
** 工作环境: RealView MDK-ARM 4.14
** 作者: wuguoyana
** 生成日期: 2011-04-28
** 功能: USART初始化和RCC设置,然后从common.c中执行主菜单
** 相关文件: stm32f10x.h
*******************************************************************************/
/* 包含头文件 *****************************************************************/
#include "common.h"
#define USART1_IRQChannel ((u8)0x25) /* USART1 global Interrupt */
/* 类型声明 ------------------------------------------------------------------*/
/* 宏 ------------------------------------------------------------------------*/
#define LED2 GPIO_Pin_6
#define LED3 GPIO_Pin_7
#define LED4 GPIO_Pin_8
#define LED5 GPIO_Pin_9
#define TRUE 0xff
#define FALSE 0x00
/* 变量 ----------------------------------------------------------------------*/
extern pFunction Jump_To_Application;
extern uint32_t JumpAddress;
/* 函数声明 ------------------------------------------------------------------*/
void Delay(__IO uint32_t nCount);
void LED_Configuration(void);
static void IAP_Init(void);
void KEY_Configuration(void);
void GPIO_Configuration(void);
void USART_Configuration(void);
unsi