msp430的一些常用的C语言控制程序---RS232
#includemsp430x14x.h>
//
void OSC_Init(void);
void USATR0_Init(void);
//
void main(){
WDTCTL = WDTPW + WDTHOLD;
OSC_Init();
USATR0_Init();
_BIS_SR(GIE);//用调试助手可以检测,也可以结合按键观察到数据的传输
}
//
void OSC_Init(void){
BSCTL1 &= ~XT2OFF;//XT2振荡器开启
do //清OSCFault标志
{
IFG1 &= ~OFIFG;
for (i=0xFF;i>0;i--);
} while((IFG1&OFIFG));
BSCTL2 |= (SELM_1 + SELS);//MCLK = XT2CLK,SMCLK = XT2CLK
}
//
void USATR0_Init(void){
P3SEL |= (BIT4 + BIT5);//选择端口的第二功能
ME1 |= (UTXE0 + URXE0);//工作模式1,UART0 使能
UCTL0 |= CHAR ;//发送字长,八位
UTCTL0 |= (SSEL0 + SSEL1);//选择时钟源,用于确定波特率发生器的时钟源,选择辅助时钟ACLK,子系统时钟SMCLK
UBR00 = 0x9F;//波特率选择寄存器低位
UBR10 = 0x01;//波特率选择寄存器高位
UMCTL0 = 0xB5;//波特率调整寄存器
UCTL0 &= ~SWRST;//USATR状态机初始化复位
IE1 |= URXIE0;//允许USATR中断
}
#pragma vector=UART0RX_VECTOR
__interrupt void uart0_rx(void){
while(!(IFG1 & UTXIFG0));//等待,看看接收寄存器里面是不是有数据
TXBUF0 = RXBUF0;//将接收过来的数据在发出去
}
msp430C语言控制RS23 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)