STMCU小助手
发布时间:2022-2-16 20:35
|
问题: 该问题由某客户提出,发生在 STM32F103VBT6 器件上。据其工程师讲述:其产品中使用了 STM32 作为主控单元,负责系统的管理。在对产品测试时发现了一个奇怪的现象:在关闭电源后,STM32 仍然能够对 UART 上输入的信息做出回应。 调研: 检查其测试装置,如图(一)所示:
其中,USB 到 UART 转换器的 Tx 和 Rx 的信号标准为 3.3V CMOS,STM32 所使用的通信口为USART1。重复测试,现象如其所述。用万用表测量 STM32 的 VDD 端子,在 2.1V 左右。断开 STM32的 Tx 与 USB 到 UART 转换器的 Rx 之间的连接,STM32 的 VDD 端子上的电压无变化。断开 STM32的 Rx 与 USB 到 UART 转换器的 Rx 之间的连接,STM32 的 VDD 端子上的电压降为零。 结论: USB 到 UART 转换器通过 STM32 的 USART1 的 Rx 管脚对 STM32 提供了电能,使其维持在运行状态。 处理: 在 STM32 与对外的端子之间加隔离芯片,如图(二)所示:
建议: STM32 的参考手册中,给出的 I/O 端子的结构如图(三)所示:
在每个 I/O 端子上集成有两个保护二极管,一个与 VSS 接连,而另一个与 VDD 连接。由于这种结构,使得 STM32 在电源停止对其供电时,有可能通过保护二极管从外部电路送来的高电平信号吸取电能,补充到其供电电路中去。而 STM32 本身是低功耗芯片,因此在某些情况下,可以依靠这种供电方式维持在运行状态。然而,让 STM32 处于这种运行状态是有危害的。具体表现为: 1. 由于供电不稳定,STM32 并没处于稳定的运行状态,可能会产生误动作,危及系统安全; 2. STM32 从外部电路吸取电能,增加了系统的功耗,而这部分电能的消耗是完全没有意义的; 3. STM32 的保护二极管所允许通过的电流并不大,在 5mA 以下。长期从保护二极管流过较大的电流,会导致 STM32 失效; 4. 由于 STM32 从外部信号吸取较大的电流,有可能导致该信号的电平偏离正常的电平标准,而造成其它电路对该信的识别出错; 所以,在 STM32 的应用中要避免这种情况的出现。通常的处理方法是加隔离芯片,如74HC245、74HC244、74HC125 等。 |
【经验分享】STM32 HAL库移植FreeModbus详细步骤
【逢7发帖赢大礼】STM32开发之IC门禁卡UID读取方法!
实战经验 | Keil工程使用NEAI库的异常问题
经验分享 | FDCAN数据段波特率增加后发送失败的问题分析
STM32几种流行开发环境的优缺点
好用软件推荐-TouchGFX Designer
OpenSTLinux 6.1发布:M33-TD加持+安全升级,STM32MPU开发效率翻倍!
【经验分享】STM32CubeIDE汉化
手把手教你VSCode搭建STM32开发环境
RTOS在STM32中的应用
微信公众号
手机版