logo elektroda
logo elektroda
X
logo elektroda

Modifikation des LED-Messgeräts V und A auf dem Chip HC32F003 (4 Bit)

wsxcde 


Hallo alle
Vor einiger Zeit habe ich auf der chinesischen Website einen LED-Strom- und Spannungsmesser (4 Bit, 0-100 V, 0-10 A) gekauft. Gemäß der Beschreibung sollten Werte mit einer Häufigkeit von 3 Mal pro Sekunde bereitgestellt werden. Es stellte sich anders heraus, d. h. es gab weniger als einmal pro Sekunde, was für meine Anwendungen nicht akzeptabel war.
Das Messgerät basiert auf dem Prozessor HC32F003. Auf chinesischen Websites fand ich vollständige Dokumentation, SDK und Dienstprogramme für diesen Prozessor. Ich beschloss, mit ihm zu spielen.
Der Versuch, eine Verbindung mit dem SWD-Anschluss herzustellen, ist fehlgeschlagen. Dies sollte über die serielle Schnittstelle erfolgen. Es hat funktioniert, aber der Flash konnte nicht gelesen werden - er war gesichert. Eines blieb also übrig: den Flash löschen und Software von Grund auf neu schreiben, was ich auch getan habe. Übrigens, habe ich die Schaltung so modifiziert, dass sie 0-30 V misst. Schaltplan:



Auf welche Schwierigkeiten bin ich gestoßen? Ein spezielles Programm hat meinen Prozessor auf keinem USB-Adapter erkannt - seriell (ich habe es mit PL2303 und CH340 versucht). Das Programm FlyMcu hat den PL2303-Chip erkannt, aber ich kann mich nicht erinnern, warum ich es nicht zum Löschen des Chips verwendet habe (es hat ihn nicht zugelassen?). Schließlich habe ich Flash auf einem Linux-Computer mit einem Python-Programm gelöscht. Jetzt hatte ich vollen Zugriff auf die CPU. Ich habe es über den bereits aktiven SWD-Port mit J-Link programmiert und debuggt (wie man einen J-Link-Adapter mit Blue Pill herstellt, finden Sie im Netzwerk).
Aufgrund meiner Versuche (ich bin kein Programmierer) habe ich ein Messgerät, das sehr schnell Werte liefert und dies genauer als mit der ursprünglichen Software tut. Die Messfrequenz kann durch Ändern des Bytes in der Datei flash.bin unter dem Offset 0xbee (im Bereich von 1-255) geändert werden.
Enthaltene Software und Flash-Batch.
Ich grüße alle.

Über den Autor
wsxcde hat 30 Beiträge geschrieben mit der Bewertung 85 , und dabei 2 Mal geholfen. Er ist seit 2005 bei uns.

Kommentare

khoam 21 Jun 2020 13:44

Bravo für dieses Reverse Engineering :) Hat Kollege die "Linearität" der Spannungsmessung im neuen 0-30V-Bereich überprüft? [Mehr erfahren]

metalMANiu 21 Jun 2020 14:21

Herzlichen Glückwunsch und ich schätze es, dass Sie Ihre Arbeit teilen 🙂 [Mehr erfahren]

wsxcde 21 Jun 2020 15:33

Die Messung ist, für das Exemplar das ich habe, kalibriert und liefert die korrekten Werte im gesamten Spannungsbereich (es war nicht möglich, sie in der Originalsoftware einzustellen). Ich habe ein Einzelstück... [Mehr erfahren]

RomanWorkshop 21 Jun 2020 19:01

Woher kommt "4-Bit" im Titel? Der HC32F003-Mikrocontroller ist 32-Bit (der Kern ARM Cortex-M0+) und verfügt über einen genauen Konverter 12-Bit-ADC (SAR). [Mehr erfahren]

piotr_go 21 Jun 2020 20:19

Die Chinesen nennen so 4-Zifferanzeigen. Warum? Ich habe keine Ahnung. [Mehr erfahren]

wsxcde 21 Jun 2020 20:31

Genau, unter dieser Bezeichnung kann man auf chinesischen Websites danach suchen. [Mehr erfahren]

Anonymous 22 Jun 2020 04:53

So bleibt die fehlerhafte Nomenklatur bestehen. Das dreieinhalbstellige Voltmeter ist veraltet. [Mehr erfahren]

Duch__ 22 Jun 2020 21:53

Lässt es sich etwas in der Originalsoftware über RS ablesen? [Mehr erfahren]

wsxcde 23 Jun 2020 11:10

Der Punkt ist, sendet Software etwas über RS? Nein, die seriellen Anschlussstifte werden für andere Funktionen verwendet. [Mehr erfahren]

Anonymous 23 Jun 2020 20:48

Ich habe auch ein gekauft und bin sauer auf eine andere Sache: das Verschwinden der aktuellen Anzeigen nach Überschreiten des 10A-Bereichs. Vielleicht noch hier basteln und eine Chance für den Bereich... [Mehr erfahren]

wsxcde 23 Jun 2020 22:01

In meinem Programm ist es ähnlich - bei 10 A erscheinen horizontale Linien. Sie müssten das System modifizieren (Größe der Spannungsverstärkung vom Messwiderstand) oder es mit 5 V versorgen (d. h. auch... [Mehr erfahren]

Anonymous 24 Jun 2020 07:49

Dies kann durch Ersetzen des Shunts erfolgen, da ich dies immer tue, um nicht zwei in Reihe zu schalten, wenn das Stromversorgungs-/Lademodul einen eigenen Shunt hat. Sie müssen nur noch den Bereich ändern/wechseln.... [Mehr erfahren]

wsxcde 24 Jun 2020 12:52

Sogar diejenigen, die bis zu 20 A zeigen sollten, gehen aus? Sie haben im Anhang die Software, die bei bei 20 A ausschaltet. Wie auch immer, der ADC wird früher gesättigt, aber ich denke, daß 12 A angezeigt... [Mehr erfahren]

Anonymous 24 Jun 2020 20:46

Ich habe nur über diejenigen im Bereich von 0 bis 10 A geschrieben, dass nur ein von etwa einem Dutzend Einzelstücke nach Überschreiten des Bereichs nicht erlischt. Es ist sehr schwierig, VA mit einem... [Mehr erfahren]

ElectroTom 05 Jul 2020 20:20

Wie wäre es mit der Genauigkeit dieser Messgeräte? [Mehr erfahren]

wsxcde 11 Jul 2020 10:29

Nach der Kalibrierung ist es in Ordnung. Leider erlaubt der Schaltplan keine vom Hersteller empfohlenen Lösungen, um die Genauigkeit der Messungen zu erhöhen. [Mehr erfahren]

AlexSt 27 Sep 2021 19:34

Hallo wsxcde, Vielen Dank für den Artikel und die Dateien! Kann ich dir ein paar Fragen stellen? Ich muss die ähnlichen Dinge mit einem anderen Gerät tun, das auf dieser HC32F003-MCU basiert. Mit... [Mehr erfahren]

wsxcde 22 Dez 2021 22:33

Hallo AlexSt. Ich war lange nicht hier und habe diesen Beitrag nicht bemerkt. Wenn es noch gültig ist, versuche ich zu helfen. [Mehr erfahren]

AlexSt 24 Dez 2021 18:00

Hallo wsxcde, Derzeit habe ich das Problem gelöst, indem ich den Chip durch STM8L103 ersetzt habe, der Pin-to-Pin-kompatibel ist, und eine Firmware geschrieben. Aber ich denke, alle Details können für... [Mehr erfahren]