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.

[参考译文] CCS/MSP430F6638:MSP430F6638:SMCLK 不能正常工作

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/875080/ccs-msp430f6638-msp430f6638-smclk-doesn-t-work

器件型号:MSP430F6638

工具/软件:Code Composer Studio

您好!

我使用的是 MSP430F6638 MCU、我想测试 ADC12。 我已经编写了一些代码来实现它、我的代码中有一个 ADC12_ISR。 我在 ISR 内部放置了一个断点、以了解代码是否在其中输入、这意味着转换已完成。 遗憾的是、程序永远不会进入 ADC12_ISR、因此我无法测试 ADC。 因此、我尝试找出问题所在、并首先检查为 ADC12CLK 提供源的 SMCLK 是否具有正确的频率。 MSP430F6638有一个引脚、此引脚可被配置为用作 SMCLK (引脚3.4)。 因此、我配置了该引脚、以便选择 SMLCK 功能并测试我是否具有正确的频率。 在我的设计中、我有两个外部晶体:一个用于 XT1的32、768 kHz 晶体和一个用于 XT2的8 MHz 晶体。 我已经配置了 UCSCTL4寄存器、所以 ACLK 来源于 XT1、SMCLK 来源于 XT2。 因此、在我执行代码后、我注意到我在 P3.4上根本没有8MHz 时钟信号。 下面是示波器上的结果图片。

MCU 有一个3.3V 电源、这里我只有1V 的振幅、绝对不是8MHz 的频率。 8MHz 晶体的数据表显示负载电容为18pF。 我使用了33pF 外部电容器、因为 http://www.ti.com/lit/an/slaa322d/slaa322d.pdf 的公式(3) 显示 Cload =(CL1 +寄生)/2 =(33pF + 2pF)/2 = 17.5pF、非常接近18pF。 我真的不理解这个结果。 以下是我的代码:

int main (空)


WDTCTL = WDTPW | WDTHOLD;              //停止看门狗计时器

_BIS_SR (GIE);

UCSCTL4|=SELA_XT1CLK|SELESS_XT2CLK;   //从 XT1获取 ACLK、从 XT2获取 SMCLK
UCSCTL6&=~XT2DRIVE_3;                  // 00b、范围为4到8MHz、因为 XT2上的外部晶振是8MHz
UCSCTL6|=XCAP_0;                       // 1pF 内部电容  
UCSCTL6&=~XT2OFF;                     //打开 XT2
UCSCTL6&=~XT1OFF;                    //打开 XT1

P3SEL|= BIT4;                          //选择 P3.4的 SMCLK 函数
P3DIR|= BIT4;                          //配置为输出

此外、在程序中、如果在调试时有正确的值、我不会看到任何错误、主要是我在寄存器中检查了。 有人可以帮助吗? 我真的不知道是什么问题、如果有错误、我也不知道。

谢谢、

此致、  

Mike

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

    您好 Mike、

    为了尝试找出问题的根本原因、您可以尝试使用 TI Resource Explorer 中的 msp430f6xx_USC_08.c 代码示例 来测试 XT2电路是否正常工作? 这是一个经过测试的代码示例、它使用 XT2引脚上的晶体来提供 SMCLK、即它们在 P3.4上输出。

    这将有助于我们了解您的问题是在软件还是硬件中。

    此致、

    Matt

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

    您好、Matt、

    感谢您的回答。 这是软件问题。  

    此致、

    Mike