Great-397279 发表于 2019-7-15 14:25:41

如何 使用内部Flash 完成安全 Bootloader

大家好:请问如何把 内部Flash 分成三个区: Bootloader / 正常程序区域/ 下载的 更新程序区域/ ; 当下载的程序区域 代码校验正确的时候,才开始复制其到正常程序区/ 如果复制失败,则重启,Bootloader 再次复制,直到成功/

备注: 一般在 Keil中只提供两个地址配置,怎么配置地址?

tgw860910 发表于 2019-7-15 17:51:56

只要你在Bootloader和正常程序区域里没有指定用到某些特定位置的flash,编译出来的烧录文件都是按照顺序来填充的,你自己要保证编译出来的Bootloader和正常程序区域不占用更新程序区域的flash区间就可以。
给个意见就是,你最好把编译出来的烧录文件弄成bin文件,这样可以更好地判断是不是会被侵占空间。
当然了,首先你要了解清楚你在用的芯片的总flash的大小,还有flash的分区

butterflyspring 发表于 2019-7-15 21:19:08

建议你看一下官方的叫做IAP的应用笔记和例程,清楚了它的结构和思路就明白怎么设置成你需要的。然后就可以工作起来:)

发表于 2019-7-16 09:22:47

两个程序,一个bootloader,一个是应用程序。应用程序将数据保存到FLASH指定地址后,由bootloaer把数据从指定地址写入到应用程序。

Great-397279 发表于 2019-7-18 12:13:00

谢谢大家帮助指点!:handshake
页: [1]
查看完整版本: 如何 使用内部Flash 完成安全 Bootloader