STM32 CM0+系列芯片的NRST模式之坑

        因项目需要,ST那边给了一块NUCLEO-G031K8开发板,板子上一颗STM32G031K8T6U的CM0+芯片,看原理图芯片的NRST脚是连了外部按键复位电路(如图1)。按理来说开发板的RST功能是默认起作用的,但实际使用时,按RST键一直无法重启,新烧录固件也不能自动reset and run,必须手动下电再上电新固件才能跑起来。

图1
图1 NRST脚外接RST电路

        由于之前对ST的Cortex-M4系列芯片较熟悉,M4系列芯片NRST脚没有其他模式,所以压根没想到CM0+的NRST脚可以设置为不同的模式。所以先是检查使用STM32CubeMX配置上是不是有问题,配置上压根没有关于NRST的配置项,然后就怀疑开发板的硬件有问题,量了NRST的电平,没有高电平输出。但是其他一切功能正常,硬件没这么容易坏,最好还是老老实实看Reference manual,终于找到关于NSRT模式设置的说明(如图2)。

图2 CM0+ NRST的三种mode

 

      下一个问题是:NRST脚的默认模式就是Reset模式啊,为什么拿到的开发板默认模式不是这个?从哪里查看开发板的当前模式是什么?从哪里更改NRST脚的模式?

        于是继续搜索相关资料,了解到通过烧录器的Option bytes可以设置MCU的一些默认参数,图3就是通过CubeProgrammer查到的我手上开发板对NRST_MODE的默认设置,竟然给设置成了GPIO口😂。更改为mode 3,问题外部按键复位功能恢复正常,问题解决。

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值