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.

[参考译文] MSP430FR2676:无法将 XOUT 配置为 GPIO

Guru**** 2539500 points


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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/923988/msp430fr2676-unable-to-configure-xout-as-gpio

器件型号:MSP430FR2676

大家好、我在配置 XOUT 并将其用作 GPIO (P2.0)时遇到问题

这是我必须配置引脚的代码-

P2SEL0 &=~(BIT0);
P2SEL1 &=~(BIT0);

P2DIR = BIT0;
P2OUT = BIT0;

PM5CTL0 &=~LOCKLPM5;//启用 GPIO

但我不会在引脚上读取高电平值。 将 XOUT 配置为 GPIO 是否缺少一个步骤?

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

    你好、Audrey、

    首先、我觉得这是可以接受的。  

    您能否在调试时查看寄存器并确认它们是否设置正确?   

    硬件上有什么东西可能会将信号拉低?   

    谢谢、

    JD

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

    JD、您好!

    我看到、当我将引脚设置为高电平时、P2寄存器设置为0x01;当我设置为低电平时、P2寄存器设置为0x00。

    我应该检查其他寄存器吗?

    目前没有任何东西连接到引脚2.0、我只是使用 DMM 探测测试点、每次测量低电压。

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

    P2IN.0说什么? 应该显示实际引脚状态。

    如何配置 P2.1 (XIN)?

    您使用的平台(电路板)是什么? 我们还应该了解其他代码吗?

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

    P2IN.0为1、即使我将输出设定为低电平也是如此。

    P2OUT.0与我将引脚状态设置为的值相匹配、0表示低电平、1表示高电平

    P2.1实际上被配置为 XIN 模式。 有一个连接到这个引脚的外部晶振。 我正在使用定制硬件。

    在进一步研究后、我在数据表中看到了以下注释-"如果选择了合适的 XT1BYPASS 模式、也可以向 XIN 输入引脚施加符合相应振荡器规格的数字时钟信号。 在这种情况下、相关的 XOUT 引脚可用于其他用途。 "

    根据本说明、我可能缺少此 XT1BYPASS 配置、以允许我将 XOUT 用作 GPIO。 (在当前硬件设计中、XIN 和 XOUT 上没有外部旁路电容器)。 您知道我需要更新哪个寄存器来更改 XT1BYPASS 设置吗? 根据我在用户指南中阅读的内容、它听起来像是旁路模式禁用外部时钟。 "XT1被配置为旁路模式运行、与 XT1相关的振荡器被断电"

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

    尝试:

    > CSCTL6 |= XT1BYPASS;  //仅使用 XIN 作为振荡器

    [参考用户指南(SLAU445I)表3-10]

    [编辑:我刚刚注意到了您的最后一个问题。 "断电"的振荡器是 MCU 内部的 XT1振荡器电路、因为在旁路模式下、它将会妨碍工作。 它不会(不能)关闭您的外部振荡器。]

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

    Bruce、

    这很好、我现在正在读取引脚上的预期电压输出! 感谢您的澄清。

    这会对我的时钟设置产生影响吗? 我将一个32.768kHz 外部晶振连接到 XIN。 当不处于睡眠模式时、我使用 DCO 时钟源以16MHz 运行。 我只想确保进行此更改不会影响我的其他设置。

    再次感谢

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

    术语点:

    1) 1)"外部晶振"仅指带有两个电容器的晶振(通常)。 它需要两个引脚(XIN/XOUT)并且与 MCU 内的振荡器电路(XT1)一起工作。 如果您断开 XOUT、它将不会振荡。  

    2) 2)"外部振荡器"是包含晶体和振荡器电路的单独"盒子"。 它只需要一个 MCU 引脚(XIN)、并且不需要 XT1或 XOUT、 但您必须告诉时钟系统您正在执行的操作(XT1BYPASS)。

    了解您使用的平台(板)将会很有用。 如果是定制板、原理图会很有用。

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

    好的、我在定制板上使用外部振荡器。

    32.768kHz 外部振荡器有一条连接到 MSP430的 XIN 的 CLKOUT 线路。 振荡器上的其余连接为电源和接地。

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

    它听起来就像您拥有所需的配置。 这不会干扰您的其余时钟。

    查看 CS 原理图[参考用户指南(SLAU445I)图3-1]、XT1BYPASS 相当于一个选择器、其显示为"关闭 XOUT"(此处为 XT1OUT)。 其他一切都照常运行。

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

    非常感谢 Bruce!