您的位置 首页 资料

msp430的一些常用的C言语控制程序—RS232

//需要调试助手辅助才能观察到收或接的数据#includemsp430x14x.h>//voidOSC_Init(void);voidUSATR0_Init(void);//voidmain()

//需求调试帮手辅佐才干观察到收或接的数据

#include<msp430x14x.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;//将接纳过来的数据在发出去
}

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

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

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

微信扫一扫关注我们

返回顶部