BTduino - Arduino - Bluetooth 1.7

Licentie: Gratis ‎Bestandsgrootte: 1.05 MB
‎Gebruikersbeoordeling: 0.0/5 - ‎0 ‎Stemmen

Over 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) maakt verbinding met Bluethooth TX, Arduino TX(Pin 10) maakt verbinding met Bluethooth RX

Arduino 設定 /* btduino2 - Terminal Mode - door David Chung */ #include

Softwareserial myBt(11, 10); const int ledPin = 13; Tekenreeks inCode = ""; booleaanse endCode = false;

nietige instelling() { Serial.begin(9600); myBT.begin(9600); pinMode(ledPin, OUTPUT); inCode.reserve(50); }

nietige lus() { als (myBT.available()) { char incomingChar = myBT.read(); als(inkomendeChar == ')'){ endCode = waar; } anders { inCode += incomingChar; } }

als (endCode){ int strEnd = inCode.indexOf(')'); String myString = inCode.substring(0, strEnd);

Serial.print("Incoming : "); Serial.println(myString); als(myString == "aan"){ digitalWrite(ledPin, HIGH); myBT.print("LED Aan"); } als(myString == "uit"){ digitalWrite(ledPin, LOW); myBT.print("LED Off"); } inCode = ""; endCode = false; } }

/* btduino2 - GamePad Mode - door David Chung */ #include

Softwareserial myBt(11, 10); const int ledPin = 13; int incomingByte = 0;

nietige instelling() { Serial.begin(9600); myBT.begin(9600); pinMode(ledPin, OUTPUT); }

nietige lus() { als (myBT.available()) { incomingByte = myBT.read(); Serial.println(char(incomingByte)); als(inkomende Byte == 'L'){ digitalWrite(ledPin, HIGH); } als(inkomende Byte == 'R'){ digitalWrite(ledPin, LOW); } } }

/* Schuifregelaarmodus */ #include

Softwareserial myBt(11, 10); const int ledPin = 13; Tekenreeks inCode = "";

booleaanse endCode = false;

nietige instelling() { Serial.begin(9600); myBT.begin(9600); pinMode(ledPin, OUTPUT); inCode.reserve(30); }

nietige lus() { als (myBT.available()) { char incomingChar = myBT.read(); als(inkomendeChar == ')'){ endCode = waar; } anders { inCode += incomingChar; } }

als (endCode){ int komma1 = inCode.indexOf(',%quot); int komma2 = inCode.indexOf(',', komma1 + 1); String Rs = inCode.substring(0, komma1); String Gs = inCode.substring(komma1 + 1, komma2); String Bs = inCode.substring(komma2 + 1);

Serial.print("inCode = "); Serial.print(inCode); Serial.print(" R = "); Serial.print(R);; 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 - Oriëntatie Mode - door David Chung */ #include

Softwareserial myBt(11, 10); const int ledPin = 13; Tekenreeks inCode = ""; booleaanse endCode = false;

nietige instelling() { Serial.begin(9600); myBT.begin(9600); pinMode(ledPin, OUTPUT); inCode.reserve(30); }

nietige lus() { als (myBT.available()) { char incomingChar = myBT.read(); als(inkomendeChar == ')'){ endCode = waar; } anders { inCode += incomingChar; } }

als (endCode){ int komma1 = inCode.indexOf(',%quot); int komma2 = inCode.indexOf(',', komma1 + 1); Tekenreeks Als = inCode.substring(0, komma1); String Ps = inCode.substring(komma1 + 1, komma2); String Rs = inCode.substring(komma2 + 1);

Serial.print("inCode = "); Serial.print(inCode); Serial.print( " Azimut = "); Serial.print(As); Serial.print(" Pitch = "); Serial.print(Ps); Serial.print(" Roll = "); Serial.println(R);

int A = As.toInt(); int P = Ps.toInt(); int R = Rs.toInt();

inCode = ""; endCode = false; } }