Evaluation STM32H7

Aus Technische Beeinflussbarkeit der Geschmacksache Kaffee
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Armin Rohnen, 22.03.2026
Problembeschreibung

Die aktelle Steuerungselektronik besteht aus den drei Platinen (und Mikrocontrollern) Basisplatine, Messplatine und SSR-Platine. Hinzu kommt noch mindestens eine weitere Platine in Verbindung mit dem Display und ggf. eine weitere zur Kommunikation über WLAN oder Bluetooth. Dies ergibt mindestens 4 Mikrocontroller im Gesamtsystem, welche kontinuierlich über UART miteinander Daten austauschen. Darunter auch zeit- und sicherheitsrelevante Informationen.

Warum sind es so viele Mikroconroller

Zu Beginn der Steuerungsentwicklung ergab sich aufgrund der Corona-Krise das Problem, dass Mikrocontroller-Board schwer verfügbar waren. In diesem Zeitraum ist mit dem Raspberry Pi Pico (RP2040) ein kostengünstiger und sehr gut verfügbarer Mikrocontroller in den Markt gebracht worden. Mit dieser MCU entwickelte sich auch die Idee die Steuerung mit MicroPython zu programmieren. Der Nachteil des RP2040 ist jedoch seine Baugröße, er verfügt über relativ wenige PINs und hat keinen programmierbaren DAC (digital analog converter) zur Sollsignalgenerierung. Im Zuge der Steuerungsentwicklung hat sich zudem herausgestellt, dass für die Spannungsmessung der Sensorsignale (Drücke und Temperaturen) eine 16Bit-Auflösung benötigt wird, um die angestrebte Genauigkeit erreichen zu können.

Alternativen

Gerade die Problematik mit der erforderlichen Auflösung von 16Bit für die Spannungsmessung der Druck- und Temperatursignale führt auf die STM32H7-MCU. Diese ist als NUCLEO STM32H753ZI relativ gut im Markt verfügbar. Allerdings gibt es hierzu kein evaluiertes MicroPython-Derivat.

Von einer weiteren Variante, dem NUCLEO STM32H743ZI2-Board sind im Labor 3 Stück verfügbar. Der Unterschied zwischen STM32H743ZI2 und STM32H753ZI ist die Krypto-Unterstützung im H753, welche gänzlich nicht benötigt wird. Darüber hinaus sind beide Boards PIN-gleich und grundsätzlich sollte das vorhandene 16Bit-ADC optimierte MicroPython-Derivat des STM32H743ZI2 auch auf dem STM32H753ZI funktionieren. Nur gesichert ist dies allerdings nicht. Das wäre zu überprüfen.

Allerdings würden für den aktuell anstehenden Bedarf an mximal 3 Systemsteuerungen, die vorhandenen drei STM32H743ZI2-Boards ausreichen.

Was zu tun ist

  • Lauffähigkeit des 16Bit-ADC optimierten MicroPython-Derivat des STM32H743ZI2 auf dem STM32H753ZI
  • Nutzbare ADC-PINs
  • Nutzbare UART PINs
  • Nutzbare PWM-Pins bzw. MicroPython-Algorithmus für 8 Hz PWM-Signal mit 0 bis 100% einstellbaren Tastverhältnis
  • Nutzbare Dig-Out-PINs
  • Nutzbare Dig-In-PINs

Die Überprüfung der PINs soll sich auf die bereits bestückten Kontaktleisten CN7, CN8, CN9 und CN10 beschränken. Nur wenn diese für die Anforderungen der Steuerungselektronik nicht ausreichen, darf auf die im Default unbestückten Kontaktleisten CN11 und CN12 ausgewichen werden.