
问题: t/ A( b3 I* E8 b 有客户在产品的设计中,使用外部 IC 的 GPIO 通过连接 NRST 引脚来对 STM32 MCU 进行复位控制时,会遇到以下问题:9 a; D6 k: X$ z% a9 `- _; R! N IC 可以对 MCU 进行复位控制,但是芯片内部的复位信号(如看门狗等)不能对 MCU 进行复位,甚至影响引脚功能. + o+ T' d$ R, H2 K ![]() " J; F/ W# o# S ! z' }* |0 H R; ? 调研:9 j# ^$ D6 Q3 Y3 o4 T8 T- Q& I/ j STM32 MCU 的复位电路结构分析: • STM32 MCU 的 NRST 是一个双向接口,在内部复位电路产生复位动作时,会输出一个低电平的信号; • 如果外部 IC 输出的是高电平,则信号会发生冲突,相当于一个高电平除了导致低电平的复位信号不起作用,而且因为复位引脚的 CMOS 器件导通的内阻很小,NRST线路上产生比较电流大的电流,可能损坏器件. . r& F! e( O5 Y- `* c* z4 M 对于 IC 常见 GPIO 典型结构进行分析: 1. 当 IC 端 GPIO 配置为 Push-pull 模式: • IC 与 MCU 连接的内部结构框图如下: ! C2 ~' h0 b( X" |, y; F ![]() • 根据内部结构框图分析可知:+ P! h6 P/ S2 Y+ N+ Z" c" ?) d ![]() ( h( D3 h" Z" H; Z 所以在这种模式下,如果配置为输出时,需要增加一个二极管作为保护.: Z' b8 _8 [- I" }( X3 {4 U* Y 2. 当 IC 端 GPIO 为 Open-Drain 模式: • IC 与 MCU 连接的内部结构框图如下: # j& i/ c: U3 W9 ~ ![]() 6 {- M5 J" G% d; V7 I • 分析结果如下表: $ [1 `" r% h4 v) x2 J3 I7 [ ![]() $ @2 }( p+ h/ ]$ j/ f4 Z7 H: ~ 所以在这种模式下,如果配置为输出时,不需要增加一个二极管作为保护.# E+ u2 E: y- a0 [+ \4 i" J% N, N/ l : N% R8 \ n/ X; m 分析总结:1 Z: A2 M7 ` V. u* D 所以建议客户在设计电路的时候,根据以上分析确定是否增加保护二极管.3 {6 n- P2 M' |4 M S 特殊情况: 如果遇到以下情况:! i+ x8 r {/ @8 Y% s8 _9 A- I2 j9 d 客户设计电路的时候没有考虑到 NRST 的双向引脚结构,电路已经设计好,且外部 IC 的 GPIO 结构只有 Push-pull 模式./ H6 e$ K7 x' h+ K8 b8 I5 s" G 可以通过软件配置为做以下处理:" M8 u6 d: L# n8 a- |* p* L • 当输出低电平时,配置 GPIO 输出为低电平." A8 w8 k, Y+ ? V 当输出高电平时,配置 GPIO 为输入下拉.(相当于释放 NRST 控制,STM32MCU 的上拉电阻自动将 NRST 电平拉高). 8 ~2 l; j B) v+ `! G1 p9 b 结论: 外部 IC 连接 NRST 信号导致 MCU 内部复位信号失效的问题是由于 STM32 MCU 的NRST 引脚结构引起的,所以在设计和使用此功能的时候需要加以注意并参考按照以下处理方式进行处理.9 |3 B: _9 I' F* `# z* D 处理:3 `3 O+ P1 S1 H 在产品设计中使用外部 IC 控制 NRST 可以做以下处理:1 d# Q' D' {& P3 r 1.如果 IC 的 GPIO 是 Push-pull 模式时: a. 硬件上处理:增加一个保护二极管. b. 软件上处理: • 当输出低电平时,配置为输出低. s" Y) S$ l4 d S" F • 当输出高电平时,配置为输入下拉,MCU 的上拉电阻将 NRST 电平拉高.- C0 t4 k5 @+ F( Z& U' z2 P 2.如果 IC 的 GPIO 有 Open-Drain 模式,配置为 Open-Drain 模式.7 U( ?9 z z s/ e1 X6 u2 I. m |
STM32 ISP IQTune:真正零门槛的免费ISP调整软件
【经验分享】STM32 新建基于STM32F40x 固件库的MDK5 工程
意法半导体MCU双供应链策略,打消中国客户后顾之忧
【经验分享】基于STM32使用HAL库实现USB组合设备CDC+MSC
2024意法半导体工业峰会:赋能智能电源和智能工业,构筑可持续未来
ST推出灵活、面向未来的智能电表通信解决方案,助力能源转型
意法半导体 x Qu-Bit Electronix:推动新一轮的数字声音合成革命
从STM32 MPU产品看嵌入式系统中微处理器的新变化
【Hot!】STM32全系列开发板都支持Arduino开发,你知道吗?
【经验分享】STM32 HAL库移植FreeModbus详细步骤