1. 下載相關(guān)軟件。如串口助手和藍(lán)牙助手
Screenshot_20210515_173926.jpg (11.53 KB, 下載次數(shù): 43)
下載附件
2021-5-15 22:11 上傳
2. 串口助手上有相應(yīng)的操作,隨便點(diǎn)點(diǎn)就行 3. 一些AT指令。
2.PNG (123.96 KB, 下載次數(shù): 48)
下載附件
2021-5-15 22:11 上傳
HC08調(diào)試過(guò)程.docx
(664.34 KB, 下載次數(shù): 40)
2021-5-15 22:13 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
4. AT 指令用來(lái)設(shè)置模塊的參數(shù),模塊在未連線狀態(tài)下可以進(jìn)行 AT 指令操作,連線后進(jìn)入串口透?jìng)髂J健DK啟動(dòng)大約需要 150ms,所以最好在模塊上電 200ms 以后才進(jìn)行 AT 指令操作。除特殊說(shuō)明外,AT 指令的參數(shù)設(shè)置立即生效。同時(shí),參數(shù)和功能的修改,掉電不會(huì)丟失。AT 指令修改成功后統(tǒng)一返回 OK(“AT+RX、AT+VERSION”等查看信息類(lèi)指令除外),不成功不返回任何信息 5. 串口通信準(zhǔn)備知識(shí):功能是利用串口助手文本模式發(fā)送0x00點(diǎn)亮led,發(fā)送0x01熄滅led。實(shí)現(xiàn)方式串口通信:uart,SBUF暫存 /************************************************************************************** * 串口通信實(shí)驗(yàn) * 實(shí)現(xiàn)現(xiàn)象:下載程序后打開(kāi)串口調(diào)試助手,將波特率設(shè)置為4800,選擇發(fā)送的數(shù)據(jù)就可以顯示 在串口助手上。 注意事項(xiàng):無(wú)。 ***************************************************************************************/
#include"reg52.h" //此文件中定義了單片機(jī)的一些特殊功能寄存器
typedefunsigned int u16; //對(duì)數(shù)據(jù)類(lèi)型進(jìn)行聲明定義 typedefunsigned char u8; sbitled0=P2^0; /******************************************************************************* * 函數(shù)名 :UsartInit() * 函數(shù)功能 :設(shè)置串口 *******************************************************************************/ void UsartInit() //串口初始化函數(shù),函數(shù)名可以自定義 { SCON=0X50; //設(shè)置為工作方式1 01100000 TMOD=0X20; //設(shè)置計(jì)數(shù)器T1工作方式2 00100000 PCON=0X80; //波特率加倍 TH1=0XF3; //計(jì)數(shù)器初始值設(shè)置,注意波特率是4800的 TL1=0XF3; ES=1; //打開(kāi)接收中斷 EA=1; //打開(kāi)總中斷 TR1=1; //打開(kāi)計(jì)數(shù)器 }
/******************************************************************************* * 函數(shù) 名 : main * 函數(shù)功能 : 主函數(shù) *******************************************************************************/ voidmain() { UsartInit(); // 串口初始化 while(1); }
/******************************************************************************* * 函數(shù)名 : Usart() interrupt 4 * 函數(shù)功能 : 串口通信中斷函數(shù) *******************************************************************************/ voidUsart() interrupt 4 //第五級(jí)中斷,因?yàn)閺?開(kāi)始數(shù),所以用標(biāo)號(hào)4,即中斷4 { u8 receiveData; //定義讀取函數(shù) receiveData=SBUF;//出去接收到的數(shù)據(jù) RI = 0;//清除接收中斷標(biāo)志位 SBUF=receiveData;//將接收到的數(shù)據(jù)放入到發(fā)送寄存器 if(SBUF=='0') { led0=0; } if(SBUF=='1') { led0=1; } while(!TI); //等待發(fā)送數(shù)據(jù)完成 TI=0; //清除發(fā)送完成標(biāo)志位 }
4.PNG (463.07 KB, 下載次數(shù): 44)
下載附件
2021-5-15 22:12 上傳
6. 單片機(jī)與藍(lán)牙模塊連接的關(guān)鍵點(diǎn)在與串口通信。 7. 手機(jī)APP發(fā)送相應(yīng)的字符給藍(lán)牙模塊,藍(lán)牙模塊與單片機(jī)進(jìn)行串口通信,藍(lán)牙模塊把從手機(jī)端接收到的內(nèi)容發(fā)送給單片機(jī)并放在單片機(jī)的SBUF上。程序中主要是通過(guò)對(duì)SBUF上的字符進(jìn)行判斷從而做出控制。注意晶振用11.0592MHZ的。
|