您的位置 首页 元件

MSP430F149的USART0的UART方法

MSP430F149的USART0的UART方式(UCTL0中的SYNC位清0)用于串口通信,以下是一段初始化过程:P3SEL

MSP430F149USART0UART方法(UCTL0中的SYNC位清0)用于串口通讯,以下是一段初始化进程:

P3SEL |= 0x30;
P3DIR |= BIT4;
ME1 |= UTXE0 + URXE0; //答应USART0承受和发送
UCTL0 |= CHAR;
U0TCTL|=SSEL1;
UBR00 = 0x68;//波特率9600
UBR10 = 0x00;
UMCTL0 = 0x40;
UCTL0 &= ~SWRST;
IE1|=URXIE0;
__enable_interrupt();

首先是设置引脚的方向,RX为输入,TX为输出,所以TX的DIR位应设为1。ME1是功能模块,即答应UART的接纳和发送,CHAR置1是设置数据为8位,SSELx挑选UART的时钟源,波特率的设置可以用MSP430波特率计算器来算。IE1中的UTXIE0和URXIE0分别用来使能接纳和发送中止,中止标志分别为UTXIFG0和URXIFG0,UTXIFG0置1表明等候新的数据写入发送寄存器,即上一次发送已完结,而URXIFG0置1表明已接纳到数据并装入接纳缓存寄存器中

void main()
{
Init();
while(1)
{
for(num=0;num<5;num++)
{//发数组
TXBUF0=T[num];//数据被写入发送缓冲寄存器,发送中止标志清0
while ((IFG1 & UTXIFG0)!=0x80);//等候中止标志置1,即等候接纳完结
}
num=0;
while(1);
}
}

#pragma vector=USART0RX_VECTOR
__interrupt void UART0RX (void)
{
R[num]=RXBUF0;//当读接纳寄缓冲存器时,接纳中止标志清0
num++;
if(num==5) num=0;
}

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/xinpin/yuanjian/258738.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部