以下是我的串口程序,严格按照大可书书上遍的!
使用串口调试助手,什么也收不到!!,我用的是MAX3232,供电电压为3V
而且程序到while((UTCTL0&0x01)==0);就不动了
请各位大虾帮忙看以下:
//发送程序
#include <msp430x13x.h>
#define uint unsigned int
#define uchar unsigned char
void InitComm(void);
void delay(long v);
char Data[6]={0x00,0x01,0x02,0x03,0x04,0x00};
void main(void)
{
uchar i;
WDTCTL=WDTPW+WDTHOLD; //终止看门构
DCOCTL=0x73;
InitComm();
while(1)
{
TXBUF0=0Xff;
while((UTCTL0&0x01)==0);
for(i=0;i<=6;i++)
{
TXBUF0=Data;
while((UTCTL0&0x01)==0);
}
}
}
void InitComm(void)
{
UCTL0&=~SWRST; //SWRST复位,USART允许
UCTL0=CHAR; //无校验,1位停止位,8位数据位,异步
UBR00=0xA0;
UBR10=0x01; //32KHz时,波特率为9600
UMCTL0=0x4A; //位调整
UTCTL0=SSEL0; //Select the ACLK 32kHz
ME1|=0x20;//UTXE1 ; //UART发送模块允许
P3SEL|=BIT4; //P3.4为发送
P3DIR|=BIT4;
}
|