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.

[参考译文] MSP430FR6922:TTL 通信期间出现【紧急】通信故障

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1595083/msp430fr6922-urgent-communication-failure-during-ttl-communication

器件型号: MSP430FR6922

你好。

我是 CNTech Electronics。

我之前就这个问题获得了技术支持。

我正在遇到持续的沟通问题、因此我想再次与您联系以获得进一步的帮助。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1502946/msp430fr6922-urgent-uart-communication-freeze-on-msp430fr6922-in-water-meter-mass-production

 

20251205_TI_total Register.xlsx 

我已经捕获了已死寄存器的全文。

请确定哪些寄存器已失效。

如果您对导致寄存器出现问题的条件或初始设置感兴趣、请告诉​​我可以提供哪些初始值。

由于这是一个紧急事项、我请求你立即采取行动。

谢谢你。

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

    您好、Seo:

    让我检查一下您的寄存器值、然后明天提供反馈。

    谢谢!

    此致

    Johnson

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

    你好。

    为了便于分析、我将向您发送比较正常和有缺陷样品的寄存器的数据。

    此外、是否有单独的命令可重置整个通信?

    我计划在检测到通信已中断一段时间后重置通信。

    e2e.ti.com/.../20251204_5F00_TI_5F00_Compare-all-registers.xlsx

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

    早上好。
    感谢您关注我们的技术咨询。

    已添加通信故障示例的注册表信息。
    请检查它。

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

    你好。

    我已经上传了成功和失败通信的样本、由注册机构组织。

    请查看详细信息。

    谢谢你。

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

     设置 CSTCL5:LFXTOFFG(和 SFRIFG1:OFIFG)、表示 LFXT(32kHz 晶体振荡器)已停止。 这将导致 ACLK(时钟 UCA0)切换到 LFMODCLK、即 MODOSC/128。 MODOSC 被指定为+/–12.5%、可能会阻止 UART 通信。

    可以通过 NMI [Ref User Guide (SLAU367P) 第 3.2.8 节]捕获此情况。 我预计重新启动 LFXT 需要清除、然后设置 PJSELx.4/.5。

    它看起来已经像 CSCTL4:LFXTDRIVE=3。 您可以尝试屏蔽(外部)晶体电路。

    [编辑:示例 msp430fr6x7x_cs_03.c(此处)展示了如何使用 OFIE+NMI。 似乎假设 LFXT 将自行重新启动、因此不会进行任何恢复。]

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

    你好。

    我还有一个问题。

    根据您提到的 LFXTOFFG 设置、LFXT 停止时、LCD 是否会关闭?

    我当前遇到液晶屏关闭的问题。

    请检查此问题是否由相同原因引起。

    谢谢你。

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

    对于 LCD 、ACLK 以 LFXT 为时钟源、对吗?

    如果是、您还可以测量信号越过 LFXIN 和 LFXOUT、在发生问题时查看示波器是否存在任何 32k 频率正弦波、以查看晶体是否发生故障。  

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

    你好。

    与晶体相关的问题已在一定程度上得到解决、通信冻结问题已被消除。

    但是、当连接 TTL 通信线路、使 GND <->RX 引脚反转并尝试与 TX 引脚正确连接进行通信时、电源会复位。

    什么情况会导致此问题、是否也会导致液晶屏冻结?

    我尝试读取样本的寄存器、但得到了一个错误。

    控制台: “MSP430:停止目标 CPU 时出现故障:内部错误“

    LCD 关闭与无法读取寄存器之间是否存在连接?

    如果是、解决方案是什么?

    请检查。

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

    你好。

    与晶体相关的问题已在一定程度上得到解决、通信冻结问题已被消除。

    但是、当连接 TTL 通信线路、使 GND <->RX 引脚反转并尝试与 TX 引脚正确连接进行通信时、电源会复位。

    什么情况会导致此问题、是否也会导致液晶屏冻结?

    我尝试读取样本寄存器、但得到了照片中显示的错误。

    LCD 是否关闭且寄存器读取问题是否相关?

    如果是、解决方案是什么?

    请检查。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    但是、在连接 TTL 通信线路、使 GND <->RX 引脚反转并尝试与正确连接的 TX 引脚通信时、电源会复位。

    您能否帮助我们在此处提供有关硬件连接的更多详细信息? 我不清楚您这边的硬件连接是什么。 您能否提供更多详细信息、说明如何逐步获得错误结果会更好。  

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

    我来更详细地解释一下硬件连接。

    目前、MCU 有引脚 TX64、引脚 RX1 和 GND。

    我将 RX <->TX、TX<->RX 和 GND<->GND 连接到我正在通信的设备、通信工作正常。

    在这里、我将 MCU 的引脚 64 正常连接到器件的 RX、将 MCU 的引脚 1 连接到器件的 GND、然后将 MCU 的 GND 连接到器件的 TX。 但是、当我尝试通信时、MCU 却死了。

    到目前为止、我已经确认 MCU 在死机之前吸收了高达 3mA 的电流。

    是否有固件或硬件方法可以防止这种情况发生?

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

    您好、Seo:

    很抱歉、我对硬件设置仍然感到困惑。

    [报价 userid=“651005" url="“ url="~“~/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1595083/msp430fr6922-urgent-communication-failure-during-ttl-communication/6200858 ]引脚 TX64、引脚 RX1

     TX64 和 RX1 引脚的平均值是多少?

    下一个方面是什么? UART 转 USB 转换器?

    FR6922 的电源电压是多少?它的电源电压是多少?

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

    在 UART 连接中、TX 侧始终将导线驱动为高电平(几乎)。 如果您将 TX 侧连接到 GND、该源将转储尽可能多的电流、因为它可以向 GND 平面提供。 如果您幸运、它会导致源复位或关断(保护电路);否则、可能会导致其 TX 引脚过热并烧毁。

    因此、将 MCU 的 RX 线连接到 GND 会对导线另一端的任何内容征税、并可能(如您所报告)导致其电源关闭。

    我不清楚您要通过这样做来实现什么。 如果您不希望 MCU 听到其 RX 上的内容,只需断开它的连接 — 无论是物理(硬件)还是通过设置 PSEL=0 和 DIR=0(软件)。