单片机开发,主函数没调用任何程序,串口一直收到00 0 FF之类的数据

本人是单片机小白,记录一些开发过程中的发现和心得。
最近在用MSP430F1232配合射频模块(Ti的CC1101芯片)开发无线收发程序,发现向板子里灌写程序后,串口助手sscom一直收到00 0 FF之类的数据,起初以为是电平转换芯片SP3232工作不正常,用万用表测量输出电压,没发现问题;于是清空主函数,只留下while(1)语句,问题依然没解决。排除硬件问题,只能说明串口没有正常工作,于是尝试调用串口初始化程序如下:
void InitUart(void)
{
volatile unsigned int i;
WDTCTL = WDTPW + WDTHOLD; // close WTD
P3SEL |= 0x30; // P3.4,5 = USART0 TXD/RXD
BCSCTL1 |= XTS; // ACLK = LFXT1 = HF XTAL
do
{
IFG1 &= ~OFIFG; // Clear OSCFault flag
for (i = 0xFF; i > 0; i--); // Time for flag to set
}

while ((IFG1 & OFIFG) != 0); // OSCFault flag still set?
BCSCTL2 |= SELM_3; // MCLK = LFXT1 (safe)
ME2 |= UTXE0 + URXE0; // Enabled USART0 TXD/RXD
UCTL0 |= CHAR; // 8-bit character
UTCTL0 |= SSEL0; // UCLK = ACLK
UBR00 = 0x74; // 3.58Mhz/9600 - 372
UBR10 = 0x01; //
UMCTL0 = 0x00; // no modulation
UCTL0 &= ~SWRST; // Initalize USART state machine
IE2 |= URXIE0; // Enabled USART0 RX interrupt
__bis_SR_register(LPM0_bits + GIE); // Enter LPM0 w/ interrupt
}
然后发现串口助手停止收到奇奇怪怪的数据。
【单片机开发,主函数没调用任何程序,串口一直收到00 0 FF之类的数据】问题终于解决,但是真相没有大白,为什么上电以后,芯片会自己向串口发送数据呢?以后打算有时间再好好研究。

    推荐阅读