Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
ART-Pi
flash
读保护
Art-Pi学习笔记9:如何为Art-pi的内部flash设置读保护
发布于 2021-02-24 10:08:40 浏览:1170
订阅该版
如何为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就可以了。  这个工具还有其他功能,以后用到了再慢慢研究。 **相关文章:** [Art-Pi学习笔记10:优化多媒体扩展板的音频驱动添加录音功能](https://club.rt-thread.org/ask/article/2872.html) [Art-Pi学习笔记9:如何使用art-pi的多媒体扩展板播放TF卡中的音乐文件](https://club.rt-thread.org/ask/article/2849.html) [Art-Pi学习笔记9:如何为Art-pi的内部flash设置读保护](https://club.rt-thread.org/ask/article/2568.html) [Art_Pi学习笔记8:使用AHT10温湿度模块](https://club.rt-thread.org/ask/article/2543.html) [Art_Pi学习笔记7:自己添加硬件定时器设备HWTIMER](https://club.rt-thread.org/ask/article/2492.html) [Art_Pi学习笔记6:驱动PWM输出](https://club.rt-thread.org/ask/article/2483.html) [Art-Pi学习笔记5_4:在littlevgl中显示二维码](https://club.rt-thread.org/ask/article/2698.html) [Art-Pi学习笔记5_3:在littlevgl软件包中显示中文字体](https://club.rt-thread.org/ask/article/2695.html) [Art_Pi学习笔记5.2:LVGL模拟器安装在VS2019上的避坑指南](https://club.rt-thread.org/ask/article/2470.html) [Art_Pi学习笔记5.1:优化LVGL软件包提高刷屏的速度](https://club.rt-thread.org/ask/article/2464.html) [Art_Pi学习笔记5:移植LittleVGL2RTT软件包驱动多媒体扩展屏](https://club.rt-thread.org/ask/article/2434.html) [Art_Pi学习笔记4:驱动多媒体扩展版的LCD和触摸功能](https://club.rt-thread.org/ask/article/2436.html) [Art_Pi学习笔记3:学习驱动wifi模块AP6212](https://club.rt-thread.org/ask/article/2429.html) [Art_Pi学习笔记2:驱动片外SPI_FLASH_W25Q128](https://club.rt-thread.org/ask/article/2423.html) [Art-Pi学习笔记1:驱动SDIO和USB设备做TF读卡器](https://club.rt-thread.org/ask/article/2417.html)
1
条评论
默认排序
按发布时间排序
登录
注册新账号
关于作者
adaphoto
这家伙很懒,什么也没写!
文章
25
回答
44
被采纳
5
关注TA
发私信
相关文章
1
OTA 片上FLASH擦除失败
2
请问 怎么实现flash的FIFO存储呢
3
FAL初始化输出调试信息bug
4
spi1挂载w25q32失败
5
SD卡与外置flash(dg25q32)一起应用,挂载spi2总线上
6
w25q128 flash 怎么在电脑和开发板上切换挂载
7
RTT没有对FLASH进行操作的指令吗
8
求一份基于RTT系统封装好的STM32F1系列的FLASH操作程序
9
使用FAL接口写的片内flash的擦除函数会死掉
10
关于潘多拉flash操作例程的
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
rt-smart
FAL
I2C_IIC
ESP8266
UART
cubemx
WIZnet_W5500
ota在线升级
PWM
BSP
flash
freemodbus
packages_软件包
潘多拉开发板_Pandora
定时器
GD32
ADC
flashDB
编译报错
socket
中断
rt_mq_消息队列_msg_queue
Debug
keil_MDK
msh
ulog
SFUD
C++_cpp
MicroPython
本月问答贡献
张世争
1
个答案
2
次被采纳
crystal266
4
个答案
1
次被采纳
聚散无由
2
个答案
1
次被采纳
lchnu
2
个答案
1
次被采纳
sakumisu
1
个答案
1
次被采纳
本月文章贡献
出出啊
1
篇文章
3
次点赞
小小李sunny
1
篇文章
1
次点赞
张世争
1
篇文章
1
次点赞
crystal266
2
篇文章
1
次点赞
whj467467222
2
篇文章
1
次点赞
回到
顶部
发布
问题
投诉
建议
回到
底部