Einführung in das Bluetooth-Modul HC-05
Das HC-05 Bluetooth-Modul ist ein energiesparendes Funkmodul, das für die drahtlose Kommunikation zwischen zwei Geräten verwendet wird. Es arbeitet im 2,4-GHz-ISM-Band und kann zur Übertragung von Daten und Steuersignalen verwendet werden. Es wird häufig in der Robotik, Hausautomation und anderen Bereichen der Unterhaltungselektronik eingesetzt. Es verfügt über ein einfaches serielles Port-Protokoll und kann zum Verbinden von Geräten wie Smartphones, Tablets und Computern untereinander verwendet werden. Es kann auch zum Verbinden von Geräten mit einem WLAN-Heimnetzwerk verwendet werden. Ein Beispiel wäre die Verwendung des HC-05 Bluetooth-Moduls zum Verbinden eines Smartphones mit einem Roboterarm, sodass der Benutzer den Roboterarm mit seinem Smartphone steuern kann.
Pin-Konfiguration
Das HC-05 Bluetooth-Modul ist ein beliebtes Bluetooth-Modul, mit dem Sie Ihre Projekte um bidirektionale Funkfunktionen erweitern können. Es verfügt über 6 Pins: Key, Vcc, GND, TXD, RXD, State.
Diese Pins werden zum Senden von Daten von einem Gerät zu einem anderen verwendet. Es verfügt außerdem über einen Enable-Pin, mit dem zwischen Befehls- und Datenmodus umgeschaltet werden kann. Der Key/EN-Pin sollte hoch sein, um im Befehlsmodus zu arbeiten, und niedrig, um im Datenmodus zu arbeiten. Zusätzlich werden die Vcc- und Ground-Pins verwendet, um das Modul mit +5 V aus der Versorgungsspannung zu versorgen. Mit diesen Pins kann das HC-05 für eine Vielzahl von Anwendungen eingesetzt werden, z. B. für Datenprotokollierung, Verbraucheranwendungen und drahtlose Roboter.

Schaltplan
Um das HC-05-Bluetooth-Modul mit Arduino zu verbinden, benötigen Sie einen Schaltplan. Der Schaltplan für die Verbindung zwischen dem HC-05-Bluetooth-Modul und Arduino ist recht einfach und leicht verständlich. Er besteht aus dem HC-05-Bluetooth-Modul, dem Arduino Uno-Board, einem Steckbrett und Überbrückungskabeln.

Wie programmiert man ein Bluetooth-Modul mit Arduino?
In diesem Beitrag verwenden wir ein Arduino UNO-Board, um das Bluetooth-Modul HC-05 zu programmieren. Im Allgemeinen sind zwei Schritte erforderlich:
- Einstellung des AT-Modus auf dem Bluetooth-Modul
- Programmierung und Debugging
Einstellung des AT-Modus auf dem HC-05-Bluetooth-Modul
Der Zweck des AT-Modus besteht darin, die ursprünglichen Parameter des HC-05-Bluetooth-Moduls zu ändern. Zu den grundlegenden Parametern gehören vor allem: Bluetooth-Name, Modus und Passwort für die Kopplung usw. Natürlich gibt es zwei Möglichkeiten, den AT-Modus auf dem Bluetooth-Modul einzurichten:
- Verwendung von USB-TTL und einer Debugging-Software für serielle Schnittstellen
- Verwendung von Arduino und Bluetooth-Modul
Hier stellen wir hauptsächlich die zweite Methode vor.
1). Vorbereitung der Materialien:
- ArduinoUNO * 1
- HC-05 Bluetooth-Seriellschnittstellenmodul *1
- Mini-LED-Leuchte *1
- Dupont-Leitung *4
2). Verbinden des Bluetooth-Moduls mit Arduino UNO:
Um den AT-Modus auf dem Bluetooth-Modul einzustellen, müssen Sie die Kabel korrekt an das Arduino UNO-Board anschließen:
- Arduino 5V – VCC
- Arduino GND – GND
- Arduino Pin10 – TXD
- Arduino Pin11 – RXD
Denken Sie daran, die Schaltung vor dem Einschalten zu überprüfen und einen Kurzschluss der Pins zu vermeiden.

3). Schreiben von Arduino UNO-Code für das Bluetooth-Modul:
Als Nächstes müssen wir einen Programmcode für das Bluetooth-Modul HC-05 auf Arduino IDE schreiben. Mit diesem Programm können wir das Bluetooth-Modul über den seriellen Monitor auf Arduino IDE einrichten. Der Code lautet wie folgt:
#include
// Pin10-RX,connectting the TXD of HC05
// Pin11-TX,connectting the RXD of HC05
SoftwareSerial BT(10, 11);
char val;
void setup() {
Serial.begin(38400);
Serial.println("BT is ready!");
// HC-05 default,38400
BT.begin(38400);
}
void loop() {
if (Serial.available()) {
val = Serial.read();
BT.print(val);
}
if (BT.available()) {
val = BT.read();
Serial.print(val);
}
}
4). Debuggen von Code mit dem seriellen Monitor der Arduino IDE:
Schalten Sie zunächst das Arduino UNO aus, halten Sie dann die schwarze Taste am Bluetooth-Modul gedrückt und schalten Sie anschließend das Arduino wieder ein.
Wenn die Anzeigeleuchte des Bluetooth-Moduls alle 2 Sekunden blinkt, bedeutet dies, dass das Bluetooth-Modul korrekt in den AT-Modus gewechselt ist.
Öffnen Sie den seriellen Monitor der Arduino IDE und wählen Sie den richtigen Port aus. Stellen Sie das Ausgabeformat auf „Both: NL & CR“ und die Baudrate auf 38400 ein. Daraufhin wird die Meldung „BT is ready!“ auf dem seriellen Monitor angezeigt.
Geben Sie dann „AT“ ein. Wenn alles normal ist, zeigt der serielle Monitor „OK“ an.

