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

  1. 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)
  2. Starte die Batch-Datei stm32flash.bat mit der seriellen Portnummer als Parameter, mit der das Programmierkabel verbunden ist ⇒ weiter mit Schritt 4
  3. Wenn der STM32 nicht korrekt im Boot0-Modus ist, wird die folgende Fehlermeldung erscheinen
  4. Zusätzlich zu einigen anderen Werten des Programmierungsprozesses wird dieser mit einem Fortschrittsanzeige von 0 -100% angezeigt
  5. Wenn der Programmierungsprozess erolgreich abgeschlossen worden ist, leuchtet die grüne LED nun permanent

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

hw_usb-uart.jpghw_usb-uart_conn1.jpghw_usb-uart_conn2.jpghw_uart_pinout.jpg

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

  1. 9600 bit/s
  2. 19200 bit/s
  3. 38400 bit/s
  4. 57600 bit/s
  5. 115200 bit/s