工具/软件:Code Composer Studio
我一直在为 msp430f249部件使用 UART、我在 TI 网站上试用过该示例、但它仍然无法正常工作、我只是找不到问题所在!
有人可以帮帮我吗?
这是代码
{
#include
#include
int main (空)
{
WDTCTL = WDTPW + WDTHOLD;//停止 WDT
IF (CALBC1_1MHz=0xFF)//如果校准常数被擦除
{
while (1);//请勿加载,陷阱 CPU!!
}
DCOCTL = 0;//选择最低 DCOx 和 MODx 设置
BCSCTL1 = CALBC1_1MHz;//设置 DCO
DCOCTL = CALDCO_1MHz;
P1SEL = BIT1 + BIT2;// P1.1 = RXD、P1.2= TXD
// P1SEL2 = BIT1 + BIT2;// P1.1 = RXD、P1.2=TXD
UCA0CTL1 |= UCSSEL_2;// SMCLK
UCA0BR0 = 104;// 1MHz 9600
UCA0BR1 = 0;// 1MHz 9600
UCA0MCTL = UCBRS0;//调制 UCBRSx = 1
UCA0CTL1 &=~UCSWRST;//**初始化 USCI 状态机**
IE2 |= UCA0RXIE;//启用 USCI_A0 RX 中断
_bis_SR_register (LPM0_bits + GIE);//输入 LPM0、中断被启用
}
//回显 RXed 字符,确认 TX 缓冲区已准备就绪
#if defined (__TI_Compiler_version__)|| Defined (__IAR_systems_ICC__)
#pragma vector=USCIAB0RX_vector
_interrupt void USCI0RX_ISR (void)
#Elif defined (_GNU_)
void __attribute__((中断(USCIAB0RX_vector)) USCI0RX_ISR (void)
其他
错误编译器不受支持!
#endif
{
while (!(IFG2&UCA0TXIFG));// USCI_A0 TX 缓冲器准备就绪?
//int str[5]={0};
//UCA0RXBUF = str[5];
UCA0TXBUF = UCA0RXBUF;// TX -> RXED 字符
}
}
谢谢你