找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 8074|回復(fù): 6
收起左側(cè)

HC-06藍(lán)牙擴(kuò)展模塊的安卓APP與單片機(jī)源碼

  [復(fù)制鏈接]
ID:245986 發(fā)表于 2017-11-4 15:31 | 顯示全部樓層 |閱讀模式
超聲波測(cè)距模塊,藍(lán)牙模塊源碼
2015-04-17 174955.jpg 2015-04-17 174931.jpg

HC-06藍(lán)牙規(guī)格文檔:
0.png

0.png

單片機(jī)源程序:
  1. /*********************************************************************************
  2. * 【作    者】: 清翔電子:03
  3. * 【版    本】: 1.0
  4. * 【實(shí)驗(yàn)平臺(tái)】: QX-MINI51 單片機(jī)開發(fā)板
  5. * 【外部晶振】: 11.0592mhz        
  6. * 【主控芯片】: STC89C52
  7. * 【編譯環(huán)境】: Keil μVisio3        
  8. * 【程序功能】: 藍(lán)牙數(shù)碼管顯示加LED指示燈                                                                                          
  9. * 【使用說明】:

  10. STC89c52與HC-06藍(lán)牙連線:
  11.         RXD    TXD
  12.         TXD    RXD
  13.         藍(lán)牙連接方式請(qǐng)參照本文件下的圖片
  14. 手機(jī)采用藍(lán)牙串口通信助手
  15. 最后已改用Android自編藍(lán)牙通信軟件
  16. 藍(lán)牙模塊安裝方法請(qǐng)參照本文件夾下的圖片01

  17. **********************************************************************************/

  18. #include <reg52.h>
  19. #include <intrins.h>
  20. #define uchar unsigned char
  21. #define uint unsigned int
  22. uchar tmp;
  23. uint c=0;
  24. sbit led1=P1^0;                    //指示燈0
  25. sbit led2=P1^1;                        //指示燈1
  26. sbit led3=P1^2;                        //指示燈3
  27. sbit led7=P1^7;                        //指示燈3

  28. sbit P2_0 = P2^0;
  29. sbit P2_1 = P2^1;
  30. sbit P2_2 = P2^2;
  31. sbit P2_3 = P2^3;

  32. uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,
  33.                         0xf8,0x80,0x90};

  34. void delay1(uint z)//1ms
  35. {
  36.         uint x,y;
  37.         for(x=z;x>0;x--)
  38.                 for(y=120;y>0;y--);        
  39. }
  40. void display(uchar value)
  41. {
  42.     uchar shu1,value1;
  43.         value1=value-48;
  44.         //bai=value1/16;
  45.         shu1=value1%16;


  46.    P0=table[shu1];
  47.    P2_0 = 0;
  48.    delay1(1);
  49.    P2_0 = 1;
  50. }        
  51.          
  52. void init();   //串口初始化
  53. void send(unsigned char a);        //單字節(jié)發(fā)送函數(shù)
  54. void ctrl(); //接收處理函數(shù)

  55. void main()
  56. {
  57.                 init();
  58.           while(1)
  59.           {         
  60.                   display(SBUF);
  61.                                   if(RI==1)                     // 是否有數(shù)據(jù)到來
  62.                   {
  63.                    RI = 0;
  64.                                   ctrl();
  65.                                   }      
  66.           }
  67. }

  68. void init()        //串口初始化
  69. {
  70.                    ES=0;                                                                  //關(guān)中斷
  71.                   SCON = 0x50;                        // REN=1允許串行接受狀態(tài),串口工作模式1,
  72.                                                                                           //10位UART(1位起始位,8位數(shù)據(jù)位,1位停止位,無奇偶校驗(yàn)),波特率可變

  73.                   TMOD = 0x20;                        // 定時(shí)器1工作于方式2,8位自動(dòng)重載模式, 用于產(chǎn)生波特率
  74.           TH1=TL1=0xFD;                       // 波特率9600 (本次測(cè)試采用晶振為11.0592)
  75.          
  76.           PCON &= 0x7f;                       // 波特率不倍增
  77.           TR1 = 1;                                                          //定時(shí)器1開始工作,產(chǎn)生波特率
  78.                                                                                           //發(fā)送標(biāo)志位置0
  79.                   TI=0;                                                                  //接收標(biāo)志位置0
  80.                   RI=0;
  81.                   
  82.                   //EA=0;
  83.               ES=1;
  84. }
  85.    
  86. void send(unsigned char a)        //單字節(jié)數(shù)據(jù)發(fā)送
  87. {                                                        //注意:若單片機(jī)TXD(P3.1)無上拉能力,必須在P3.1端接上拉電阻。本次測(cè)試需要接上拉電阻
  88.         TI=0;        
  89.         SBUF=a;
  90.         while(TI==0);
  91.         TI=0;

  92.         if(c%2)                                        //發(fā)送指示燈標(biāo)志,每接收一次,此燈亮滅交替
  93.          led7=1;
  94.         else
  95.          led7=0;
  96.         c++;
  97. }

  98. void ctrl()                            //接收處理函數(shù)
  99. {
  100.                                     switch(tmp)
  101.                                   {
  102.                                           case '1':
  103.                                                 led1=1;                                   //收到字符1,指示燈0滅
  104.                                                 send(tmp);
  105.                                                 break;                                       
  106.                                         case '2':                                         //收到字符2,指示燈1滅
  107.                                                  led2=1;
  108.                                                  send(tmp);
  109.                                                  break;
  110.                                         case '3':                                    //收到字符3,指示燈0、1亮
  111.                                                  led1=0;
  112.                                                  led2=0;
  113. ……………………

  114. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
藍(lán)牙超聲波模塊源碼.rar (1.61 MB, 下載次數(shù): 120)



回復(fù)

使用道具 舉報(bào)

ID:246089 發(fā)表于 2017-11-4 21:15 | 顯示全部樓層
能不能給個(gè)傳輸程序
回復(fù)

使用道具 舉報(bào)

ID:246094 發(fā)表于 2017-11-4 21:25 | 顯示全部樓層
幫幫 能不能給個(gè)傳輸程序
回復(fù)

使用道具 舉報(bào)

ID:250176 發(fā)表于 2018-4-13 23:16 | 顯示全部樓層
樓主有沒有STM32驅(qū)動(dòng)HC-06的代碼,我的板子是F103C8T6
回復(fù)

使用道具 舉報(bào)

ID:367125 發(fā)表于 2018-7-8 05:35 | 顯示全部樓層
學(xué)習(xí)了,剛接觸這一塊
回復(fù)

使用道具 舉報(bào)

ID:37956 發(fā)表于 2020-2-20 21:37 | 顯示全部樓層
還可以下載嗎
回復(fù)

使用道具 舉報(bào)

ID:1087282 發(fā)表于 2023-7-5 09:13 | 顯示全部樓層
有沒有硬件鏈接吖?視頻說明什么的?
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表