5). Einstellen der AT-Befehle für das Bluetooth-Modul:
Sobald das Bluetooth-Modul korrekt in den AT-Modus gewechselt ist, können wir ihm AT-Befehle hinzufügen. Die gängigen AT-Befehle lauten wie folgt:
AT // check if the module is responding
AT+NAME // set or get the name of the device
AT+ADDR // get the Bluetooth address of the module
AT+ROLE // set or get the role of the module
AT+PSWD // set or get the password of the device
AT+UART // set or get the UART interface settings
AT+RESET // reset the module
Unter normalen Umständen wird nach dem Senden des Befehls „OK“ zurückgegeben. Wenn keine Informationen zurückgegeben werden, überprüfen Sie bitte, ob die Verkabelung korrekt ist und ob das Bluetooth-Modul in den AT-Modus gewechselt ist.
Starten Sie das Gerät nach dem Einstellen des AT-Befehls neu. Zu diesem Zeitpunkt blinkt die Anzeigeleuchte des Bluetooth-Moduls schnell, was anzeigt, dass das Bluetooth-Modul in den normalen Arbeitsmodus gewechselt ist.
Programmierung und Fehlerbehebung
Nachdem wir die AT-Einrichtung des Bluetooth-Moduls abgeschlossen haben, können wir mit der Programmierung von Experimenten beginnen. In diesem Experiment erstellen wir ein Programm, mit dem sich die Wirkung des LED-Schalters auf dem Arduino UNO-Board über das Mobiltelefon steuern lässt.
1). Arduino-Schaltungsdesign:
Das Schaltungsdesign ist hier relativ einfach und besteht hauptsächlich aus zwei Teilen:
- Verbindung zwischen Arduino und HC05-Modul
- Verbindung zwischen Arduino und LED
Hier sind zwei Punkte zu beachten: Der TXD-Anschluss des Arduino sollte mit dem RXD-Anschluss des HC05-Moduls verbunden werden, und der RXD-Anschluss des Arduino sollte mit dem TXD-Anschluss des HC05-Moduls verbunden werden. In der Abbildung unten ist meine LED direkt mit Pin 13 des Arduino verbunden. Tatsächlich sollten Sie jedoch je nach Design der LED-Leuchte überlegen, ob ein Vorwiderstand erforderlich ist.

2). Hinzufügen von Programmcode zum Arduino UNO-Board:
Der LED-Blinkcode lautet wie folgt:
void setup()
{
// Set the baud rate to 38400
Serial.begin(38400);
pinMode(13, OUTPUT);
}
void loop()
{
while(Serial.available())
{
char c=Serial.read();
if(c=='1')
{
Serial.println("BT is ready!");
// Return to the phone debugging program
Serial.write("Serial--13--high");
digitalWrite(13, HIGH);
}
if(c=='2')
{
Serial.write("Serial--13--low");
digitalWrite(13, LOW);
}
}
}
3). Debuggen des Programms auf Mobilgeräten:
Installieren der Debugging-Software für das Bluetooth-Seriell-Port-Modul:
Das Bluetooth-Seriellport-Modul basiert auf dem SPP-Protokoll (Serial Port Profile), einem Gerät, das einen seriellen Port zwischen Bluetooth-Geräten für die Datenübertragung erstellen kann und häufig in elektronischen Geräten mit Bluetooth-Funktionen verwendet wird. Es gibt verschiedene Debugging-Software für Bluetooth-Seriellport-Module auf der Android-Seite und der iOS-Seite.
Fehlerbehebung beim LED-Blinkprogramm:
Nachdem die Software heruntergeladen und installiert wurde, öffnen wir zunächst die Bluetooth-Einstellungen des Mobiltelefons, suchen nach dem Bluetooth-Modul und verbinden uns damit. Anschließend öffnen wir die Debugging-Software für den seriellen Bluetooth-Anschluss und lassen sie eine Verbindung zum Bluetooth-Modul herstellen. Nun können wir die folgenden Debugging-Befehle in die Software eingeben und verschiedene Effekte beobachten:
- „1“ – Die LED-Leuchte leuchtet, kehrt zu Serial–13–high in der Debugging-Software zurück.
- „2“ – LED ist aus, kehrt zu Serial–13–low in der Debugging-Software zurück.
Fazit
In diesem Artikel sollten Sie die Grundlagen und wichtigen Schritte zur Programmierung des HC05-Bluetooth-Moduls in Arduino erlernen können.




