這裡介紹將感測器的測量資料,透過藍牙模組,傳送到手機中,在Android的手機中,可以使用 Arduino Bluetooth Terminal 這個app來取得感測器資料,此範例將從BMP280氣壓感測器中,取得壓力和溫度的數據做為示範。
1. Arduino UNO主板 x 1
2. BMP280氣壓感測器 x 1 (請注意,電源要接到3V3,以免燒壞)
3. 藍牙模組 HC-05
Arduino Bluetooth Terminal :https://play.google.com/store/apps/details?id=com.frederikhauke.ArduTooth (免費)
[BMP280 氣壓氣溫感測器 腳位]
VIN to arduino 3.3V
GND to arduino GND
SCL to arduino A5
SDA to arduino A4
[BlueTooth 藍牙模組 腳位]
VCC to arduino 5v
GND to arduino GND
TXD to arduino UNO pin10
RXD to arduino UNO pin11
#include <SoftwareSerial.h>SoftwareSerial BTSerial(10, 11);#include <Wire.h>#include "i2c.h"#include "i2c_BMP280.h"BMP280 bmp280;void setup(){ Serial.begin(9600); bmp280.initialize(); bmp280.setEnabled(0); bmp280.triggerMeasurement(); BTSerial.begin(9600);}void loop(){ bmp280.awaitMeasurement(); float temperature; //氣溫,單位:攝氏溫度 bmp280.getTemperature(temperature); float pascal; //氣壓,單位:pa帕 bmp280.getPressure(pascal); bmp280.triggerMeasurement(); String text = String(pascal/100) + String(",") + String(temperature); Serial.println(text); //透過藍牙傳送到數據資料。每個數據之間要有逗號, 最後要有分號; BTSerial.print(pascal/100); BTSerial.print(","); BTSerial.print(temperature); BTSerial.print(";");}點選安裝好的 Arduino Bluetooth Terminal 程式。
點選允許,開啟手機的藍牙。
選擇Arduino藍牙模組的名稱。
選擇Receiver,代表手機要接收訊息。
點選畫面右下角連結的符號,連結Arduino的藍牙模組。
手機畫面自動顯示感測器所傳來的兩種資料數據。