打印
[STM8]

STM8S IAP

[复制链接]
2827|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xuannin|  楼主 | 2013-5-22 20:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
移植了FATFS到STM8S207实现了IAP,能够用SD卡升级应用程序,为了保证bootload和应用程序不被非法读取用如下方式实现加密:1.芯片烧写时必须加密;2.在bootload的某个固定地址放一段密码,在应用程序读取该地址密码是否正确,从而决定程序是否运行;3.防止bootload被高手写的应用程序非法读出,在应用程序中加一段密码,bootload在升级应用程序时查找这段密码,如果找不到,即使升级完成也将应用程序段全部擦除,保证不会运行非法应用程序,升级64K应用程序小于20秒时间,
沙发
xuannin|  楼主 | 2013-5-22 20:05 | 只看该作者
唯一不完美的地方就是在放密码到flash中时无法指定地址看到有人说这样做,
#pragma section const {CODE_VDCHK}
    volatile const u8 vdchk[]={0x43,0x56,0x89,0x58,0x08,0x6a,0x37,0x82,0x92};
#pragma section const {}
试过也不行,不知道怎么在固定地址的flash放一段能赋值的数组

使用特权

评论回复
板凳
xuannin|  楼主 | 2013-5-22 20:18 | 只看该作者
现在临时解决的办法是在.map文件中找到vdchk[]的地址,但是如果程序更改的话,vdchk[]地址可能会被改变,不知道各位高手有什么意见

使用特权

评论回复
地板
xuannin|  楼主 | 2013-5-23 08:54 | 只看该作者
问题完美解决,CODE_VDCHK加保护即可

使用特权

评论回复
5
nienianhong| | 2013-11-22 15:59 | 只看该作者
教一下我啊,怎么弄。我现在急用!

使用特权

评论回复
6
zjshaoxingjj| | 2013-12-23 13:35 | 只看该作者
受教,学习了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

34

主题

174

帖子

3

粉丝