Das HC-05 Modul muss machmal auf eine andere Schnittstellengeschwindigkeit eingestellt werden. Das geht mit folgendem Programm:
Schritte für die Programmierung:
/*
AT Kommandos muessen innerhalb 0,5 Sekunden
nach Spannungsversorgung gesendet werden
An den Jumper denken!
*/
int led = 13;
void setup() {
Serial1.begin(38400); // Default fuer AT-Mode HC-05 38400 Baud
pinMode(led, OUTPUT);
digitalWrite(led, LOW);
}
void loop() {
delay (1000);
digitalWrite(led, HIGH);
Serial1.write("AT+NAME=Elektroskate-Controller\r\n");
Serial1.write("AT+UART=230400,0,0\r\n");
Serial1.write("AT+VERSION?\r\n");
Serial1.write("AT+NAME?\r\n");
while (Serial1.available() > 0) {
Serial.write(Serial1.read()); // Hat das Modul es geraft?
}
delay (2000);
digitalWrite(led, LOW);
/*
// Nur lesen!
Serial1.write("AT+NAME?\r\n");
Serial1.write("AT+VERSION?\r\n");
while (Serial1.available() > 0) {
Serial.write(Serial1.read());
}
*/
delay (20000);
digitalWrite(led, HIGH);
}
Damit wird der HC-05 auf 230400 Baud umgestellt und nach Elektroskate-Controller umbenannt.
Schöne AT-Kommandos für den HC-05:
AT+ADDR?
Modul Reset
AT+RESET
Umbennenen des Moduls
AT+NAME=Elektroskate-Fernbedienung
Wie heißt das Modul?
AT+NAME?
Einstellen der Seriellen Schnittstelle
AT+UART=230400,0,0
Software Version des HC-05 Moduls
AT+VERSION?
Das Modul soll als Master fungieren und selbst Kontak mit einem anderen Modul aufnehmen
AT+ROLE=1 MASTER
AT+INQM=1,9,48
AT+IAC?
AT+CLASS=1F00
AT+BIND=0,0,0
AT+CMOD=0
AT+IPSCAN=1024,512,1024,512
AT+SNIFF=0,0,0,0
AT+INIT
AT+INQ -> suche nach Module
AT+INQC -> Beenden der Suche
AT+PAIR=14,3,123127,30 -> Pairt die Module
AT+FSAD=14,3,123127 -> Search Authenticated Device
AT+LINK=14,3,123127 -> Verbindet die Module und schaltet in den Uebertragungsmodus