Universelle Bluetootherweiterung für alle Anwendungen mit UART Schnittstelle...
... oder zumindest für fast alle.
- SPP Protokoll vollständig im Chip integriert
- Bis zu 921600 Baud
- Spannungsbereich: 3,3 V bis 5 V
- Konfiguration über UART als Master möglich
- Keine Konfiguration als Slave nötig
- Direkter Betrieb an Mikrocontrollern
- 2 LEDs zur Anzeige von Verbindung und Traffic
Bei manchen Anwendungen ist es erforderlich, dass man keine Kabelverbindung hat. Entweder weil eine galvanische Trennung erforderlich ist oder es einfach nur unpraktisch ist. Man könnte jede beliebige Funkverbindung nutzen, aber vorallem wenn man die Schaltung sowieso an einen PC anschließen will ist die Bluetooth Lösung am praktischsten und einfachsten. Dieses Modul verfügt über eine 4 Pin Stiftleiste, über die das Modul mit Spannung und Daten versorgt wird. Es ist ein Spannungsbereich von 3,3 V bis 5 V zulässig. Die Spannungen an den Eingängen darf aber 3,3 V nicht überschreiten. Die Baudrate kann über Widerstände eingestellt werden.
Verwendet habe ich für dieses Modul ein LMX9838 von National Semiconductor. In diesem IC ist alles benötigte vereint inklusive Antenne. Außerdem ist es klein, leicht und hat einen geringen Stromverbrauch. Einziger Nachteil ist das Gehäuse, das einem BGA gleicht.
Intern arbeitet das IC mit 1,8 V und 3,3 V. Für die 1,8 V hat das IC einen internen Regler, für die 3,3 V ist auf meinem Modul ein LM1117-33 verbaut. Diesen kann man leicht kaufen oder ausschlachten. Wenn man das Modul mit 3,3 V betreiben will sollte man den Spannungsregler überbrücken, so erreicht man eine minimale Versorgungspannung von 1,8 V.
Auf der Rückseite der Platine sieht man den Spannungsregler, sowie die benötigten Kondensatoren. Über die Lötbrücken links kann man die Datenleitungen vertauschen. Außerdem erkennt man die verlöteten Dukonieten (Bungard 0,4 mm/0,6 mm, kann ich übrigens nur weiterempfehlen).
Auf der Vorderseite sieht man das IC bzw. Modul, die LEDs, sowie die Widerstände zum Einstellen der Baudrate.
Hier ist der Schaltplan zu dem Modul.
Erklärung dazu:
LED1 dient zur Anzeige, ob ein Client zu dem Modul verbunden ist.
LED2 zeigt an, ob Datenübertragungen stattfinden
Über die Jumper SJ1 bis SJ4 kann man die Belegung der Stiftleiste SV1 wie folgt verändern:
Konfiguration | Pin 1 | Pin 2 | Pin 3 | Pin 4 |
SJ1, SJ3 geschlossen | Vcc | Rx | Tx | GND |
SJ2, SJ4 geschlossen | Vcc | Tx | Rx | GND |
Über die Widerstände R3 bis R5 kann man zwischen den Baudraten 9600, 115200, 921600 oder "Read from NVS" auswählen:
Baudrate | R3 | R4 | R5 |
Read from NVS | Vorhanden | Fehlt | Fehlt |
9600 | Vorhanden | Fehlt | Vorhanden |
115200 | Vorhanden | Vorhanden | Fehlt |
921600 | Vorhanden | Vorhanden | Vorhanden |
"Read from NVS" bedeutet, dass die Baudrate über die UART Schnittstelle programmiert werden muss. Diese wird dann im internen EEPROM (Non Volatile Storage) gespeichert.
Der NVS lässt sich über die UART Schnittstelle mit "Simply Blue Commander" von National Semiconductor programmieren. Damit kann man auch eine Verbindung zu anderen Bluetooth Geräten herstellen. So lassen sich zum Beispiel auch zwei dieser Module miteinander verbinden.
Außerdem verfügt das Modul über einen Ausgang zum Anschluß eines Audio Codecs, so müsste es möglich sein, einfache Bluetooth Headsets zu bauen. Ich werde in diese Richtung weiter forschen. Bisher konnte ich leider keinen passenden Codec auftreiben.
Eagledateien inklusive Platinenlayout gibt es auf Anfrage.
Viele weitere Informationen dazu auf der Website von National
Datenblatt LMX9838
Datenblatt LM1117
Erschienen in Elektor 01/2010