完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我有一个小问题:我想防止通过调试 PIN 读取闪存。
我正在使用 CYBLE-416045-02,它正在运行经过测试的引导加载程序和应用程序。 要限制在正常模式下通过调试 PIN 进行访问,我必须在 sFlash 中配置 NAR 设置。 我已经在引导加载程序代码中这样做了,如下所示: 我生成了一个由引导加载程序、应用程序和 NAR 设置组成的合并十六进制文件 在 PSoC 编程器 GUI 中,我在内存类型中选择了主闪存、wFlash 和 sFlash。 然后对微控制器进行了编程但失败了!! 我还能读出洞内存。 在 NAR 部分中,设置了以下位: 在对调试引脚进行编程时,是否可以限制对调试引脚的访问? 如果是,我错了什么? |
|
相关推荐
2个回答
|
|
应用程序中定义的普通访问限制和以十六进制形式生成的访问限制看起来不同,对于 ACCESS_RESTRICT0,所有访问端口都被禁用 (0b111),MPU 处于启用状态 (0b1),SFLASH 访问被禁用 (0b11),所以 0x16001a00 的第一个字节应该是 0xff,但在十六进制文件中你有前提是它显示为 0x 0 1 " " "" 。
|
|
|
|
sFlash 是一个用于存储片上程序的较小的闪存模块。在CYBLE-416045-02中,sFlash的大小一般为12KB。NAR (Non-volatile Access Region) 设置可以用来限制对闪存的访问权限,以进行额外的安全性。
要将NAR设置写入sFlash,您可以通过以下步骤进行操作: 1. 在你的应用程序中,将NAR设置数据定义为一个字节数组,如下所示: ```c const uint8_t narSettings[] = { // 在这里定义您的NAR设置数据 }; ``` 2. 在启动函数中,通过调用`CySysSflashWriteUserRow()`函数将NAR设置数据写入sFlash。例如: ```c void Bootloader_Start(void) { // ...其他初始化代码 // 将NAR设置写入sFlash CySysSflashWriteUserRow(narSettings); // ...其他启动代码 } ``` 3. 生成应用程序和引导加载程序的合并十六进制文件。 4. 使用PSoC Programmer GUI中的选择设备和合并HEX文件。 5. 在“Memory Type”选项中,选择“Main Flash、wFlash和sFlash”。 6. 对微控制器进行编程。 现在,您已经将NAR设置写入sFlash并限制了通过调试PIN的访问权限。 请注意,这只是一种基本的安全措施,并且并不能完全阻止对sFlash的非授权访问。 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-LCD显示图片编程示例之介绍mmap
72 浏览 0 评论
《DNESP32S3使用指南-IDF版_V1.6》第二章 常用的C语言知识点
509 浏览 0 评论
【RA-Eco-RA2E1-48PIN-V1.0开发板试用】(第三篇)ADC采集+PWM输出
546 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第四十五章 人脸识别实验
545 浏览 0 评论
1008 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11763 浏览 31 评论
浏览过的版块 |
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 16:31 , Processed in 0.909653 second(s), Total 78, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号