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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

51單片機藍牙通信源碼

  [復制鏈接]
跳轉到指定樓層
樓主
51單片機藍牙通信源碼


單片機源程序如下:
  1. /*********************************************************************************
  2. * 【作    者】: 清翔電子:03
  3. * 【實驗平臺】: QX-MINI51 單片機開發板
  4. * 【外部晶振】: 11.0592mhz       
  5. * 【主控芯片】: STC89C52
  6. * 【編譯環境】: Keil μVisio3       
  7. * 【程序功能】: 藍牙數碼管顯示加LED指示燈                                                                                           
  8. * 【使用說明】:

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

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

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

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

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


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

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

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

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

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

  97. void ctrl()                            //接收處理函數
  98. {
  99.                                     switch(tmp)
  100.                                   {
  101.                                           case '1':
  102.                                                 led1=1;                                   //收到字符1,指示燈0滅
  103.                                                 send(tmp);
  104.                                                 break;                                       
  105.                                         case '2':                                         //收到字符2,指示燈1滅
  106.                                                  led2=1;
  107.                                                  send(tmp);
  108.                                                  break;
  109.                                         case '3':                                    //收到字符3,指示燈0、1亮
  110.                                                  led1=0;
  111.                                                  led2=0;
  112.                                                  send(tmp);
  113.                                                  break;
  114.                                         case '4':                                        //收到字符4,指示燈0、1滅
  115.                                                   led1=1;
  116.                                                   led2=1;
  117.                                                   send(tmp);
  118.                                                   break;
  119.                                         case '5':                                        //收到字符5,指示燈3亮
  120.                                                 led3=0;
  121.                                                 send(tmp);
  122.                                                 break;
  123.                                         default:                   //其他,燈全滅
  124.                                                   led1=1;
  125.                                                   led2=1;
  126.                                                   led3=1;
  127.                                                   send(tmp);
  128.                                   }
  129. }
復制代碼

所有資料51hei提供下載:

藍牙無線通信.rar (2.64 MB, 下載次數: 193)


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發
ID:581696 發表于 2019-7-15 11:07 | 只看該作者
請問一下,你這個手機藍牙app是怎么做出來的?
回復

使用道具 舉報

板凳
ID:625127 發表于 2019-10-19 14:18 | 只看該作者
想知道,是不是省略了把SBUF的值賦給tem呀
回復

使用道具 舉報

地板
ID:772623 發表于 2020-6-13 22:54 | 只看該作者
感謝樓主分享
回復

使用道具 舉報

5#
ID:772623 發表于 2020-6-15 10:19 | 只看該作者
感謝樓主分享
回復

使用道具 舉報

6#
ID:817787 發表于 2020-10-7 10:41 | 只看該作者
為啥我都就只有指示燈亮
回復

使用道具 舉報

7#
ID:1003871 發表于 2022-2-12 22:28 | 只看該作者
這個app哪里來的啊
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 成人性视频免费网站 | 久久久精品网站 | 国产精品久久久99 | 国产成人小视频 | 国产精品自拍视频 | 久久精品二区 | 天天干天天爱天天爽 | 中文字幕av在线 | 日韩精品成人一区二区三区视频 | 超碰在线亚洲 | 亚洲高清视频一区二区 | 成人小视频在线免费观看 | 成人亚洲片| 日韩精品一区二区三区中文在线 | 国产免费国产 | 国产极品车模吞精高潮呻吟 | 国产精品久久久久久久久久妇女 | 青青草免费在线视频 | 三级成人在线观看 | 欧洲亚洲一区二区三区 | 麻豆一区二区三区精品视频 | 偷拍亚洲色图 | 国产精品区二区三区日本 | 欧美综合网 | 国产高清一二三区 | 久久久久久久久久久久久九 | 日韩精品久久久 | 久久精品色欧美aⅴ一区二区 | 久久精品国产亚洲 | 精品一区二区三 | 男女羞羞视频在线观看 | 亚洲国产成人精品久久久国产成人一区 | 蜜桃官网 | 久久小视频 | 久久久久一区 | 91精品国产综合久久久动漫日韩 | av大全在线观看 | 成人免费看电影 | 欧美视频二区 | 欧美日韩中文在线 | 亚洲精品小视频在线观看 |