This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TM4C123GH6PM:CPU 变热- PCB 布局问题

Guru**** 1838290 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/581669/tm4c123gh6pm-cpu-gets-hot---pcb-layout-issue

器件型号:TM4C123GH6PM

我有一个板、其中4个小型直流电机连接到 H 桥、1个小型伺服电机连接。 我运行了一个脚本几个小时来对电路板进行应力测试。 我听说我的 PC 抱怨 USB 掉线、因此我检查了它、CPU 的触摸温度很高。 关闭设备并稍后返回后、CPU 会在通电后快速加热。

该电路板在空闲期间的电流比之前高7至10mA、但所有功能似乎都正常工作-在高温下更有效。 我认为这表示芯片本身受到晶体管级损坏、但我不知道需要在哪里添加保护或对电路板进行返工。

此外、我想知道这是否可能是由于我忽略了在 GPIO 引脚和 H 桥组件之间添加电阻器。 但是、我的理解是、GPIO 外设引脚中有电流限制组件、这将使这一问题成为不存在的问题。

请提供建议帮助-此板是一个机器人平台、用于帮助有兴趣编写软件和开发硬件的儿童。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引述 USER="Mark Taylor "]我的理解是、GPIO 外设引脚中存在电流限制组件[/QUERPLET]

    "输出"(称为 MCU)、其中包括 GPIO 引脚上的"限压/ESD 二极管"(内部)-这对于限制电流是未知的!

    最安全和最佳的"噪声限制"是因为您为"V_Motor"使用单独的电源、并为 MCU 推导3V3。  此外、小型(外部) R-C 滤波器将帮助那些负责电机驱动连接的 GPIO 引脚。  (在这种情况下、R 可用作(两种)输入滤波器和(您先前寻求的) GPIO 电流限制...  V_Motor 噪声/尖峰可能(通过 USB 电缆)耦合到您的 PC 中(甚至可能)、这会导致您的"PC (正确)投诉"。   显然、您不想销毁"儿童" PC -这种"兴趣"是可以避免的!

    虽然不太可能造成损坏、但最好"放置"您的 C24 (复位滤波器)电容器。   MCU 电源和复位电路必须具备适当且稳健的特性...

    请注意、有刷电机驱动 IC 可显著降低 BOM 成本、使电路板尺寸和组装变得更快/更轻松...

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    CB1、

    感谢您提出好的建议。 我对您的一些有经验的用户对本论坛的其他成员有多大帮助印象深刻。


    Mark、

    我可能还想补充一点、您应该对引脚 PB1进行一些处理、因为它不能真正耐受5V 电压。 (我知道即使是某些 TI 设计也忽略了这一要求、因此经常会被忽略。) 有关建议、请参阅布局指南的第4.1节。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    同样感谢 Bob -请注意、我们对您(同样)印象深刻:技能、关怀和清晰的细节展示...
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    当我说过我相信 GPIO 引脚具有限流组件时、我指的是 GPIO 引脚的可编程驱动强度。

    例如、在 DRIVERS/GPIO/GPIOTiva.h 中、有三个与2、4和8mA 驱动强度相关的选项:
    GPIO_CFG_OUT_STR_LOW
    GPIO_CFG_OUT_STR_MED
    GPIO_CFG_OUT_STR_HIGH

    我的全部设置为8mA ...

    V_Motor 和 VCC3V3不是直接共享的。 有一个可耐受16V 电压的 Vin 引脚。 从此处开始、V_MOTOR 由开关电源调节至5V。 VCC3V3基于 LDO。

    如果噪声耦合到 USB 线路、它会立即抱怨。 它仅在 CPU 开始变热几个小时后执行该操作-指示 CPU 开始发生故障。

    这是电路板的修订版 B。 一个 O 示波器显示、原始版本确实存在电机在电路板上注入噪声并在浪涌期间欠压 CPU 的问题。 此版本的过滤效果要好得多。 数字和电机电源总线通过铁氧体磁珠进行隔离。 电机组件额外使用 X2Y 电容器进行滤波。 瞬态噪声可能不是造成这种情况的原因。

    我以前曾将电机驱动器 IC 用于步进电机、它们非常有用。 它们通常更昂贵、但如果我亲自组装这些原型板并自行烘烤、我可能会考虑购买 IC -感谢您的建议。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这确实非常有趣! 那么、假设我的处理器上有一个 JTAG、所有器件都已连接并通电-准备好了... 根据您引用的文档、当处理器在那里等待我按下调试器中的运行按钮时、我实际上在为 CPU 进行编辑(即 CPU 在复位时暂停-尚未运行 USB 堆栈)。 您是否建议我找到一个替代引脚来使用和修改 TI 在 TI-RTOS USB 示例中提供的软件、从而使用此替代引脚?

    "当配置为 USB0VBUS 时、
    此引脚可耐受5V 电压。 然而、当被用作一个 GPIO 输入时、PB1不能耐受5V 电压。 5V 备用电源
    如果可能出现5V 电压、则应选择容差失效防护 GPIO 来执行 VBUS 检测
    施加到 TM4C123x 器件上为 VBUS 配置的 PB1之前的输入、例如在期间
    器件处于复位状态时加电、初始引导序列执行时。"
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果您需要真正的 OTG 模式、可以。 如果您需要"仅器件"模式、简单的100欧姆电阻就足够了。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您说我不需要为 USB0VBUS 选择替代引脚?

    我认为 doc 表示我必须选择另一个引脚、原因只是器件始终通过 USB 插入、并将定期从复位状态转换为运行状态(JTAG 调试、引导等):
    "备用5V
    如果可能出现5V 电压、则应选择容差失效防护 GPIO 来执行 VBUS 检测
    施加到 TM4C123x 器件上为 VBUS 配置的 PB1之前的输入、例如在期间
    器件处于复位状态时加电、初始引导序列执行时。"

    然而、无论这种情况如何、我确实需要一个串联电阻器来限制 ESD 损坏:
    '对于仅 USB 器件配置、应在上的 VBUS 之间串联一个100Ω Ω 电阻器
    USB 连接器和微控制器上的 PB1 (或备用5V 耐压 GPIO)、以限制损坏
    ESD 事件引起的。"
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用用户="Mark Taylor "]我指的是 GPIO 引脚的可编程驱动强度。

    我曾经在类似的半巨人工作过、但我相信您注意到的"可编程驱动强度"并不能扩展到整个引脚电路的全面/全面保护。   (即、它很可能基于"输出灌电流/拉电流")   更广泛的 GPIO 引脚网络保护是通过适当选择和放置、外部、串联、GPIO 电阻器提供的。

    我不认为您的 PC "立即投诉"还没有因(可能)电机/过度挑战的电力输送/分配而"提出问题"。   您真的不知道您的 CPU 何时开始变热-这不是真的吗?

    您在浪涌期间 CPU "欠压"的报告表明您的电源/配电系统可能不充分。   减去稳健的电源配置和输送、您会使 MCU 和其他关键组件(始终)面临风险...

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    不、我不知道它何时开始变热。 启动时、它可能有两天的连续无人值守运行时间。 现在的电源情况是干净的、但我同意在 GPIO 上放置一些电阻器始终是一个好主意。 但是、我犹豫是否认为我无法依赖手册中报告的可编程驱动强度来驱动某些逻辑门。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    CB1完全正确。 驱动强度是指可编程输出缓冲器、这意味着输出缓冲器可以驱动或吸收至少 x (2、4或8) mA 的电流、并且仍然实现高电平或低电平的有效逻辑电平。 实际上、输出缓冲器的驱动能力可以远远超过该值、尤其是当负载电阻过低而缓冲器无法达到其输出电平时。 例如、如果您将 GPIO 配置为2mA 输出并尝试将其设置为高电平、但它已接地、它将驱动超过2mA 的电流、并且会变热。 如果您将其配置为8mA 输出、它将驱动更大的电流并变得更热。 话虽如此、我怀疑驱动短路的输出引脚是您的问题。

    接下来、我将介绍 CB1的下一个要点。 这些小型 CMOS 晶体管本身就容易受到高电压的损坏。 高电压可能来自静态放电或开关感性负载等反激。 我们在器件引脚上放置 ESD 保护电路以对其进行保护。 这些 ESD 电路会打开、并将能量重定向回芯片接地。 保护必须非常快速地开启以防止损坏、因此它们不仅是绝对电压的函数、而且是电压随时间变化(dv/dt)的函数。 当它们打开时、它们必须具有一条极低的接地阻抗路径。 遗憾的是、当 ESD 电路导通且电流过大时、它们可能会导通寄生 SCR。 一旦这个意外 SCR 导通、在移除电流源之前、它不会关断。 从外部移除引脚上的电压、或者在接合线或内部铜迹线熔化时移除电压。 这称为"闩锁"。

    这一故事还有一个转变、这可能是 PB1背后的根本原因和故事。 当您将 USB_5V0等低阻抗电源引脚连接到引脚时、您可以获得极快的上升时间。 如果它足够快并且高于 VDD (3.3V)、它可能会打开 ESD 保护。 一旦 ESD 保护开启、它就会拉低限流 USB_5V0。 这会关闭 ESD 电路。 USB_5V0再次快速上升、ESD 电路再次导通。 循环重复... 东西会变热、但可能不会融化。 但这当然不是我们想要的。 我们只需略微限制电流、以防止发生 ESD 开启振荡。 这就是100欧姆电阻器的作用。

    我的免责声明:我不知道这是 PB1未被标记为"5V 耐压"的原因。 在芯片开发和验证时、我不是这个团队的一员。 (Amit 可能会看到这种情况并发出蜂鸣声。) 但是、我曾在同一工艺节点上接触过另一个系列、并且比我以前更熟悉 ESD 结构。 这种解释将解释为什么在器件模式下、该引脚可以通过100欧姆电阻器连接到 USB_5V0。 遗憾的是、当微控制器必须在 OTG 模式下驱动 USB_5V0时、电阻器引起的压降导致无法使用该电阻器。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您和 CB1为我提供了很多需要思考的信息! 因此、我肯定需要在 USB_5V0引脚上连接一个电阻器-检查。 如果驱动 H 桥的这些逻辑芯片(和/或)栅极的电流消耗超过8mA、我肯定还需要电阻器、因为 CPU 会很乐意自行提供更多电流。 这都是正确的吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    再次感谢供应商的 Bob 提供的友好支持。

    在 BLDC 电机驱动领域工作过长/辛苦-我注意到、您的多芯片驱动解决方案的(范围)提供了很大的 PCB 面积(可能面积过大)、从而"产生"(不需要的)噪声和电感反冲(即可能用作天线) -并将其中的一些反馈到(精细的) GPIO 引脚结构。 (正如 Bob 和 I 都指出的、GPIO 中不受输出驱动电路保护的那一部分)仅占用了复杂 GPIO 引脚结构的一部分、很可能会影响整个结构-尤其是随着使用和时间的推移、影响会级联。 (在某处、我有照片微图显示了这种效应的增长和传播...)

    与"受保护程度较低"的 GPIO 电路所能实现的成本、时间和延迟相比、06-03 SMT、GPIO 电阻器会带来成本/尺寸损失...   另外请注意、您已经使用小型有刷电机测试了您的电路(很可能)。   我可以保证"kidz"将在一天内随"耗电"电机一起到达-因此、请注意确保您的电源稳定、正常并且所有"基本" MCU 保护都已到位。