BTduino - Arduino - Bluetooth 1.7
Poderá descarregar em 5 segundos.
Sobre BTduino - Arduino - Bluetooth
BTduino 是利用手機藍芽裝置(Bluetooth)連接 Arduino 的應用程式。此程式現提供數字按鍵模式及遊戲控制器模。往後亦會加入PWM,各種感應器及按鍵配對等功能。使用者需連接藍芽接收裝置如HC06至Arduino。藍芽HC06連接Arduino的設置如下: 1. 藍芽VCC接Arduino 5v或3,3v (視乎所購買的裝置而定) 2. 藍芽GND接Arduino GND 3. 藍芽RXD接Arduino TX (Pin10) 4. 藍芽TXD接Arduino RX (Pin11) Arduino RX (Pin 11) liga-se à Bluethooth TX, Arduino TX(Pin 10) ligar-se ao Bluethooth RX
Arduino 設定 /* btduino2 - Modo Terminal - por David Chung */ #include
SoftwareSerial myBT(11, 10); const int ledPin = 13; Cadeia inCode = ""; boolean endCode = falso;
configuração nula() { Serial.begin (9600); myBT.begin (9600); pinMode (ledPin, OUTPUT); inCode.reserve(50); }
loop vazio() { se (myBT.disponível()) { entrada de carvão = myBT.read(); se (entradaChar == ')'){ endCode = verdadeiro; } de outra forma { inCode += entradaChar; } }
se (endCode){ int strEnd = inCode.indexOf(')'); String myString = inCode.substring (0, strEnd);
Serial.print("Incoming : "); Serial.println (myString); se (myString = = "on"){ digitalWrite (ledPin, HIGH); myBT.print ("LED On"); } se (myString = ="off"){ digitalWrite (ledPin, LOW); myBT.print ("LED Off"); } inCode = ""; endCode = falso; } }
/* btduino2 - Modo GamePad - por David Chung */ #include
SoftwareSerial myBT(11, 10); const int ledPin = 13; int incomingByte = 0;
configuração nula() { Serial.begin (9600); myBT.begin (9600); pinMode (ledPin, OUTPUT); }
loop vazio() { se (myBT.disponível()) { incomingByte = myBT.read(); Serial.println (char(incomingByte)); se (incomingByte == 'L'){ digitalWrite (ledPin, HIGH); } se (incomingByte == 'R'){ digitalWrite (ledPin, LOW); } } }
/* Modo de deslizamento */ #include
SoftwareSerial myBT(11, 10); const int ledPin = 13; Cadeia inCode = "";
boolean endCode = falso;
configuração nula() { Serial.begin (9600); myBT.begin (9600); pinMode (ledPin, OUTPUT); inCode.reserve(30); }
loop vazio() { se (myBT.disponível()) { entrada de carvão = myBT.read(); se (entradaChar == ')'){ endCode = verdadeiro; } de outra forma { inCode += entradaChar; } }
se (endCode){ int vírgula1 = inCode.indexOf('); int vírgula2 = inCode.indexOf(',', vírgula1 + 1); Cordas Rs = inCode.substring(0, vírgula1); Cordas Gs = inCode.substring (vírgula1 + 1, vírgula2); Cordas B = inCode.substring (vírgula2 + 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 = falso; } }
/* btduino2 - Modo de Orientação - por David Chung */ #include
SoftwareSerial myBT(11, 10); const int ledPin = 13; Cadeia inCode = ""; boolean endCode = falso;
configuração nula() { Serial.begin (9600); myBT.begin (9600); pinMode (ledPin, OUTPUT); inCode.reserve(30); }
loop vazio() { se (myBT.disponível()) { entrada de carvão = myBT.read(); se (entradaChar == ')'){ endCode = verdadeiro; } de outra forma { inCode += entradaChar; } }
se (endCode){ int vírgula1 = inCode.indexOf('); int vírgula2 = inCode.indexOf(',', vírgula1 + 1); Cadeia As = inCode.substring(0, vírgula1); String Ps = inCode.substring (vírgula1 + 1, vírgula2); Cordas Rs = inCode.substring (vírgula2 + 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 = falso; } }