如题我采用
STM32f107串口做IAP固件升级,BOOT程序写好 测试bin文件小于11k下载运行良好,bin文件到20k以上时 使用超级终端就更新失败。
这是我boot程序
http://pan.baidu.com/s/1gdrc5az
boot程序配置
1、
2、#define Applica
tionAddress 0x8010000
3、int main(void)
{
FLASH_Unlock();
NVIC_SetVectorTable(0x08000000,0x00);
__disable_irq(); //关闭中断
IAP_Init();//串口初始化
if (ucUpdateFlag==1)//升级标志 一直为1
{
Main_Menu();//更新固件
}
}
4、程序跳转
if (((*(__IO uint32_t*)ApplicationAddress) & 0x2FFE0000 ) == 0x20000000)
{
SerialPutString("Execute user Program
");
JumpAddress = *(__IO uint32_t*) (ApplicationAddress + 4);
Jump_To_Application = (pFunction) JumpAddress;
__set_MSP(*(__IO uint32_t*) ApplicationAddress);
Jump_To_Application();
}
APP程序配置
1、
2、下面是测试程序bin文件 使用jlink下载测过都可以良好运行。
希望大家帮帮我 多谢!
一周热门 更多>