Thiết bị BTduino Bluetooth được sử dụng điện thoại di động (Bluetooth) kết nối với các ứng dụng Arduino. Chương trình này hiện nay cung cấp chế độ bàn phím và các mô-đun điều khiển trò chơi. Sau đó sẽ tham gia PWM, cảm biến khác nhau và phù hợp với các nút chức năng. Người sử dụng Bluetooth để kết nối với các thiết bị nhận, chẳng hạn như HC06 Arduino. Cài đặt kết nối HC06 Arduino Bluetooth như sau:
1. Bluetooth kết nối Arduino 5V VCC hoặc 3.3v (tùy thuộc vào các thiết bị mua có thể được)
2. Kết nối Bluetooth Arduino GND GND
3. RXD kết nối Bluetooth Arduino TX (Pin10)
4. TXD kết nối Bluetooth Arduino RX (Pin11)
// Arduino RX (Pin 11) kết nối Bluethooth TX, TX Arduino (Pin 10) kết nối Bluethooth RX
Bộ Arduino
/ *
btduino2 - Terminal Mode - David Chung
* /
#include & lt; SoftwareSerial.h & gt;
SoftwareSerial myBT (11, 10);
const int ledPin = 13;
Chuỗi inCode = "";
endCode boolean = false;
khoảng trống setup () {
Serial.begin (9600);
myBT.begin (9600);
pinMode (ledPin, OUTPUT);
inCode.reserve (50);
}
khoảng trống vòng lặp () {
if (myBT.available ()) {
char incomingChar = myBT.read ();
if (incomingChar == ')') {
endCode = true;
} Else {
inCode + = incomingChar;
}
}
if (endCode) {
int strEnd = inCode.indexOf (')');
Chuỗi myString = inCode.substring (0, strEnd);
Serial.print ("Incoming:");
Serial.println (myString);
if (myString == "on") {
digitalWrite (ledPin, CAO);
myBT.print ("LED On");
}
if (myString == "off") {
digitalWrite (ledPin, LOW);
myBT.print ("LED Off");
}
inCode = "";
endCode = false;
}
}
/ *
btduino2 - gamepad Mode - David Chung
* /
#include & lt; SoftwareSerial.h & gt;
SoftwareSerial myBT (11, 10);
const int ledPin = 13;
int incomingByte = 0;
khoảng trống setup () {
Serial.begin (9600);
myBT.begin (9600);
pinMode (ledPin, OUTPUT);
}
khoảng trống vòng lặp () {
if (myBT.available ()) {
incomingByte = myBT.read ();
Serial.println (char (incomingByte));
if (incomingByte == 'L') {
digitalWrite (ledPin, CAO);
}
if (incomingByte == 'R') {
digitalWrite (ledPin, LOW);
}
}
}
/ *
Chế độ Slider
* /
#include & lt; SoftwareSerial.h & gt;
SoftwareSerial myBT (11, 10);
const int ledPin = 13;
Chuỗi inCode = "";
endCode boolean = false;
khoảng trống setup () {
Serial.begin (9600);
myBT.begin (9600);
pinMode (ledPin, OUTPUT);
inCode.reserve (30);
}
khoảng trống vòng lặp () {
if (myBT.available ()) {
char incomingChar = myBT.read ();
if (incomingChar == ')') {
endCode = true;
} Else {
inCode + = incomingChar;
}
}
if (endCode) {
int comma1 = inCode.indexOf (',');
int comma2 = inCode.indexOf (',', comma1 + 1);
Chuỗi Rs = inCode.substring (0, comma1);
Chuỗi Gs = inCode.substring (comma1 + 1, comma2);
Chuỗi Bs = inCode.substring (comma2 + 1);
Serial.print ("inCode =");
Serial.print (inCode);
Serial.print ("R =");
Serial.print (Rs);
Serial.print ("G =");
Serial.print (Gs);
Serial.print ("B =");
Serial.println (Bs);
int R = Rs.toInt ();
int G = Gs.toInt ();
int B = Bs.toInt ();
analogWrite (ledPin, R);
inCode = "";
endCode = false;
}
}
/ *
btduino2 - Định hướng Mode - David Chung
* /
#include & lt; SoftwareSerial.h & gt;
SoftwareSerial myBT (11, 10);
const int ledPin = 13;
Chuỗi inCode = "";
endCode boolean = false;
khoảng trống setup () {
Serial.begin (9600);
myBT.begin (9600);
pinMode (ledPin, OUTPUT);
inCode.reserve (30);
}
khoảng trống vòng lặp () {
if (myBT.available ()) {
char incomingChar = myBT.read ();
if (incomingChar == ')') {
endCode = true;
} Else {
inCode + = incomingChar;
}
}
if (endCode) {
int comma1 = inCode.indexOf (',');
int comma2 = inCode.indexOf (',', comma1 + 1);
Như chuỗi = inCode.substring (0, comma1);
Chuỗi Ps = inCode.substring (comma1 + 1, comma2);
Chuỗi Rs = inCode.substring (comma2 + 1);
Serial.print ("inCode =");
Serial.print (inCode);
Serial.print ("Azimuth =");
Serial.print (As);
Serial.print ("Pitch =");
Serial.print (Ps);
Serial.print ("Roll =");
Serial.println (Rs);
int A = As.toInt ();
int P = Ps.toInt ();
int R = Rs.toInt ();
inCode = "";
endCode = false;
}
}
修正Orientation Mode輸出值