你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

如何利用STM32代码设置读保护功能

[复制链接]
原来是他 发布时间:2016-7-2 14:26
之前也看到有网友提出代码保护的问题,辛苦写的程序,怎么着也不想被别人拿去用!
刚好前一段有个项目完成了,在产品发出去的时候按照老总吩咐,加了代码的读保护!
现在就把之前的工作做个总结,以便哪天忘记,可来此查询,也方便网友使用,当然,这个也可能有人发现了,如果你已经知道该方法,或者有更好的方法,请不吝赐教

步骤:
1.准备工作:HEX文件和JLINK驱动(本人使用的是Setup_JLinkARM_V415e)
安装完毕后,可以在开始--所有程序--SEGGER--J-Flash ARM打开该应用程序,如下图
21.jpg

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

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

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

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

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

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

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


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


这个加载代码读保护功能的步骤可能对有些人来说还是比较麻烦的,毕竟产品多的时候,写入之后还要按一下写保护命令,对于产线操作员来说,可能一时疏忽忘记其中一个,就会造成代码的外泄,是不是应该还有更简单的办法一键写入呢,答案是肯定的!

具体做法,就是要在生成HEX文件之前,要多几个步骤
1.首先,加载: C:\Keil\ARM\Boards\Keil\MCBSTM32\Blinky文件夹中的一个STM32F10xOPT.s文件
30.jpg

2.修改下面两个值为1
31.jpg

3.生成HEX文件之前务必进行一下此配置
32.jpg

这样的话,就简单的一个HEX文件就会使你的产品流入市场之后,即便是被抄板成功,也不会是代码流出了
当然,必须保证自己公司的员工不会外泄。

收藏 1 评论5 发布时间:2016-7-2 14:26

举报

5个回答
kelly-395249 回答时间:2016-7-3 13:13:29
多谢分享,
stary666 回答时间:2016-7-4 09:53:18
春风度玉门 回答时间:2017-11-19 00:14:58
我用的是Keil uVision5    下载用ST Visual Programmer   这个要怎么设置呢?能不能告诉我呀?

STM32F10xOPT.s  这个文件也找水到在那里?
春风度玉门 回答时间:2017-11-19 21:53:14

这篇 过时了,现在的Keil uVision5的STM32F10xOPT.s这个文件里面的内容不一样的了,对不上。
春风度玉门 回答时间:2017-11-19 21:53:50
这篇 过时了,现在的Keil uVision5的STM32F10xOPT.s这个文件里面的内容不一样的了,对不上。

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

相似技术帖

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版