工具与软件:
工具:CCS 12.7.0
大家好!
是否可以将 ACLK 用作 UART 操作的时钟源? dev 区域中的示例不仅使用 ACLK。
如果这不可行、如何设置 UART 通信、使程序在时钟选择方面能够充分利用资源?
提前感谢!
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 12.7.0
大家好!
是否可以将 ACLK 用作 UART 操作的时钟源? dev 区域中的示例不仅使用 ACLK。
如果这不可行、如何设置 UART 通信、使程序在时钟选择方面能够充分利用资源?
提前感谢!
您好! 感谢您的快速回复!
我看着它,改变了设置,但不起作用...
我不确定是否需要在 UCA0CTLW0寄存器中对 ACLK 的时钟源进行何种设置。
我当前的 uart_init 函数如下所示:
// Configure pins to UART mode
P1SEL0 |= BIT4 | BIT5; // set 2-UART pin as second function
// Configure UART
UCA0CTLW0 |= UCSWRST; // Put eUSCI in reset
UCA0CTLW0 |= UCSSEL__SMCLK;
// Baud Rate calculation (infos in UG table 22-5)
// Settings for baud rate of 1200 using 32768 Khz clock
UCA0BRW = 1;
UCA0MCTLW = 0x2500 | UCOS16 | UCBRF_11;
UCA0CTLW0 &= ~UCSWRST; // Initialize eUSCI
我的时钟设置如下所示:
P2SEL0 |= BIT0 + BIT1; // P2.0: XOUT; P2.1: XI1
CSCTL4 = SELMS__DCOCLKDIV | SELA__XT1CLK; // MCLK=SMCLK=DCO; ACLK=XT1
do
{
CSCTL7 &= ~(XT1OFFG | DCOFFG); // Clear XT1 and DCO fault flag
SFRIFG1 &= ~OFIFG;
}while (SFRIFG1 & OFIFG); // Test oscillator fault flag
时钟源为 ACLK、而 ACLK 使用引脚 P2.0和 P2.1中连接的外部晶体振荡器
我的想法是、当看门狗计时器触发中断时、通过 UART 定期传输字符串。 代码可能处于 LPM3模式。
我使用 此 dev 区域片段 作为基础、并且希望包含 UART 函数。
关于通过 USCI 激活 SMCLK、我不知道此功能是否存在。
3.2.12的指南。