由於智慧型手機的普及,幾乎人人都各自擁有一台,所以我將發一系列教導大家如何將手機與Arduino做結合。
若沒學過java的控制手機怎辦?別擔心,本系列所用的程式語言為appinventor,是給沒使用過java但想寫手機程式的玩家所使用。
想學習appinventor的玩家可以透過下列二個網址學習:
在撰寫程式前我們先準備以下材料:
1 Android系統智慧型手機
2.Arduino相容開發板 (本文使用 Arduino MEGA2560)
3.藍牙收發接收器(本系列使用JY-MCU04 or JY-MCU05)
請按照電路圖將電路接上
STEP1:App Inventor 編寫簡易的藍牙訊息發送程式
此程式表示當按下按鈕後,Android 手機會經由藍牙發送一個字元「a」給Arduino,您可在 Arduino IDE 的 Serial Monitor 中看看是否正確接收。
STEP2:Arduino的CODE
#include <SoftwareSerial.h>
#include <Wire.h> //引用二個函式庫SoftwareSerial及Wire
SoftwareSerial I2CBT= SoftwareSerial(10,11); //定義PIN10及PIN11分別為RX及TX腳位
void setup() {
Serial.begin(9600); //Arduino起始鮑率:9600
I2CBT.begin(57600); //藍牙鮑率:57600(注意!此鮑率每個藍牙晶片不一定相同,請先確認完再填寫進去)
}
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.println(" “); //將接收的訊息顯示出來
}
} //while
}