这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 分享STM32代码保护方法

共8条 1/1 1 跳转至

分享STM32代码保护方法

高工
2015-02-11 14:55:16     打赏
如果你已经知道该方法,或者有更好的方法,请不吝赐教
步骤:
1.准备工作:HEX文件和JLINK驱动(本人使用的是Setup_JLinkARM_V415e)
安装完毕后,可以在开始--所有程序--SEGGER--J-Flash ARM打开该应用程序,如下图

先进行一下设置,对要写入的芯片和写入方式
选择JATG还是SWD
选择芯片型号

2.打开要烧写的HEX文件:File--Open data file ,可以下拉选择HEX文件类型

3.连接要写入的芯片:Target--Connect

4.写入代码:Target--Program & Verify(F6)

(到此,就是代码的写入过程,下面是加读保护的步骤)
5.加读保护:Target---Secure chip,点击是,就是加上了读保护!

验证方法,可以使用一个没有加读保护的芯片,重复步骤中的3,连接上之后,read back一下,看看是否能读出?



然后再使用一个加了读保护的芯片,重复步骤中的3,连接之后,read back一下,看看是不是真的不能读出了,如果成功加了读保护,它会一直停在那里,数据一直读不出来,最后弹出一个错误警告!


到此,读保护已经加载进去了!
可是有的时候,你突然发现你的代码需要更新,如果你不解除读保护功能的话,你将很难再次将程序写入,解除方法也就是步骤中的5项中的反操作:Target---Unsecure chip
解除成功后,你就可以再次写入你更新后的代码了。并没有网友所说的要更改BOOT0和BOOT1的设置,等等。。。

这个加载代码读保护功能的步骤可能对有些人来说还是比较麻烦的,毕竟产品多的时候,写入之后还要按一下写保护命令,对于产线操作员来说,可能一时疏忽忘记其中一个,就会造成代码的外泄,是不是应该还有更简单的办法一键写入呢,答案是肯定的!
具体做法,就是要在生成HEX文件之前,要多几个步骤
1.首先,加载: C:\Keil\ARM\Boards\Keil\MCBSTM32\Blinky文件夹中的一个STM32F10xOPT.s文件

2.修改下面两个值为1
 
3.生成HEX文件之前务必进行一下此配置
 

这样的话,就简单的一个HEX文件就会使你的产品流入市场之后,即便是被抄板成功,也不会是代码流出了。



关键词: STM32     代码     保护     方法    

院士
2015-02-15 22:20:23     打赏
2楼
这个读保护 的功能还是非常实用的。

高工
2015-02-25 23:17:36     打赏
3楼

楼主还可以整理下iar下的读写保护,期待


菜鸟
2015-03-01 12:32:01     打赏
4楼
very good !!!

专家
2015-03-04 14:54:24     打赏
5楼
别人能否拷贝你的数据?

菜鸟
2015-03-04 18:03:19     打赏
6楼
学习了  很有用!

菜鸟
2015-03-05 13:56:30     打赏
7楼
第一次看到,学习了,谢谢楼主分享!

专家
2016-03-27 22:56:37     打赏
8楼
这个功能不错,学习一下。

共8条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]