MSP430串口接收程序(使用中断)

使用接收中断,将接收到的字符再发送出去。每次接收到字符之后都会退出低功耗模式,从而在主函数中将接收到的字符再发送出去。
/**********************************************  
*程序描述:单片机的P3.4、P3.5作为串口接收字符,将接受到的字符再发送出去 
*作者    :Zhenhua Liu  
*时间    :2017.11.02  18:00  
***********************************************/
#include  <msp430x14x.h>
void usartInit(void);                       //串口初始化
void main(void)
{
  WDTCTL = WDTPW + WDTHOLD;                 // Stop WDT
  usartInit();
  while(1){
  _BIS_SR(LPM3_bits + GIE);                 // Enter LPM3 w/ interrupt
  while((UTCTL0&TXEPT)==0);//等待数据发送完毕   
   TXBUF0 = RXBUF0;                          // RXBUF0 to TXBUF0
  }
}

#pragma vector=UART0RX_VECTOR
__interrupt void usart0_rx (void)
{
   LPM3_EXIT;
}
/****************************************************************************  
*函数名: uartInit()                                                          /  
*作用  :USART0的初始化配置,使用P3.4和P3.5,使用接收中断                      /  
*返回值:无                                                                  /  
*参数  :无                                                                  /  
*作者  :Zhenhua Liu                                                         /   
*时间  :2017.11.02                                                          /   
*****************************************************************************/  
void usartInit(){
  P3SEL |= 0x30;                            // P3.4,5 = USART0 TXD/RXD
  ME1 |= UTXE0 + URXE0;                     // Enable USART0 TXD/RXD
  UCTL0 |= CHAR;                            // 8-bit character
  UTCTL0 |= SSEL0;                          // UCLK = ACLK
  UBR00 = 0x03;                             // 32k/9600 - 3.41
  UBR10 = 0x00;                             //
  UMCTL0 = 0x4A;                            // Modulation
  UCTL0 &= ~SWRST;                          // Initialize USART state machine
  IE1 |= URXIE0;                            // Enable USART0 RX interrupt

}

  • 1
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

nwsuaf_huasir

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值