欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

單片機串口怎樣與藍牙實現通訊

查看數: 5416 | 評論數: 9 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2018-4-22 17:23

正文摘要:

煩啊,搞了一下午,就是沒弄到想要的效果_(:з」∠)_。求大神指點~

回復

ID:341994 發表于 2018-5-31 10:31
仔細看看手冊
ID:273802 發表于 2018-5-31 02:00
個人感覺在終端程序中,接收部分是不是應該加while(!RI)
ID:341000 發表于 2018-5-30 22:34
308 發表于 2018-4-23 11:12
問題0010:藍牙串口模塊使用的正確步驟 很多人現在都開始使用藍口模塊,利用手機藍牙或者PC藍牙進行控制單 ...

你好!我最后一步出了問題,沒有連接藍牙模塊時,單片機和pc能正常通信,接上藍牙模塊后,手機發送命令單片機沒反應。是不是藍牙模塊與單片機連接有問題?感覺手機發送的數據沒有被單片機接收啊,
藍牙模塊與pc能正常通信。
ID:291351 發表于 2018-4-23 11:12
問題0010:藍牙串口模塊使用的正確步驟 很多人現在都開始使用藍口模塊,利用手機藍牙或者PC藍牙進行控制單片機系統。但是很多人一上來就直接把藍牙模塊和單片機相連接,然后編寫程序,效果實現不了,就不知該如何了。藍牙模塊很多都是結合了串口通信的,通常拿到模塊,需要經過一下步驟(自己總結,可做參考):  (1)首先,需要藍牙模塊和PC的硬件連接,這里有兩種方法: <a>把你的開發板的單片機取下來,然后從開發板引出電源線VCC和GND,還有P30、P31接口,連接藍牙模塊的四個端口(注意RXD和TXD不要反接了)  <b>如果你有USB-TTL模塊,可以直接連接藍牙模塊,無需單片機開發板轉接過去。  (2)通過PC的串口軟件(比如STC-ISP軟件自帶的串口),設置好軟件的波特率和通信數據格式,通過串口軟件發送AT命令(通常購買時賣家提供了),看是否有返回數據,如果沒有返回,有可能是P30、P31接口需要換過來,如果發送命令,有返回信息且不是亂碼,表示藍牙模塊和PC可以串口通信了。  (3)手機下載軟件“藍牙串口”,通過此軟件連接藍牙模塊(藍牙的名稱和配對密碼可通過 AT命令設置),然后給藍牙模塊供電,PC打開串口軟件,手機發送任意字符到藍牙模塊,會發現PC串口軟件接收到了信息,這表示藍牙可以正常工作。  (4)編寫單片機程序,此時需要分為兩步: <a>先不連接藍牙模塊,編寫程序,單片機接收到串口數據,做出相應動作,寫好后下載,然后打開PC的串口軟件,發送命令,檢驗現象是否正確,如果正確,開始第二步 <b>把藍牙模塊連接到單片機,手機藍牙連接模塊,手機發送命令,此時只要步驟<a>現象經過反復驗證沒有問題,第二步肯定沒問題。(如果第二步不對,那就返回去做第一步)  (5)其他。如果需要用PC的藍牙進行控制,還需要購買藍牙適配器,也就是模塊發送信息到電腦時,需要一個接收器。如果不是很必要,就用手機藍牙軟件就好了,省錢省事
ID:314264 發表于 2018-4-23 10:47
好好看看手冊。
ID:99548 發表于 2018-4-22 23:08
這個鏈接我嘗試過,沒有問題。再有建議終端程序中增加關閉終端語句,在中斷結束后再開啟
ID:99548 發表于 2018-4-22 23:07
個人感覺在終端程序中,接收部分是不是應該加while(!RI)
ID:46065 發表于 2018-4-22 20:20
藍牙發送數據有兩種數據形式,16進制發送或字符發送,而字符發送需要在SBUF后面減去48!
ID:311366 發表于 2018-4-22 17:25
這是代碼,哪錯了?#include<reg52.h>#define uchar unsigned char#define uint unsigned intsbit ji=P2^1;uint flag;uchar rx;void delay(uint z){uint x,y;for(x=100;x>0;x--)for(y=z;y>0;y--);}void init(){SCON=0x50;TMOD=0x20;PCON=0x00;TH1=0xfd;TL1=0xfd;EA=1;ES=1;//REN=1;TR1=1;}void main(){init();while(1)        {                if(flag==0)                {                ji=1;}        delay(1000);                if(flag==1)                {                ji=0;                delay(1000);                }        }}void exter0() interrupt 1{RI=0;rx=SBUF;switch(rx)        {        case'a':flag=0;        break;        case'b':flag=1;        break;        default:        break;        }}

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表