关于程序员:ArtPi学习笔记9如何为Artpi的内部flash设置读保护

38次阅读

共计 1068 个字符,预计需要花费 3 分钟才能阅读完成。

如何为 Art-pi 的外部 flash 设置读爱护。

个别在我的项目开结束之后,最终烧录固件的时候都会将 stm32 设置为读爱护。过来始终应用 STM32 ST-LINK Utility 配合 st-link 来实现这个步骤。这次用到 art-pi 上,不灵了。

具体表现如下:
实现固件下载

配置 option bytes,后果弹出设置失败

原来 art-pi 上应用的是 Stm32H7 系列的芯片,属于比拟新的系列了。STM32 ST-LINK Utility 算是比拟长远的一款下载工具了,当初要与时俱进,应用新的工具了,就是 STM32CubeProgrammer 了。看看这界面,一看就是高大上。

具体怎么弄呢?
双击关上工具之后,能够看到右上角有抉择连贯的硬件设施,这个工具很弱小,能够反对多种硬件烧录设施,这里选钻研 st-link。所以抉择了 st-link 而后点击 connect。

因为方才烧录之后设置读爱护是失败的,所以此时芯片是处于没有爱护的状态,因而连贯胜利之后会主动读取到外部 flash 的内容。

点击左上角的按钮,能够关上菜单栏

抉择 option bytes,而后能够看到以后的状态字是 0xAA,而且左边还有具体的解释,要设置成 level1 的读爱护,须要写入 BB。

这里间接点击小三角弹出下拉菜单,而后抉择 BB,而后点击 apply

弹出写入胜利,点击确定退出。留神这里退出之后,按电路板上的 reset 按键,是不会产生复位的,要间接给指标板断电重启,这一步十分重要。

板子重启之后,咱们再次连贯板子,就会弹出数据读取失败的对话框,阐明曾经读爱护了。

此时如果要解开读爱护,要如何操作呢?很简略,只有反复方才的 OB 选项的操作就能够了。只不过这次把值改成 AA,就能够了。

然而解除读爱护,会将外部 flash 革除,此时读出的都是 FF。这样就无效避免间接通过 SWD 口来拷贝 bin 固件了。

那如果是批量生产过程中,每一个板子都这么先烧录后加锁,操作步骤太简单了,有没有简便的办法呢?有的,间接用生产模式,主动烧录。
点击菜单栏,而后抉择擦除和烧录选项

而后先抉择要烧录的固件,而后勾选全片擦除,下载文件,并在最初的 option bytes commands 中填写“-ob rdp=0xBB”,最初点击开始主动烧录

当看到 log 中显示这一句的时候,阐明曾经烧录胜利,此时就能够拔掉板子上的 swd 口连线。插入第二块版,程序会主动烧录第二块版,不必手工点击。

如果要退出主动烧录模式,只有点击 stop 就能够了。

这个工具还有其余性能,当前用到了再缓缓钻研。

原文:https://club.rt-thread.org/as…

正文完
 0