標題: MSP430F5529中斷控制程序源代碼 [打印本頁]

作者: 799105366    時間: 2018-3-20 20:18
標題: MSP430F5529中斷控制程序源代碼
#include <msp430f5529.h>
void main(void)
{
  WDTCTL = WDTPW + WDTHOLD;                       // 關(guān)閉看門規(guī)
  P4SEL = BIT4+BIT5;                              // P3.3和P3.4選擇UART通信功能
  UCA1CTL1 |= UCSWRST;                            // 復(fù)位寄存器設(shè)置
  UCA1CTL1 |= UCSSEL_2; // 波特率發(fā)生器參考時鐘設(shè)置為SMCLK,SMCLK=1048576Hz
  UCA1BR0 = 6;                                      // 波特率設(shè)置為9600bps
  UCA1BR1 = 0;
  UCA1MCTL = UCBRS_0 + UCBRF_13 + UCOS16;  // 調(diào)制器設(shè)置,選擇過采樣模式
  UCA1CTL1 &= ~UCSWRST;                           // 完成USCI_A0初始化配置
  UCA1IE |= UCRXIE;                                // 使能USCI_A0接收中斷
  __bis_SR_register(LPM0_bits + GIE);          // 進入LPM0,并使能全局中斷
}
// USCI_A1中斷服務(wù)程序
#pragma vector=USCI_A1_VECTOR
__interrupt void USCI_A1_ISR(void)
{
  switch(__even_in_range(UCA1IV,4))
  {
  case 0:break;                                            // 中斷向量0—無中斷
  case 2:                                           // 中斷向量2—接收中斷
    while (!(UCA1IFG&UCTXIFG));// USCI_A0 是否發(fā)送完成
    UCA1TXBUF = UCA1RXBUF;                       // 將接收緩沖寄存器的字符傳送給發(fā)送緩沖寄存器,發(fā)送給PC,在串口調(diào)試助手中回顯。
    UCA1TXBUF =(char)((float)UCA1RXBUF+1);

    break;
  case 4:break;                                         // 中斷向量4—發(fā)送中斷
  default: break;
  }
}







歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1