Du besitzt daheim bestimmt auch eine große Wunderkiste mit vielen lustigen Kabeln innen drin!?
Ja, wir reden von Computern. Aber weißt du auch wie solch einer funktioniert? Hast du schon einmal was von einem Mikrocontroller oder einem Chip gehört? … Dann willst du jetzt bestimmt wissen, was genau das ist und was man damit machen kann. Bei uns bekommst du eine umfassende Antwort, denn wir nutzen solche Mikrocontroller zum Bau von digitalen Steuerungen. Für solche Bastelprojekte braucht man natürlich eine Anleitung, für die wir gemeinsam alle notwendigen Informationen im Internet suchen, Schaltpläne konstruieren und Platinen bauen. Die Geräte, die wir zusammen erstellt haben, werden selbstverständlich ausprobiert!
Was jetzt vielleicht noch hochkompliziert für dich klingen mag, ist in guter Gesellschaft ein Riesenspaß.
Wir treffen uns in der Regel Sonnabends von 9-12 Uhr in der Station. Interessenten können die Termine der nächsten Treffen bei Herrn Frommelt (info@station-weisswasser.de, Tel. 03576/290390) erfragen.
Heute viel Spaß und etwas Erfolg mit Bluetooth HC-05.
#include <SoftwareSerial.h> SoftwareSerial bt(9, 10); // rx,tx bool btparse() { char buf[10]; for (int i=0; i<10; i++) buf[i]=0; do { while (!bt.available()); char c = bt.read(); Serial.write(c); for (int i=1; i<10; i++) buf[i-1]=buf[i]; buf[9] = c; if (strncmp(buf+10-4, "OK\r\n", 4)==0) return true; if (strncmp(buf+10-6, "FAIL\r\n", 6)==0) return false; if (strncmp(buf+10-6, "ERROR:", 6)==0) { while (bt.available()) Serial.write(bt.read()); return false; } } while (true); } void setup() { Serial.begin(57600); Serial.println("starten"); pinMode(8, OUTPUT); // Leuchtdiode pinMode(11, OUTPUT); // Bluetooth key bt.begin(38400); // bluetooth datenrate delay(500); digitalWrite(11, 1); // Programmier-Pin für KEY aktiv bt.print("AT+VERSION?\r\n"); btparse(); bt.print("AT+UART?\r\n"); btparse(); bt.print("AT+ROLE?\r\n"); // 0 ist Slave 1 ist Master btparse(); bt.print("AT+NAME?\r\n"); // Name btparse(); bt.print("AT+PSWD?\r\n"); // passwort btparse(); bt.print("AT+ADDR?\r\n"); // bluetooth addresse btparse(); bt.println("AT+UART=38400,0,0"); btparse(); bt.println("AT+ROLE=0"); // 0 ist Slave 1 ist Master btparse(); bt.println("AT+CMODE=1"); // mit beliebigen gerät verbinden btparse(); bt.println("AT+PSWD=1234"); // Passwort btparse(); bt.println("AT+NAME=geist"); // Name btparse(); bt.println("AT+INIT"); // Name btparse(); bt.print("AT+ROLE?\r\n"); // 0 ist Slave 1 ist Master btparse(); bt.println("AT+NAME?"); // Name btparse(); bt.println("AT+PSWD?"); // Name btparse(); digitalWrite(11, 0); // Programmier-Pin für KEY aktiv } void loop() { if (bt.available()) Serial.write(bt.read()); if (Serial.available()) bt.write(Serial.read()); }