Ich entwickle ein Vorrichtungstool zum Testen einer benutzerdefinierten Leiterplatte mit ST Bluenrg1 (STM32 M0-Kern + Bluetooth).
Dieses Fixture-Tool verfügt über eine eigene MCU, die mit 5 V arbeitet.
Ich würde gerne zuerst automatisch flashen, um die Pins der Platine zu testen, aber ich suche nach einer besten Lösung, um dies zu tun, ohne 600 EURO in einen "Flasher ARM" auszugeben (der eigenständiges Flashen per Handshake-Protokoll ermöglicht ).
Die Idee ist, die MCU des Testtools zu verwenden, um den Flasher aufzufordern, das Hochladen der Firmware zu starten, und dem Testtool zu antworten, ob es korrekt durchgeführt wurde oder nicht.
Ich überprüfe Optionen mit Himbeere + OpenODC, Himbeere + USB STlinkv2, suche nach Flashern mit Standalone-Modus ... aber ich bin ein bisschen verwirrt mit der besten Option (beste Option mit relativ niedrigen Kosten).
Welche Lösungen verwenden Sie, wenn Sie Ihre MCUs ohne Computer programmieren möchten?
AKTUALISIERT: Ich verwende das SWD-Protokoll, um es mit einem Computer und einem STLINKv2-Programmierer zu programmieren. Ich mache es von Hand, bevor ich die Verbindungen im Testvorrichtungstool teste. Ich möchte diesen Programmierschritt in das Testing Fixture Tool einbauen und es so einfach wie möglich machen, da dies im Lager von anderen Leuten gemacht wird (die Idee ist, das Testing Tool zuerst den Code hochzuladen und wenn alles in Ordnung ist , testen Sie die Verbindungen)
Du suchst einen Bootloader. Glücklicherweise wird die Bluenrg-Serie mit einem von ST entwickelten Bootloader geliefert. Einzelheiten finden Sie unter AN4872 .
Aus dem Dokument
Der BlueNRG-1- und BlueNRG-2-Bootloader wird durch Hardware aktiviert, die beim Zurücksetzen des Geräts einen hohen DIO7 erzwingt.
Achten Sie darauf, dass der Bluenrg eine 3,3-V-MCU ist (wenn ich mich richtig erinnere), müssen Sie möglicherweise zusätzliche Hardwareänderungen vornehmen.
Ich mache auch dasselbe, verwende eine Himbeere (aber PC-Linux funktioniert auch), einen st-link v2-Klon und ein Bash-Skript:
Übergeben Sie die bin-Datei an das Skript, es lädt die zu programmierende Firmware von einem Server herunter, dann:
Es verwendet einen Summer (mit Oszillator), der mit dem Himbeer-GPIO verbunden ist, um Fehlerwarnungen auszugeben oder die erfolgreiche Programmierung zu melden.
Das Skript kann kostenlos von https://docs.creasol.it/progstm32 heruntergeladen werden
Was nicht funktioniert, ist das Zurücksetzen: Am Ende der Gerätesicherung sendet der st-link v2-Klon einen Hardware-Reset (über NRST), gefolgt von einigen SWD-Befehlen, die das Starten der Firmware nicht zulassen (zum automatischen Testen nach der Programmierung). . Dies sollte ein Problem des st-link v2-Dongles sein.
Wenn "Firmware-Start nach der Programmierung" nicht benötigt wird, funktioniert diese Lösung sehr gut, insbesondere weil sie automatisch die neue Version der zu programmierenden Firmware herunterlädt (sehr nützlich für die Montagefabrik).
Oldtimer
Oldtimer
Dirk Brüre
Chris Stratton
Chris Stratton