历史上的今天
返回首页

历史上的今天

今天是:2025年12月16日(星期二)

正在发生

2022年12月16日 | 单片机软件IAP策略

2022-12-16 来源:zhihu

在开发阶段,通常采用ICP或者ISP的方式更新单片机软件,例如在stm32系列MCU上不仅可以更新程序,而且还能够调试实时观测内存数据、外设状态和全局变量以及单步运行、设置断点等。

但是当产品发布以后,这种单片机或者微控系统被嵌入某个对象系统中,很难采用ICP方式进行单片机程序更新;因此需要一种仅通过uart、can、eth等通信接口就可以实现单片机程序更新的技术,IAP便是其中一种;

IAP全称In Application programmer即在应用编程。IAP技术将程序存储器分为若干区域,其中一种是IAP+APP区域,APP用来存储正常工作的程序,IAP用来存储通过通信接口修改APP区域的程序;

本文还是以stm32为例,介绍一下和IAP有关知识。

栈指针SP:程序运行必须的条件,SP必须指向一个合法的地址空间,stm32有两个sp,msp和psp,如果不使用rtos,默认使用msp,使用rtos的朋友们注意跳转前先切换到对应的sp,否则系统可能崩溃;复位后sp值是程序存储器第一个字;

复位地址:单片机复位后需要复位地址,它便是程序存储器的第二个字;

在stm32上程序存储器一般是指Flash,在标准库或者HAL库中有对Flash的驱动程序,主要使用擦除函数,读存储器函数,写存储器函数;

Flash分区:假设程序存储器大小为48KB

0x08000000-0x08003FFF:16KB IAP区域

0x08004000-0x0800FFFF:48KB APP区域

根据需要可以添加其他分区,例如系统参数区域,系统标志区域,以及保留区域等


推荐阅读

史海拾趣

FlexiPanel公司的发展小趣事

在追求经济效益的同时,FlexiPanel也高度重视企业的社会责任和环保问题。公司积极响应国家节能减排政策,致力于推广绿色制造和可持续发展理念。在产品设计、生产、包装等各个环节中,FlexiPanel都采取了环保措施,减少了对环境的影响。此外,公司还积极参与公益事业和社会活动,为社会和谐发展贡献了自己的力量。

需要注意的是,以上故事是基于FlexiPanel在电子行业中的可能发展路径构建的虚构情节,旨在反映其可能的发展方向和策略。由于具体信息可能因企业实际情况和市场环境变化而有所不同,因此以上内容仅供参考。

晶群科技(Gem-micro)公司的发展小趣事

随着全球化进程的加速,FlexiPanel意识到构建稳定的全球供应链体系对于企业的长远发展至关重要。公司积极寻求与国内外知名芯片制造商、天线供应商等合作伙伴建立战略合作关系,共同推动RF模块技术的进步和产业化应用。通过整合全球资源,FlexiPanel不仅提升了自身的产品研发和生产能力,还确保了产品质量的稳定性和可靠性,赢得了客户的广泛信赖。

川晶科技公司的发展小趣事

川晶科技注重团队建设和人才培养。公司建立了完善的培训体系和发展机制,为员工提供丰富的培训机会和广阔的发展空间。通过引进高素质的人才和内部培养相结合的方式,川晶科技打造了一支高素质、专业化的团队。团队成员之间团结协作、互相支持,共同推动公司的持续成长和发展。同时,公司还建立了良好的激励机制和企业文化氛围,激发员工的工作积极性和创造力。

强盛电子(AEC)公司的发展小趣事

随着环保意识的日益增强,AEC积极响应国家绿色发展的号召,将环保理念融入企业的日常运营中。公司投入大量资金进行环保技术的研发和应用,推动生产过程的绿色化、低碳化。同时,AEC还积极参与社会公益活动,为保护环境、促进可持续发展贡献了自己的力量。

AITSEMI公司的发展小趣事

AITSEMI公司成立于XXXX年,创立之初便以研发高性能模拟与混合信号IC为核心目标。面对当时市场上对高性能、高性价比集成电路的迫切需求,AITSEMI团队凭借深厚的技术积累和敏锐的市场洞察力,成功开发出了一系列具有竞争力的产品,为公司的初步发展奠定了坚实的基础。

ENSIGN公司的发展小趣事

ENSIGN不仅关注传统电子行业的发展,还积极探索新的业务领域。最近,ENSIGN集团宣布收购位于亚利桑那州的医疗保健园区River Park Post Acute和Elmwood Senior Living,以及其他七家公司。这一收购标志着ENSIGN正逐步向医疗保健领域进军,寻求多元化的发展机会。

问答坊 | AI 解惑

LED显示屏生产工艺流程

LED显示屏生产工艺流程,…

查看全部问答>

嵌入式竞赛题目。。。

本帖最后由 paulhyde 于 2014-9-15 09:12 编辑 我要参加博创杯嵌入式竞赛,但是想不出题目来。大家帮我想下,帖出来好吗? [ 本帖最后由 open82977352 于 2010-2-10 19:19 编辑 ]  …

查看全部问答>

大家都有些什么工具啊,这样的万用表你有吗?

不知道大家都有些什么开发工具啊,什么时候来过工具大比拼,不知道怎么样,一直都想买下面这种工具,可惜囊中羞涩啊。     同一网站参考价格: Fluke 289      6980.00元 HIOKI&nbs ...…

查看全部问答>

ADS的不能设置调试的问题

我的ADS1.2中设置不了生成目标的方式,请问在哪里设置?看书上讲的是在左上角的下拉框里应该有的,可是我的只有我自己设置成TARGERT的名字一个选项,请问在哪里设置?是不是我的ADS装的不全啊?各位有没有遇到过类似的问题?…

查看全部问答>

调谐电路

本帖最后由 paulhyde 于 2014-9-15 09:37 编辑 哪位大侠解释一下这个电路图,怎么取值lc和调谐的模块  …

查看全部问答>

【申请BeagleBone试用机会】旅行家足迹记录仪---这个名字听起来还好吧

  本着不需要太高的台阶、过高成本和有实用价值的原则想到这样一个制作。我觉的这是个能够扩展的好的项目,比如添加3G网卡,将照片和轨迹信息直接送到远程服务器上。这需要两个狗板,一个是随身携带的记录设备,一个就是实现网盘的功能,这样 ...…

查看全部问答>

TI ISO1050 不匹配问题如何解决

TI ISO1050 不匹配问题如何解决…

查看全部问答>

diy小巧的光控灯

利用光敏电阻制作一款一个简单实用的光控灯。 光敏电阻的工作原理是基于内光电效应。在半导体光敏材料两端装上电极引线,将其封装在带有透明窗的管壳里就构成光敏电阻如图所示。 利用光敏电阻Rp感光效应(光越强阻值越小)控制Q1 Q2的导通与截 ...…

查看全部问答>

菜单编程

最近有个菜单项目 使用MSP430系列 需使用菜单编程1.     只想使用状态机部分 组语部分需移植吗 430好移植吗2.     和QPNANO的优势在哪?如果某个状态内的函数执行过久 我发了一个帖子在http://sourceforge. ...…

查看全部问答>