设置 无校验 8位数据位 一位停止位 波特率9600
源代码 如下:
void UART_Init(void)
{P3SEL |= BIT2+BIT3+BIT4; //端口设置 P3.3/4/5
UCTL0 &= ~SWRST; // 初始化UART0状态机
U0CTL |= CHAR; //无校验 1位停止位 8位数据 无反馈 UART异步模式
U0TCTL|= SSEL0; //波特率时钟 ACLK
U0BR0 = 0x03; //波特率 9600
U0BR1 = 0x00;
U0MCTL = 0x4A;
ME1 |= URXE0 + UTXE0; //接收发送允许
IE1 |= UTXIE0+URXIE0; //使能发送中断
IFG1 = 0;
_EINT();
}
void Putchar(unsigned char *pchar)
{
unsigned char *p ;
p = pchar;
while(*p!='\0')
{
TXBUF_0 = *p;
Delay(50); //不延时 丢包严重 开始在发数据之后没有延时丢包,加延时后发