[P]请问F149 4M晶振19200波特率 UMCTL0寄存器的值是多少 我算了 可没成功 用了计算软件也不行[/P][P] [/P][P]void init_cpu(void)
{ char i; char j=10; WDTCTL=WDTPW+WDTHOLD;
// BCSCTL1&=~XT2OFF;//打开高频晶振 BCSCTL1=0x00;//打开高频晶振 do {
j--;
IFG1&=~OFIFG;//高频晶振起振标志
for(i=0xff;i>0;i--);
if(j==0)
WDTCTL=0;//晶体失败 } while(IFG1&OFIFG);//判断是否为0 BCSCTL2=SELM_2+SELS;//MCLK SMCLK=XT2
}[/P][P]void init_uart0(void)
{ P3SEL|=BIT4+BIT5; P3DIR|=BIT4; P3DIR&=~BIT5; ME1|=UTXE0+URXE0;//允许收发 UCTL0|=CHAR; UTCTL0|=SSEL0+SSEL1;//选择SMCLK UBR00=0xd0; UBR10=0X00; UMCTL0=0x40; UCTL0&=~SWRST;//清除逻辑 复位初始化 IE1|=URXIE0;
}
void main(void)
{ init_cpu(); init_uart0(); while(1) {
_BIS_SR(LPM3_bits+GIE);
while(!(IFG1&UTXIFG0));
TXBUF0=RXBUF0; }
}
#pragma vector=UART0RX_VECTOR//接收
__interrupt void uaet0_rw(void)
{ _BIC_SR_IRQ(LPM3_bits);
}
哪错了呢
[/P] |