STM32开发手册-IAP流程
。
程序组成:
1-BootLoader程序,
- 地址:0X08000000-0X08010000
- 空间:0X00010000(64K 字节)
2-FLASH APP程序,
- 地址:0X08010000-0X08100000,
- 空间:0X100000-0X10000=0XF0000(960K 字节)
1-BootLoader程序程序生成
- iap_write_appbin 函数用于将存放在串口接收 buf 里面的 APP 程序写入到 FLASH。
void iap_write_appbin(u32 appxaddr,u8 *appbuf,u32 appsize)
//appxaddr:应用程序的起始地址
//appbuf:应用程序 CODE.
//appsize:应用程序大小(字节)
- 跳转到APP 程序运行地址
void iap_load_app(u32 appxaddr)
//接收缓冲,最大 USART_REC_LEN 个字节,起始地址为 0X20001000.
u16 USART_RX_STA=0; //接收状态标记
u32 USART_RX_CNT=0; //接收的字节数
main.c接收程序 更新固件
2-FALSH APP生成
(1)keil修改APP程序起始地址更改
- 地址:0X08010000-0X08100000,
- 空间:0X100000-0X10000=0XF0000(960K 字节)
(2)中断向量表的偏移量
SystemInit 函数VTOR寄存器存放中断向量的起始地址
#ifdef VECT_TAB_SRAM
SCB->VTOR = SRAM_BASE | VECT_TAB_OFFSET;
/* Vector Table Relocation in Internal SRAM. */
#else
SCB->VTOR = FLASH_BASE | VECT_TAB_OFFSET;
/* Vector Table Relocation in Internal FLASH. */
#endif
为了避免修改系统文件,在main.c中修改 中断起始地址,FALSH APP的起始地址
SCB->VTOR = FLASH_BASE | 0x10000;
。
。
STM32开发手册-IAP流程相关推荐
- Linux应用程序开发之man手册汉化+开发的简易流程说明
Linux应用程序开发之man手册汉化+开发的简易流程说明 1,开发中善于使用man手册 man手册安装命令: sudo apt-get install manpages-dev man手册汉化安装命 ...
- Python语音机器人控制STM32开发流程
一:Python语音机器人控制STM32开发流程 1. 上位机的开发用到的工具: 1.1. Python3.9 1.2. Pycahrm社区版 2. 上位机开发用到的模块: import sys # ...
- STM32全套开发板视频教程+实例源码+开发手册+调试工具下载
好多人找不到STM32系列的学习资料,教程什么的,在这里说明一下,去正点原子的官网有STM32全套开发板视频教程+代码+开发手册+调试工具的下载链接:http://www.openedv.com/do ...
- Linux/Windows配置stm32免费开发环境详细流程
系统:linux mint 18.3 xfce,windows10 stm32开发板:正点原子mini板(stm32f103rc) 烧写器:stlink v2 如果是JLINK的可以参考这篇 ...
- STM32开发 -- 低功耗模式详解
很多单片机都有低功耗模式,STM32 也不例外.当 CPU 不需继续运行时,可以利用多个低功耗模式来节省功耗. 这部分不是我负责,但是也是有必要看一下的. 参看: STM32F1开发指南-库函数版本_ ...
- 韦东山 IMX6ULL和正点原子_「正点原子NANO STM32开发板资料连载」第三章 MDK5 软件入门1...
1)实验平台:ALIENTEK NANO STM32F411 V1开发板 2)摘自<正点原子STM32F4 开发指南(HAL 库版>关注官方微信号公众号,获取更多资料:正点原子 第三章 M ...
- NBIOT 移远BC28模块+stm32开发板例程、教程(打通TCP、COAP协议)
为了开发者能够快速入门BC28的开发,加快开发者的项目进度,开发出此款针对BC28的stm32开发板和完善的发送网络数据的示例程序(TCP协议.COAP协议),程序流程逻辑清楚,注释完善,上手就可以玩 ...
- 白话阿里巴巴Java开发手册(编程规约)
本文欢迎转载,转载请注明原文链接,并附作者个人信息李艳鹏. 研发流程管理 最近,阿里巴巴发布了<阿里巴巴Java开发手册>,总结了阿里人多年一线实战中积累的研发流程规范,这些流程规范在一定 ...
- 熟读《阿里巴巴java开发手册》(三、单元测试,四、安全规约)
目录 三.单元测试 四.安全规约 三.单元测试 1. [强制] 好的单元测试必须遵守 AIR 原则. 说明: 单元测试在线上运行时,感觉像空气( AIR)一样并不存在,但在测试质量的保障上,却是非常关 ...
最新文章
- 7.12 其他面向对象设计原则3: 依赖倒置原则DIP
- Win7下安装配置PHP+Apache+Mysql+PHPMyAdmin环境教程(非集成)
- 大话移动开发之QT-Quick
- linux unbuntu屏幕显示不完整,解决 NetBeans 在 Gnome3 显示不全的问题
- miui9Android8.0更新,MIUI9 暂停更新工作,或为 MIUI 10 将至?
- 微擎小程序怎么配置服务器域名,随便撸源码源码微擎小程序通用配置图文教程,教会你怎么配置微擎小程序!...
- 换脸效果媲美GAN!一文解析OpenAI最新流生成模型「Glow」
- Codeforces Round #734 (Div. 3) 题解
- 入门级实操教程!从概念到部署,全方位了解K8S Ingress!
- dns的服务器地址是多少当前位置,dns的服务器地址设置为多少
- 防止黑客入侵的五大技巧
- 用python画出吉祥物
- oracle 测试坚挺,access数据库用户依然坚挺,但是面临新的对手挑战
- input file限制上传文件类型
- 几个LabVIEW软件欢迎页面
- RuntimeError: mat1 dim 1 must match mat2 dim 0
- 统计套利之平稳性检验
- 服务器安装m.2固态硬盘,笔记本怎么安装M.2接口固态硬盘?笔记本M.2接口固态硬盘安装方法...
- 微软打补丁出现“此更新不适用于您的计算机”
- BERT模型系列大全解读