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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2842|回復: 1
打印 上一主題 下一主題
收起左側

藍牙串口通信遇到問題

[復制鏈接]
跳轉到指定樓層
樓主
ID:98462 發表于 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();
}


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:100842 發表于 2015-12-28 14:00 | 只看該作者
共同參與
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲一区二区三区在线视频 | 欧美日本久久 | 看av在线 | 亚洲欧美综合网 | 天天操夜夜爽 | 国产精品欧美精品日韩精品 | 亚洲福利在线观看 | 久久精品亚洲成在人线av网址 | 天天爽天天干 | 亚洲国产成人av好男人在线观看 | 国产在线观看免费 | 久草视频观看 | 国际精品鲁一鲁一区二区小说 | 日韩视频一区二区 | 成人片在线看 | 美女福利网站 | 一区福利视频 | 男女网站免费 | 91av免费看 | 精品伊人久久 | 国产黄色大片在线免费观看 | 精品91久久 | 99影视| 偷偷操视频 | 视频一区二区中文字幕 | 亚洲午夜视频 | 一区二区三区韩国 | 色婷婷综合久久久中字幕精品久久 | 欧美日韩精品国产 | 中文字幕国产高清 | 亚洲毛片在线观看 | 欧美操操操 | 精品久久精品 | 国产精彩视频 | 精品国产一区二区三区日日嗨 | 免费观看羞羞视频网站 | 人人看人人搞 | 99伊人| 亚洲精品乱码久久久久久按摩观 | av在线免费观看网站 | 精品一区二区在线观看 |