Development-Board mit STM32F1 im Arduino Nano Format



Projekt

Auch sehr kleine Steuerungen müssen mit immer höheren Anfoderungen zurecht kommen. Moderne Touch-Displays als Bedienelemente (HMI), Vernetzung mit anderen Systemen, hohe Taktraten bei der Ansteuerung von Servos und rasantes Auslesen von Messwerten. Hinzu kommen immer aufändigere Berechnungen.

  • Leistungsfähiger Mikrocontroller (MCU) im Kleinformat
  • Übliche Schnittstellen: USB, seriell, I2C, SPI
  • Mindestens 64kB Flash und 16kB RAM
  • Weitgehend Pinkompatibel mit dem Arduino Nano
  • Flexible Stromversorgung ab USB und mind. 5V und 12V
  • Gute Verfügbarkeit und günstig

Fertiges Produkt

Der STMicroelectronics STM32F103C8T6 ist praktisch ein Standardprodukt in diesem Bereich. Alle nötigen Schnittstellen sind vorhanden und sowohl Flash, wie auch RAM sind ausreichend. Das LQFP-48 Gehäuse ist lediglich 7x7mm gross. Im Extremfall könnte man auf ein BGA64-Gehäuse (5x5mm) ausweichen. Die MCU ist in vernünftigen Stückzahlen (>35000 bei Mouser und >40000 bei JLCPCB) verfügbar und ist mit einem Stückpreis von ~1.4$ erschwinglich.
Um Platz zu sparen verzichte ich auf den 32kHz Oszillator. Eventuell wird der in einer späteren Revision noch eingefügt.
Auf der Rückseite plane ich Pads ein für einen NAND-Flash ein. Dieser könnte für das Speichern von Einstellungen verwendet werden, wird aber nicht bestückt.
Ein LDO regelt die rohe Eingangsspannung von 4.8V..15.3V auf 5V herunter. Ein weiterer LDO regelt von 5V auf die von der MCU benötigten 3.3V.
Für Debugging und Anzeige befinden sich 4 farbige LED auf dem Board.
Alle Schemata und PCB-Layouts werden in KiCAD erstellt und versioniert in einem Git-Repository abgelegt.