Table of Contents
Firmwareprogramierung des DXM-Bluetooth mit dem Programm OOBBootloader
Programmierung mit dem stm32flash Kommandozeilenprogramm
Kommandozeileprogramm stm32flash
, hier verwendet unter Windows 7, 64Bit in der Kommandozeile
- Setze den STM32 per Boot0 = High (3V3) in den Flashmodus (Mit dem Setzen des Jumpers an dem OOBD_V5 Pin-Out des Konfigurationsadapters zwischen Pin 2 und Pin1)
OOBD_V5 Pin-Out des Konfigurationsadapters
Pin Nr. | OOBD V5 | DXM-BT |
---|---|---|
1 | 3V3 | GND |
2 | Boot0 | Boot0 |
3 | GND | NC |
4 | Reset | Reset |
5 | BT-RxD | BT-RxD |
6 | MC-TxD | MC-TxD |
7 | BT-TxD | BT-TxD |
8 | MC-RxD | MC-RxD |
Programmieren mit dem STM Windows Programm
1. Hauptbildschirm⇒ Next
2. Hardware identifiziert ⇒ Next
3. Speicherübersicht ⇒ Next
4. Wähle Firmware ⇒ Next
5. Fortschritt des Downloads
6. Verifikation
7. Download erfolgreich abgeschlossen. Klicke Close um das Programm zu beenden.
Initiales Flashen von Flashloader und Firmware mit stm32flash - All-in-One Package
Programmieradapter - Anschluss
Im ersten Bild von links ist ein USB-UART Adapter mit CP2102 Chip dargestellt. Dieser kann direkt mit Hilfe des mitgelieferten Kabels an die Jumperleiste am USB-UART Adapter und OOBD-Cup v5 NG angeschlossen werden.
Hierzu müssen folgende Verbindungen hergestellt werden (USB-UART < Dongle):
Jumper Pin | USB-UART 1 (MC) | USB-UART 2 (BT) | Reset Switch | Boot0 Switch |
---|---|---|---|---|
1 (3V3) | 3V3 | |||
2 (Boot0) | Boot0 | |||
3 (GND) | GND | GND | GND | |
4 (Reset) | Reset | |||
5 (RxD BT) | TxD | |||
6 (TxD MC) | RxD | |||
7 (TxD BT) | RxD | |||
8 (RxD MC) | TxD | |||
9 - |
USB-UART | P2102 | PL2303HX |
---|---|---|
TxD | orange | green |
RxD | red | white |
GND | brown | black |
+ | red |
und
Download All-in-One Package
Das All-in-One Package (Flashloader_Package.zip) ist in aktueller Version immer hier zu finden http://code.google.com/p/oobd/downloads/list
In diesem Paket sind neben dem aktuellen Flashloader- und Firmwarefile das eigentliche Flashtool stm32flash sowie drei Batchdateien für Windows enthalten. Das Flashtool stm32flash gibt es neben der hier gezeigten und vorgestellten Version für Windows auch als Binary für Linux.
Die drei Batchdateien sind an den jeweiligen Anwendungsfällen “Flashen Flashloader only” (stm32flash_bootloader_only.bat), “Flashen Firmware only” (stm32flash_firmware_only.bat) und “Flashen Flashloader und Firmware - All-in-One” (stm32flash_all.bat) orientiert.
Für den initialen Flashvorgang nach Hardwarebestückung und/oder Kauf eines DXM-BT Moduls wird die “stm32flash_all.bat COMx” Variante empfohlen, da mit diesem Batchaufruf gleich der Bootloader und die Firmware auf den OOBD-Cup v5 NG oder DXM-BT geflasht werden.
Hinweis:
Bei der obigen Hardwarebeschreibung für ein mögliches USB-UART Interface ist nur die notwendige Jumperleiste des OOBD-Cup v5 NG zur Kontaktierungsübersicht dargestellt.
Flashen von Flashloader und Firmware mit dem Batchaufruf stm32flash_all.bat
Nachdem im ersten Schritt das All-in-One Package besorgt und abgelegt wurde, wird im nächsten Schritt der Flashvorgang durch Aufruf von…
stm32flash_all.bat COMx
…gestartet. Wobei x hier als Platzhalter für den jeweiligen COM-Port des USB-UART Interfaces darstellt. In unserem Beispiel ist dies COM5
Hinweis:
Bevor der Flashvorgang gestartet werden kann ist sicherzustellen, dass das USB-UART Interface einerseits mit dem PC/Laptop, der für den Flashvorgang genutzt wird, verbunden ist und andererseits die Verbindungen der RxD/TxD/GND-Leitungen zwischen USB-UART und DXM-Modul des OOBD-Cup v5 hergestellt sind. Weiterhin muss der Boot0-Jumper (Pin 1/2) des Jumperblocks JP2 gesteckt sein.
Auslesen der Hardwarekennung - Step1
Nachdem die stm32flash_all.bat ausgeführt wurde wird im ersten Step versucht die Hardwarekennung des STM32F103C8 auszulesen. Wenn dies erfolgreich geschehen ist, sollte sich ein Bild mit den folgenden Informationen zeigen.
Wichtig:
Die ersten Zeilen des Bildes zeigen einen Flash-Versuch, wenn die Verbindung zwischen USB-UART und DXM-Modul nicht erfolgreich hergestellt werden konnte.
Nach dem ersten Drittel des Bildschirmes wird mit erneutem Aufruf von stm32flash_all.bat COM5 dargestellt, welche Informationen bei erfolgreicher Verbindung mit dem DXM-Modul ausgegeben werden.
Flashen des Flashloader/Bootloader - Step2
Nach Bestätigung der Eingabeaufforderung mit einer beliebigen Taste wird der Flashvorgang mit dem Flashloader gestartet.
Flashen der Firmware - Step 3
Nachdem der Flashvorgang mit dem Flashloader erfolgreich beendet wurde (100% Done) wird nun im nächsten Schritt nach Bestätigung der Eingabeaufforderung mit beliebiger Taste der Flashvorgang mit der Firmware fortgeführt.
Ende des Flashvorgangs
Nachdem der Flashvorgang der Firmware erfolgreich abgeschlossen wurde (100% Done) wird die Firmware automatisch gestartet (Starting execution…). Hierbei sollte nach wenigen Sekunden ein doppelter “Beep” des Buzzer wahrnehmbar sein. Falls dies nicht der Fall ist und es sich um einen OOBD-Cup v5 NG handelt, muss in einem nächsten Schritt die Bestückung des Signalgebers/Buzzer (SG1) überprüft werden.
Flashen der Firmware mit dem integrierten Bootloader via Hyperterm
…ToDo…
Änderung UART-Schnittstellengeschwindigkeit BTM182 / BTM222
Dieser Schritt wird nur für die Vollständigkeit und zur Darstellung der UART-Schnittstellengeschwindigkeits-Umstellung des BTM182/BTM222 aufgezeigt. Nachdem im Kapitel 1 beschriebenen initialen Flashvorgang wird der BTM182/BTM222 automatisch beim Starten der Firmware auf die neue Schnittstellengeschwindigkeit umgestellt, sodass dieser Schritt für die Erst-Inbetriebnahme nicht erforderlich ist.
Zum Programmieren des BT- Chips muß der USB-Seriell Adapter wie oben gezeigt an die BT-PINS!! angeschlossen werden.
Im Auslieferzustand ist der BTM182/BTM222 auf der Default-Baudrate von 19200 bit/s eingestellt. Diese wird beim Firmwarestart automatisch auf 115200 bit/s umgestellt, da der OOBD-Cup v5 NG mit 115200 bit/s auf der UART-Schnittstelle des BTM182/BT;222 < DXM-Modul arbeitet. Wie im Bild dargestellt kann dies optional bzw. bei Bedarf auch manuell erfolgen durch Eingabe von “atl5” und Bestätigung mit Enter/Return mithilfe eines Terminalprogramss (hier: Hyperterm). atl? Ausgabe der aktuellen UART-Schnittstellengeschwindigkeit
- 9600 bit/s
- 19200 bit/s
- 38400 bit/s
- 57600 bit/s
- 115200 bit/s