大家好,团队
以下是客户提出的一些问题可能需要您的帮助:
#include <MSP4C.h>
/**
*主要
*
Int main (无效)
{
WDTCTL = WDTPW + WDTHOLD;//停止 WDT
FLL_CTL0 |= XCAP18PF;//配置负载上限
P2SEL |= 0x30;// P2.4,5 = USART0 TXD/RXD
ME1 |= UTXE0 + URXE0;//启用 USART0 TXD/RXD
UCTL0 |=字符;// 8位字符
// UTCTL0 |= SSEL1;// UCLK = SMCLK
// UBR00 = 0x6D;// 1MHz 9600
// UBR10 = 0x00;// 1MHz 9600
// UMMCTL0 = 0x03;//调制
UTCTL0 |= SSEL0;
UBR00 = 0x03;
UBR10 = 0x00;
UMMCTL0 = 0x4A;
UCTL0和=~SWRST;//初始化 USART 状态机
IE1 |= URXIE0;//启用 USART0 RX 中断
P2DIR |= 0x10;// P2.4输出方向
同时(!(IFG1和 UTXIFG0));
TXBUF0 ='H';
同时(!(IFG1和 UTXIFG0));
TXBU0 ='E';
同时(!(IFG1和 UTXIFG0));
TXBU0 ='L';
同时(!(IFG1和 UTXIFG0));
TXBU0 ='L';
同时(!(IFG1和 UTXIFG0));
TXBUF0 ='O';
__bis_SR_register (LPM0_bits + GIE);//输入带 interrup 的 LPM0
//while (1);
}
#IF 定义(__TI_Compiler_version__)||定义(__IAR_SYSTEMS _ICC__)
#pragma vector=USART0RX_vector
__interrupt void usart0_Rx (void)
#Elif Defined (__GNUC _)
void __attribute__(中断(USART0RX_Vector)) usart0_Rx (void)
#else
错误编译器不受支持!
#endif
{
何时(!(IFG1 & UTXIFG0);// USART0 TX 缓冲器准备就绪?
TXBUF0 = RXBUF0;// RXBUF0至 TXBU0
}
问题:将程序下载到 MSP430F437的单片机之后,PC 的串行端口工具首先收到“hello”,然后连续收到“LOL0...” ."
请帮您检查此案例? 谢谢。
此致,
樱桃