历史上的今天
返回首页

历史上的今天

今天是:2025年07月24日(星期四)

正在发生

2019年07月24日 | 基于STM32F407的bootloader、IAP、Flash_APP、上位机设计(二)

2019-07-24 来源:eefocus

第二部分:Flash_App设计


前期准备:


一、硬件:STM32F407VET6板一块,IAP使用串口通信,板上需引出串口或有DB9接口都行(如果不使用串口,使用其他协议均可)。


二、软件:KEIL4.73版本,关于IAP读写FLASH的源代码是使用战舰的源码,共有iap、stmflash、sys等文件,上位机软件设计使用QT5.5。


工作开始:


三、Flash_App工程中有几个需要修改的地方。


(1):Target里面IROM1,Start修改为0X8010000,这个和Bootload的#define FLASH_APP1_ADDR        0x08010000  一致,Size修改为0xF0000,代表你的APP最大的内存,如果APP过大则不能正常运行,因此需要确认你的APP具体的真实大小再修改该值。


(2):User配置里面RUN#1需要增加fromelf.exe文件,路径在KEIL的安装路径里面,可以下载everything搜索工具搜索即可,例如我的路径F:2.WorkSoftARMBIN40fromelf.exe --bin -o ../../app.bin  ./Flash/Obj/output.axf 


(3):路径后面跟着--bin -o ../../app.bin  ./Flash/Obj/output.axf,表示应用输出一个app.bin文件,文件位置在project的../../上,也就是上一层再上一层的目录下,output.axf表示生成bin文件的来源,在工程的output下。


其它配置均和普通工程相同。


四、程序使用


        在程序上面,配置和正常使用一致,但在最开始需要增加一句SCB->VTOR = FLASH_BASE | 0x10000;//设置偏移量。0X10000是0X8010000同等关系,如果你的APP初始位置不一样,这个地方也需要更改,这段代码表示将FLASH偏移到0x10000中,这样就可以正常使用。


        如果bootloader的外设通过boot按键来做了选择,那么APP模式下bootloader不配置外设(例如IO,TIMER,UART等),APP可以使用任何的系统配置,如果APP模式下Bootloader配置了外设,那么APP尽量不要使用,会互相干扰,比较bootloader也是在跑。


五、生成的bin文件就可以作为上位机下载文件。


推荐阅读

史海拾趣

绿宝石(BERYL)公司的发展小趣事

绿宝石公司自创立之初,便致力于电子材料领域的研发。某年,公司研发团队成功开发了一种具有优异性能的绿宝石电子材料,这种材料在高频、高温等极端环境下仍能保持稳定性能,为电子行业带来了革命性的变革。随着这一技术的广泛应用,绿宝石公司在行业内逐渐树立了技术领先的形象,市场份额稳步上升。

Broyce Control公司的发展小趣事

进入21世纪,Broyce Control已经成为电气和电子产品设计、制造和供应领域的佼佼者。公司不仅在技术上持续创新,还注重与行业伙伴的合作与交流。通过参与国际标准的制定和推广,Broyce Control逐渐在行业内树立了领导地位。同时,公司还积极承担社会责任,推动可持续发展和环保理念的实践,为行业的健康发展做出了积极贡献。

DILABS公司的发展小趣事

为了进一步扩大市场份额,DILABS开始寻求与国内外知名企业的战略合作。他们与多家大型电子制造商签订了长期供货协议,同时也积极与高校和研究机构合作,共同研发新技术、新产品。这些战略合作不仅为DILABS带来了更多的订单,也促进了公司在技术和管理方面的不断进步。

Gamma Microelectronics ( APM )公司的发展小趣事

2007年10月,G24i在英国建立了DSSC的30MW试产线,这是全球范围内的重要里程碑。这条生产线具备高效的生产能力,能够在不到3小时的时间内制造出长达约800米的太阳能电池,生产速度高达每分钟4米以上。这一成就不仅展示了G24i在规模化生产方面的实力,也为后续的商业化应用奠定了产能基础。尽管初期商业化模组产品的转换效率仅为3%,但G24i通过不断优化生产工艺和降低成本,逐步提升了产品的市场竞争力。

远阳(FLYOUNG)公司的发展小趣事

国光新业在深耕国内市场的同时,也积极拓展海外市场。公司的电容器产品凭借其优异的性能与可靠的质量,赢得了国内外众多客户的信赖与好评。随着品牌影响力的不断提升,国光新业已成为电子元器件行业中的佼佼者。未来,公司将继续坚持创新驱动发展战略,不断提升产品与服务的品质与竞争力,致力于成为具有国际竞争力的电子元器件供应商。

Corsair Electrical Connectors Inc公司的发展小趣事

Corsair深知品质是企业生存和发展的关键。因此,公司建立了严格的质量管理体系,从原材料采购、生产加工到产品出厂,每一个环节都进行严格的质量控制。Corsair还引入了先进的质量检测设备和方法,确保每一件产品都符合客户的要求和行业标准。这种对品质的执着追求使得Corsair的产品在市场上赢得了良好的声誉。

问答坊 | AI 解惑

如何改进VRLA蓄电池

如何改进VRLA蓄电池 铅酸蓄电池研究和发展的主要目的: ——取得最大的放电容量和深放电的运用; ——经历多次充、放电循环后,尽可能能维持最大容量。 铅酸蓄电池的放电反应表述如下: 正极:PbO2+3H++HSO4-+2e→PbSO4+2H2O(1) 负极:Pb+ ...…

查看全部问答>

招聘嵌入式系统软件工程师和软件工程师

怡鼎信息科技公司是注册和工作在上海张江高科技园区的年轻公司,公司致力于嵌入式系统的开发工具和教学设备的开发,提供嵌入式产品的一揽子解决方案.公司拥用一个由资深嵌入式系统技术专家和市场人员组成的团队。 公司的理念:诚信做事,积极乐观.分享 ...…

查看全部问答>

基于PSoC的可编程电力线通讯解决方案(赛普拉斯)

赛普拉斯日前针对通过现有电力线进行数据通讯的应用,推出灵活的基于PSoC的可编程解决方案。新型赛普拉斯电力线通讯(PLC)解决方案利用赛普拉斯的 PSoC®可编程片上系统所具有的模拟和数字资源,除通讯功能外还集成了许多功能,例如电源管理、 ...…

查看全部问答>

DA转换模块设计教程

DA转换模块设计教程.pdf…

查看全部问答>

跪求ARM SC100芯片手册

嵌入式新手,现在因为项目需要用到ARM的 SC100芯片,可又一时找不到,求哪位好心人发一份,小弟在此谢过了... …

查看全部问答>

问个plc的问题

有个plc的程序,大概有两三百个io,现在需要修改符号表(程序里的io跟现场的对不上),有什么好办法可以修改吗? 一个个手工改好像很麻烦………

查看全部问答>

关于对刷分id的提醒

最近发现一些id在各个板块刷分,虽然分数并没有很大用处,但这种行为破坏了论坛公平的原则,给软件农民工们幼小的心灵造成了伤害,不利于河蟹社会,希望大家回帖时能关注一下,并举报出这些id。 刷粪的家伙们,别以为我会嫌删贴麻烦,只要批量搜索 ...…

查看全部问答>

关于控制摄像头抓拍的问题

                                 小妹刚刚接触ARM。用的是STM32F103R8T6的板子,需要完成的任务是将摄像头OV7660的图像实时反映到ili9320的显示屏上 ...…

查看全部问答>

PCB布线设计经验谈

PCB布线设计经验谈…

查看全部问答>