Digitaltechnik

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.

Tagebuch

03.06.2017

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());
}

→ Weiterlesen...

Aktuelle Projekte

Abgeschlossene Projekte

Projektideen in Recherche-Phase

Materialien