此模塊透過藍芽通訊與其他設備連結,大多是手機,
HC06為從式Slave,由手機去搜尋模塊的連線方式,圖↓
以下為Win7+Arduino1.6.6+UNO及安卓測試
注意AT模式和使用模式接腳方式是不同的,
若不修改設定可跳過設定模式,直接使用,
在AT設定模式下的腳位連接
RXD接UNO的RX-P0
TXD接UNO的TX-P1
GND接UNO的GND
Vcc接UNO的5v
圖↓
接好線路後UNO與電腦連結,此時HC06的燈為快閃,
在電腦上執行IDE介面程式,
打開監控視窗,調整鮑率為9600,此為HC06的原廠預設,
選擇"沒有行結尾"No line ending,
於輸入欄打入AT,注意大寫,監視窗會回傳顯示OK,
若輸入後無回覆顯示,請檢查RX及TX接線是否勞固正確,
或上傳空程式確認設定,若出現錯誤請電腦重新開機,,圖↓
進入AT模式後HC06的一般指令,
測試:AT
查詢版本:AT+VERSION(測試為v1.8)
改名為XYZ:AT+NAMEXYZ(預設名稱HC-06)
設密碼為1234:AT+PIN1234(預設密碼1234)
設定鮑率為9600:AT+BAUD4(預設鮑率9600)
編號 鮑率
BAUD1 1200
BAUD2 2400
BAUD3 4800
BAUD4 9600出廠預設
BAUD5 19200
BAUD6 38400
BAUD7 57600
BAUD8 115200
試著改成自己要的設定並記錄,關閉程式後移除機板,
將RX/TX更換成"使用模式"的腳位連接,
RXD接UNO的P11
TXD接UNO的P10
GND接UNO的GND
Vcc接UNO的5v
可在P13和GND加上LED燈,,圖↓
接好線路連接電腦執行介面程式,此時HC06燈號快閃,上傳程式
#include <SoftwareSerial.h> // 引用程式庫
SoftwareSerial BT(10, 11); // 接TX和RX
char tx; // 接收字元
void setup() {
Serial.begin(9600); // 電腦鮑率
BT.begin(9600); // 藍芽鮑率
pinMode( 13 , OUTPUT); //被控燈號
}
void loop() {
// 收到藍牙資料顯示在監控視窗
if (BT.available()) {
tx = BT.read();
Serial.print(tx);
//當收到藍牙A亮燈,B熄燈
if ((tx) == ('A') )
digitalWrite( 13 , HIGH );
if ((tx) == ('B') )
digitalWrite( 13 , LOW );
}
}
上傳後打開監控視窗,一樣確認鮑率及沒結尾模式,待機,
以上UNO軟硬體部分算完成,再來手機部分,
可自行編寫或在APP商城有很多藍芽對Arduino用的程式,
以下使用Arduino bluetooth controller, 圖↓
此APP有4種功能,從簡易的開關,和遊戲控制板,
及調光調速,也有字串的輸入,
安裝APP等待下載先不執行,手機先開啟藍芽,
搜尋HC06點擊配對輸入密碼1234,
再執行安裝完成的Arduino bluetooth controller,
點連HC06,會出現4個模式,先選用第4個Terminal mode,,圖↓
在手機輸入列任意打入英文字或數字送出,將會顯示在電腦的監控視窗上,
無正常顯示中文,可試著輸入大寫A和大寫B,,圖↓
文字輸入沒問題則手機退出type文字模式,選擇Switch開關模式,
初次使用需設定或點擊右上編輯鍵,
將綠鍵修改為大寫A,紅鍵修改為大寫B,完成後點擊手機中的大開關,
此時Pin13的燈亮起,監控視窗顯示A,再點一次手機大開關,
此時Pin13的燈熄滅,監控視窗顯示B,可自行在Pin13加上LED燈,,圖↓
到此如果都順利,那APP中的controller遊戲控制器模式應該知道如何運用了吧,圖↓
www.ee543.com
沒有留言:
張貼留言