JUCHU.. Geschaft. Leider dann auch erst gesehen das du geschrieben hast!
Hier die Lösung (nach drei Tagen den Kopf gegen die Wand hauen!)
OK für alle die auch mit Bluetooth es probieren wollen. Erkläre ich lieber alles was ich nun herausgefunden habe.
Wichtig beim Multiplexer kann man die Receiver RX und Transceiver TX einstellen, wenn man ihn auf
TX 100000
D0 110000
RX 010000
Heisst das TX(BT Shield) geht auf DigitalPin(Arduino) 0 == RX also TX-->RX. Und RX(BT Shield) geht auf DigitalPin(Arduino) 1 == TX also RX-->TX. Logisch der Empfänger braucht immer ein Sender und umgekehrt.
Achtung das bedeutet aber das der "normale" Serial Port per USB über schrieben wird! Auf gut Deutsch wenn man dann das Shield auf den Arduino tut, kann man per USB den ATMega nicht mehr bespielen, da er nun nur noch auf das BT Shield horcht.
Bei dieser Einstellung muss also zum Hochladen des Codes das Shield runter! Dann ATMega bespielen und Shield wieder rauf.
Jetzt kann man den Arduino+Shield an eine andere Stromquelle hängen und seinen Laptop mit dem BT Shield koppeln. Dann kann man im Arduino Programm oben bei "TOOLS"-->"Serial Port" auf den tty.iTead-DevB stellen. Nun normal den Serial Monitor öffnen ACHTUNG Baudrate muss natürlich stimmen.
Der Witz bei der ganzen Geschichte ist das man diesen ganzen Mist mit dem
#include <SoftwareSerial.h>
#define txPin 0
#define rxPin 1
SoftwareSerial Bluetooth(rxPin, txPin);
Bluetooth.begin(38400);
NICHT BRAUCHT!!! Man arbeite wie per USB mit Serial.begin(9600); und dann weiter mit Serial.println("Hello World"); --> Warum? Weil das einzige was man gemacht hat ist das USB Kabel zu ziehen und es durch BT zu ersetzen.
Meine Idee vom Anfang die LED 13 zum Leuchten zu bringen ist also super easy! (jetzt!
)
int ledPin = 13;
void setup()
{
Serial.begin(9600);
pinMode(ledPin, OUTPUT);
}
void loop()
{
while(Serial.available() > 0)
{
int valSer = Serial.read() - '0';
Serial.println(valSer);
if(valSer == 1) {
Serial.println("LED is On");
digitalWrite(ledPin, HIGH);
}
else if(valSer == 0) {
Serial.println("LED is Off");
digitalWrite(ledPin, LOW);
}
else {
Serial.println("Invalid");
}
}
}
Der Code funktioniert natürlich auch ohne BT Shield! Könnte immer noch den Kopf an die Wand hämmern - dafür!
Theoretisch kann man dann natürlich auch nun das machen was dertester sagt, also zwei Wege zum Arduino legen. Einen per BT zb mit Multiplexer (TX --> DPin6, RX --> DPin7) nun mit SoftwareSerial Bluetooth(7, 6); eine eigene Seriale-Schnittstelle erstellen und von dort dann Dinge schicken. Achtung: Man muss genau darauf dann achten welchen Port man grade beim Serial Monitor sieht/benutzt.
Bei mir geht der letzte Theoretische Teil noch nicht! Wollte aber mein Wissen bzw Erfolg allen anderen BT Anfängern mitteilen ![]()