APM32芯得 EP.35 | APM32芯片Flash读写保护、锁芯片的多种解决办法
本文针对APM32芯片开发中常见的"无法连接目标芯片"问题,分析其两大根源:Flash读写保护(由晶振配置错误导致选项字节设置异常)和SWD接口锁定(引脚复用引发)。提供两种解决方案:对于SWD锁死,建议通过复位引脚强制恢复默认模式;对于Flash保护,推荐使用H7-TOOL工具或JLINKUNLOCK软件重置选项字节。文章强调正确配置硬件参数的重要性,并给出MDK/JLINK
如遇开发技术问题,欢迎前往开发者社区,极海技术团队将在线为您解答~
极海官方开发者社区
https://community.geehy.cn/
《APM32芯得》系列内容为用户使用APM32系列产品的经验总结,均转载自21ic论坛极海半导体专区,全文未作任何修改,未经原文作者授权禁止转载。
目录
相信每位嵌入式工程师都可能遇到过这样的“糟心时刻”:代码编译通过,硬件连接无误,满怀期待地点击下载按钮,结果是 MDK、J-Flash 或 IAR 弹出“无法连接目标芯片”的无情报错。反复检查接线,甚至换个下载器,问题依旧,开发进度就此卡住。
究其根源,问题往往并非出在烧录工具或芯片本身,而是隐藏在两个常见的“陷阱”之中:Flash被意外地设置了读写保护,或是SWD调试接口因引脚复用而被锁住。
本文将深入剖析这两种导致APM32芯片“失联”的典型场景,并提供一系列经过实践检验的解决策略,助您扫清障碍,让芯片烧录过程重回正轨。
一、问题描述
在烧录APM32芯片时,偶遇用MDK,J-Flash,IAR等无法连接芯片(实践使用其它竞品芯片也有几率发生),即使有时候链接上了,也无法下载。基本原因有以下2种:(注意:如果下载器接线不良,也会有这个问题)
1)Flash读、写保护
根本原因是 工程设计有问题,特别是实际晶振大小与程序中HSE_VALUE大小不一致,很容易导致Flash读保护。
而读保护的本质是芯片的选项字节被设置了,因为读保护就在选项字节里面设置,详情看芯片手册中的选项字功能描述。
2)SWD接口锁住
SWD接口锁住就是SWD引脚被锁住了,根本原因是用户使用这个引脚做其它功能了。

二、解决办法:
1)SWD接口锁住的解决办法
(1)SWD引脚被锁住的解决办法比较简单,只要下载器带了复位引脚,并且板子的SWD接口也留出了NRST复位引脚,就可以正常下载程序。原理是芯片复位上电后,SWD这几个引脚是工作在SWD默认模式的,之后才是用户为这几个引脚设置的其它功能,正是这些复用功能导致下载器无法连接到芯片。所以只要下载器的硬件复位正常,芯片SWD接口锁住后就可以正常下载。
(2)MDK下载选择这里,复位状态进行下载。
JLINK设置:


2)Flash读写保护后的解决办法
(1)使用H7-TOOL可以解除保护:


DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)