搜索

[AT32F403/403A] AT32F403A系统复位问题

[复制链接]
282|6
 楼主 | 2021-1-17 18:59 | 显示全部楼层 |阅读模式
芯片是AT32F403A,在调用这个系统复位函数后发现板子一直处于复位状态无法自动重启,必须要重新断一次电上电才能运行, 之前用的是GD32F103RC的芯片因为管脚兼容所以直接就换上测试了,在GD32上是能正常复位并且能自动重启,板子的RST管脚没有使用处于悬空的状态。

微信图片_20210117185010.png

使用特权

评论回复
| 2021-1-17 21:10 | 显示全部楼层
试着复位引脚接个RC复位看看。

使用特权

评论回复
 楼主 | 2021-1-17 23:39 | 显示全部楼层
xyz549040622 发表于 2021-1-17 21:10
试着复位引脚接个RC复位看看。

问题已经解决了,

使用特权

评论回复
 楼主 | 2021-1-17 23:46 | 显示全部楼层
经过一步步的屏蔽测试,最后找到了原因,当系统时钟超过72M需要使用到下面这个寄存器,其中的5:4位(时钟切换自动平滑功能)必须设置,同时注意到这个寄存器的最低4位是保留为,但发现这个寄存器的复位值为0X0000000D,正是因为我将低4位也设置为了0才导致了一系列问题,也就是说这个寄存器的低4位很可能有某些功能,具体什么功能不得而知,但是可以得出的结论是,将低4位清零后调用NVIC_SystemReset() 函数芯片复位后无法自动重启,同时会影响到调试功能,也就是无法连接到在线调试设备。
QQ图片20210117233903.png

使用特权

评论回复
| 2021-1-18 09:08 | 显示全部楼层
复位引脚接个RC复位

使用特权

评论回复
| 2021-1-18 15:02 | 显示全部楼层
感谢分享;
任何MCU使用中不要去操作寄存器的保留位.

使用特权

评论回复
| 2021-1-19 23:42 | 显示全部楼层
参看库函数就没问题了,关于有些保留位不能操作的问题,新版RM也会更明确说明

使用特权

评论回复
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 我要提问 投诉建议 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

在线客服 快速回复 返回顶部 返回列表