久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 藍牙串口通信遇到問題 [打印本頁]

作者: sassssx    時間: 2015-12-27 18:25
標題: 藍牙串口通信遇到問題
寫上程序之后  4.4 接hc05藍牙模塊的 發送端  7.3   6.7接led  沒有反應

#include "msp430f5529.h"
unsigned char RXD_data;
void UART_Init()
{
   P4SEL |= BIT5+BIT4;
   P4DIR |= BIT4;          //輸入


   UCA1CTL1 |= UCSWRST;
   UCA1CTL1 |= UCSSEL_1;    //時鐘源是ACLK,32768,生成9600
   UCA1BR0 = 3;
   UCA1BR1 = 0;
   UCA1MCTL |= UCBRS_3 + UCBRF_0;
   UCA1CTL1 &= ~UCSWRST;

   UCA1IE |= UCRXIE ;  // 數據接收中斷
}

/**************************************
void Clock_Init() //配置時鐘       網上找的列程
{
     P5SEL |= BIT2+BIT3+BIT4+BIT5;                       // Port select XT1
     UCSCTL6 &= ~(XT1OFF);                               // XT1 On
     UCSCTL6 &= ~(XT2OFF);                               // XT2 On
     UCSCTL6 |= XCAP_3;                                   // Internal load cap
     do
     {
       UCSCTL7 &= ~(XT2OFFG + XT1LFOFFG + DCOFFG);
                                                 // Clear XT2,XT1,DCO fault flags
       SFRIFG1 &= ~OFIFG;                         // Clear fault flags
     }while (SFRIFG1&OFIFG);                      // Test oscillator fault flag

     UCSCTL3 = SELREF_0+FLLREFDIV_0;                       // Set DCO FLL reference = XT2

     __bis_SR_register(SCG0);                      // Disable the FLL control loop
     UCSCTL1 = DCORSEL_7;                          // Select DCO range 16MHz operation
     UCSCTL0 = 0x0000;                             // Set lowest possible DCOx, MODx
     UCSCTL2 |= FLLD_0+488;                           // Set DCO Multiplier for 8MHz
                                                  // (15 + 1) * FLLRef = F_dcoclkdiv
                                                  //  F_dcoclkdiv=F_dco
                                                  // (488+ 1) * 32768= 16MHz
     __bic_SR_register(SCG0);                       // Enable the FLL control loop

     __delay_cycles(250000);

     UCSCTL4 |=SELA_0+SELS_5;                  //ACLK = 32768HZ,SMCLK= 1MHZ,MCLK= 16MHZ
     UCSCTL5 |=DIVS_2;                         //4分頻
}
**************************************/
void main()  // 主函數
{
  WDTCTL |= WDTPW + WDTHOLD;
// Clock_Init();
  UART_Init();
  _EINT();


      P6DIR |= BIT6;   //定義針腳  輸出
      P6DIR |= BIT7;    //輸出

      P7DIR|=BIT2;   //輸出
      P7DIR|=BIT3;   //輸出


  while(1)
  {
    switch(RXD_data)
    {
    case '1':
                           P7OUT|=BIT3;                    // 1
                               P6OUT|=BIT7;                   // 1
                               P6OUT&=~BIT6;                 // 0
                               P7OUT&=~BIT2;                //0

      break;
    case '2':
                            P6OUT&=~BIT7;         //0
                                    P6OUT|=BIT6;         //1
                                    P7OUT&=~BIT3;       //0
                                    P7OUT|=BIT2;       //1

      break;
    case '3':
                            P7OUT|=BIT3;                  // 1
                                    P6OUT&=~BIT7;                // 0
                                    P6OUT&=~BIT6;               // 0
                                    P7OUT&=~BIT2;              //0
      break;
    case '4':
                            P7OUT&=~BIT3;                   //0
                                    P6OUT|=BIT7;                   // 1
                                    P6OUT&=~BIT6;                 // 0
                                    P7OUT&=~BIT2;                //0
      break;
    case '5':
                          P6OUT&=~BIT7;                       //0
                                  P6OUT&=~BIT6;                      //0
                                  P7OUT&=~BIT2;                     //0
                                  P7OUT&=~BIT3;                    //0

      break;
    default:
      break;
    }
  }
}

#pragma vector=USCI_A1_VECTOR

__interrupt void USCI_A0_ISR(void)   //  接收中斷
{
    _DINT();        //先關上中斷,接收正確的數據
    switch(__even_in_range(UCA0IV,4))
    {
    case 0:break;
    case 2:
      while(!(UCA0IFG&UCRXIFG));
      RXD_data = UCA0RXBUF;    //將接收緩存器的字符產送給發送緩存器
       while(!(UCA0IFG&UCRXIFG));
      break;
    case 4:break;
    default: break;
    }
    _EINT();
}



作者: lulutian    時間: 2015-12-28 14:00
共同參與




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 欧美精品区 | 久久国产精品一区二区三区 | 麻豆一区 | 国产精品久久777777 | 一区二区三区精品视频 | 久久久av一区 | 免费观看日韩精品 | 欧美成人在线网站 | 日韩在线免费观看视频 | 成人二区| 国产美女视频 | 国产日韩久久 | 亚洲444kkkk在线观看最新 | 久久国内 | 欧美黑人狂野猛交老妇 | 久草在线视频中文 | 精品欧美一区二区三区免费观看 | 精品91久久 | 99国产欧美| 欧美www在线 | 国产精品久久久久久婷婷天堂 | 国产黄色在线 | 亚洲精品在线观看视频 | 国产日韩欧美精品一区二区三区 | 国产精品日日夜夜 | 亚洲网站在线 | 九色91视频 | 中日韩欧美一级片 | 成人国产精品视频 | 久久久久久国产精品 | 欧美日韩亚洲视频 | 欧美黄色绿像 | 国产成人免费 | 一级视频在线免费观看 | 成人在线一区二区 | 欧美黄色网络 | 午夜影院普通用户体验区 | 日韩小视频在线 | 成人国产精品视频 | 成人小视频在线观看 | 日韩精品视频在线观看一区二区三区 |