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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

超聲波檢測到有人經過的時候,藍牙發送信息到手機上怎么弄 求教導 謝謝 趕時間

[復制鏈接]
跳轉到指定樓層
樓主
本人用兩個超聲波和一個藍牙模塊hc06和stc89c52rc和一個5v降3.3v的某塊弄了一個東西,就是超聲波檢測到有人經過的時候,藍牙發送信息到手機上,
但是我已經將藍牙和手機連接在了一起,但是卻接收不到數據,為什么呢,本人以前沒有玩過藍牙模塊,沒有怎么設置藍牙  AT指令之類的 該怎么做呢?
或者是我的程序出了問題 幫我看看問題

單片機源程序:
  1. #include<reg52.h>
  2. #define uint unsigned int
  3. #define uchar unsigned char

  4.         sbit trig=P1^1;
  5.         sbit trig2=P1^2;
  6.         sbit echo=P1^3;
  7.         sbit echo2=P1^4;

  8.                 unsigned long s1=0,s2=0;
  9.                 uchar code words[]="guard is here turn it  off";
  10.                 uchar code words2[]="guard is gone keep playing";
  11.                 uchar code words3[]="guard is here";
  12.                 uchar o,p,q;
  13.                 uint time;

  14.         void delay(unsigned char x) //1ms延時函數,100ms以內可用
  15.         {
  16.         unsigned char i;
  17.         while(x--)
  18.         for(i=124;i>0;i--);
  19.         }

  20. void Count1(void)                   //計算距離
  21.         {
  22.                  trig=1;
  23.                  delay(1);
  24.                  trig=0;
  25.           while(!echo);                       //當RX為零時等待
  26.            TR0=1;                               //開啟計數
  27.           while(echo);                           //當RX為1計數并等待
  28.             TR0=0;                                   //關閉計數
  29.             time=TH0*256+TL0;                   //讀取脈寬長度
  30.             TH0=0;
  31.             TL0=0;
  32.             s1=(time*1.7)/100;        //算出來是CM
  33.         }
  34. void Count2(void)                   //計算距離
  35.         {
  36.                   trig2=1;
  37.                   delay(1);
  38.                   trig2=0;
  39.           while(!echo2);                       //當RX為零時等待
  40.            TR0=1;                               //開啟計數
  41.           while(echo2);                           //當RX為1計數并等待
  42.             TR0=0;                                   //關閉計數
  43.             time=TH0*256+TL0;                   //讀取脈寬長度
  44.             TH0=0;
  45.             TL0=0;
  46.             s2=(time*1.7)/100;        //算出來是CM
  47.         }

  48. void Init(void)
  49. {
  50.     TMOD    = 0x31;
  51.     PCON   &= 0x7f;
  52.     SCON    = 0x50;//串行口控制寄存器 SM1=1,SM0=0方式一波特率可變
  53.     TH1     = 0xFD; //設置波特率 9600
  54.     TL1     = 0xFD;
  55.     TR1     = 1;    //啟動定時器1
  56.     TI      = 0;
  57.     RI      = 0;
  58.         TH0= TL0= 0;           
  59.         ET0     = 1;
  60.     ES      = 1;    //開串口中斷
  61.     EA      = 1;   //開定時器中斷

  62. }
  63. void count()
  64. {
  65. while(1)
  66. {
  67.         Count1();
  68.         Count2();
  69.                 if((s1<80)||(s2<80)) //如果有一個超聲波有反應 證明宿舍阿姨進入了檢測區
  70.                 {
  71.                 ES=0;
  72.                 for(o=0;o<26;o++)
  73.                 {
  74.                 SBUF=words[o];
  75.                 while(!TI);
  76.                 TI=0;
  77.                 }
  78.                 ES=1;
  79.                
  80.                         if((s1<80)||(s2<80))//進入了之后兩個超聲波都沒有反應,證明阿姨在反應區內
  81.                     {               
  82.                         ES=0;
  83.                         for(p=0;p<26;p++)
  84.                         {        
  85.                         SBUF=words2[p];
  86.                         while(!TI);
  87.                         TI=0;
  88.                         }
  89.                         ES=1;
  90.                     }
  91.                             else if((s1>150)&&(s2>150))//有一個超聲波反應了,證明阿姨出去了 可以玩手機了
  92.                             {
  93.                             ES=0;
  94.                             for(q=0;q>13;q++)
  95.                             {
  96.                             SBUF=words3[q];
  97.                             while(!TI);
  98.                             TI=0;
  99.                             }
  100.                             ES=1;
  101.                                    }
  102.             }
  103.         }
  104. }
  105. void main()
  106. {
  107. void Init();
  108. while(1)
  109. {
  110. count();
  111. }
  112. }
復制代碼




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

使用道具 舉報

沙發
ID:235164 發表于 2018-1-14 01:34 | 只看該作者
上位機是藍牙串口助手Pro
回復

使用道具 舉報

板凳
ID:258020 發表于 2018-1-14 09:21 | 只看該作者
先不連接藍牙,把串口連接到PC,用PC的串口助手先把程序調試好,再換藍牙模塊與手機測試。如果PC端調通了手機端不通,可以換一個APP再試。以前做項目的時候,記得有的藍牙串口助手有問題。最好用模塊廠商提供的APP,好像是HC-COM。

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

地板
ID:275955 發表于 2018-1-14 21:46 | 只看該作者
上位機是藍牙串口助手Pro
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久草在线在线精品观看 | 国产亚洲精品美女久久久久久久久久 | 在线观看国产精品视频 | 亚洲啊v| 韩国成人在线视频 | 毛片网在线观看 | 欧美精品一区二区在线观看 | 一区二区三区精品 | 日韩精品一区二 | 亚洲一区二区在线 | 日日干夜夜操 | 天天躁日日躁狠狠的躁天龙影院 | 亚洲精品久久 | 99成人| 久久久久久久久久久久亚洲 | 国产精品黄色 | 久久久久久国产精品 | 91亚洲国产成人久久精品网站 | 国产精品成人一区二区三区 | 亚洲国产精品久久久 | 久久三区 | 久久午夜精品福利一区二区 | 色又黄又爽网站www久久 | 毛片免费视频 | 欧美在线观看一区 | 在线免费观看色 | 夜操| 国产精品一区二区久久久久 | 亚洲精品乱码久久久久v最新版 | 国产精品久久久久久久久久久久久久 | 91精品国产91久久久久久 | 一区二区三区视频在线免费观看 | 午夜影院网站 | 一级久久久久久 | 免费一二区 | 国产精品久久久久久久岛一牛影视 | 久久精品国产久精国产 | 视频一区在线观看 | 一区二区免费在线 | 成人性视频免费网站 | 免费精品 |