close
使用材料:
Arduino leonardo、藍芽模組(HC-06)、4 mode RELAY、andriod系統手機
所需軟體:
arduino
MIT App Inventor 2
動作說明:
當手機和arduino連線後,可以控制RELAY,並控制LED開關。
影片:http://youtu.be/5jvHeRVICIY?list=UUlAWf2hmQgr9VZOsq8ajfDA
電路圖:
藍芽
TXD 連到PIN10
RXD 連到PIN11
RELAY
INT1 連到PIN7
INT2 連到PIN6
INT3 連到PIN5
INT4 連到PIN4
※RELAY的工作原理和接法以後會PO上來
※※LED一定要加電阻,不然會燒掉喔......
arduino程式及說明:
藉由手機回傳的"字"轉換成ASCII碼,並以switch case 的方式判斷和控制
#include #include SoftwareSerial I2CBT(10,11);//定義PIN10及PIN11分別為RX及TX腳位 void setup() { Serial.begin(9600); //Arduino起始鮑率:9600 I2CBT.begin(9600); //藍牙鮑率:9600每個藍牙晶片的鮑率都不太一樣,請先查閱datasheet pinMode(7, OUTPUT); //設定 pin7 為輸出,RELAY1就接在這 pinMode(6, OUTPUT); //設定 pin6 為輸出,RELAY2就接在這 pinMode(5, OUTPUT); //設定 pin5 為輸出,RELAY3就接在這 pinMode(4, OUTPUT); //設定 pin4 為輸出,RELAY4就接在這 //預設全部RELAY在常閉NC digitalWrite(7,HIGH); digitalWrite(6,HIGH); digitalWrite(5,HIGH); digitalWrite(4,HIGH); } void loop() { byte cmmd[20]; int insize; while(1){ if ((insize=(I2CBT.available()))>0){ //判斷是否有訊息傳入訊息 Serial.print("input size = "); Serial.println(insize); for (int i=0; i<insize; i++){ Serial.print(cmmd[i]=char(I2CBT.read())); //顯示訊息 Serial.print(" "); } } switch (cmmd[0]) { //讀取第一個字 case 97: //97為"a"的ASCII CODE digitalWrite(7,LOW); //RELAY1常開 點亮LED break; case 98://98為"b"的ASCII CODE Serial.println("Get b"); digitalWrite(7,HIGH); //RELAY1常閉 熄滅LED break; case 99: //99為"c"的ASCII CODE digitalWrite(6,LOW); //RELAY2常開 點亮LED break; case 100://100為"d"的ASCII CODE Serial.println("Get d"); digitalWrite(6,HIGH); //RELAY2常閉 熄滅LED break; case 101: //101為"e"的ASCII CODE digitalWrite(5,LOW); //RELAY3常開 點亮LED break; case 102://102為"f"的ASCII CODE Serial.println("Get f"); digitalWrite(5,HIGH); //RELAY3常閉 熄滅LED break; case 103: //103為"g"的ASCII CODE digitalWrite(4,LOW); //RELAY4常開 點亮LED break; case 104://104為"h"的ASCII CODE Serial.println("Get h"); digitalWrite(4,HIGH); //RELAY4常閉 熄滅LED break; } //Switch } //while }//loop
ANDRIOD程式及說明:
畫面一開始的設定和藍芽連線
設定按鈕
重複4次
斷開連結
文章標籤
全站熱搜
離婚證人 、台北離婚證人 、新竹離婚證人 、彰化離婚證人 、高雄離婚見證人
遺囑見證人 、結婚證人
全站熱搜
留言列表