微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > MSP430F149 单片机利用串口向PC发送数据

MSP430F149 单片机利用串口向PC发送数据

时间:11-13 来源:互联网 点击:
#include msp430x14x.h>

void Init(void);//声明初始化函数
char Data[]="a:bcd\n"; //发送的字符串,字符串末尾通常都会有一个默认的\0结束符
void main(void)
{
unsigned int i,k;
WDTCTL = WDTPW + WDTHOLD;
Init(); //调用初始化函数
while(1) //无限次循环
{
for(i=0;i<6;i++)
{
TXBUF0=Data[i]; //向缓冲器送入待发送数据
while((UTCTL0&0x01)==0); //发送缓冲器有待发数据时,UTCTL0的第0位复位,进入等待
for(k=0;k<1000;k++);//这一句非常重要,否则会有乱码,原因是发生数据覆盖。

//延迟就是为了防止发生数据覆盖。
}
}
}
void Init(void)
{
UCTL0 &= ~SWRST; //USART控制寄存器UCTL0,SWRST=0x01,~SWRST=0xFE,将
//UCTL0寄存器的第0位复位后,USART才能重新被允许
UCTL0 =0X10; //UCTL0的第4位置1,设置数据长度为8位,第5位为0,设置1位停止位
UBR00 = 0x03; //使用32768Hz晶体,波特率为9600
UBR10 = 0x00;
UMCTL0 = 0x4A;
UTCTL0 = 0X10; //发送控制寄存器,第4位置1,选择辅助时钟ACLK1
ME1 |= UTXE0 ; //设置模块允许寄存器ME1,UTXE0=0x80,设置ME1的第7位为1,
//使USART模式发送允许
P3SEL|=BIT4; //P3口选择寄存器的第4位置1,选择外围模块
P3DIR|=BIT4; //P3口方向寄存器的第4位置1,选择输出
}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top