Programmierung der wichtigsten Peripherie-Komponenten des STM32F4xx-Chips Digitale und analoge
I O-Ports (GPIOs) Timer und Counter serielle Schnittstellen (USARTs UARTs SPI und I2C) ADCs
und DACs Direct Memory Access (DMA) Zahlreiche praktische Anwendungsbeispiele Dieses Buch
bietet einen umfassenden Praxiseinstieg in die Softwareentwicklung für Embedded Systems mit der
ARM-Mikrocontrollerfamilie STM32F4xx der Firma STMicroelectronics (STM). Für die Programmierung
wird die Sprache C eingesetzt. Der Autor behandelt die wichtigsten Peripherie-Komponenten dazu
gehören digitale und analoge I O-Ports (GPIOs) Timer und Counter serielle Schnittstellen
(USARTs UARTs SPI und I2C) ADCs und DACs RTC (Echtzeit-Uhr) sowie Direct Memory Access
(DMA). Anhand einfacher Beispiele zeigt der Autor den praktischen Einsatz dieser Komponenten.
Hierzu zählen die Abfrage von Uhrzeit und Datum von einer externen RTC (über I2C) sowie deren
Anzeige über SPI auf einfachen Displays. Im Verlauf des Buchs entsteht so eine Bibliothek
deren Funktionen für eigene Projekte auf einfache Weise eingesetzt werden können. Die Beispiele
werden auf dem Evaluierungsboard NUCLEO-64 mit dem STM32F446 unter Einsatz der
STM32CubeIDE-Entwicklungsumgebung entwickelt und getestet. Grundlegende Kenntnisse der
Programmiersprache C werden vorausgesetzt. Alle Beispiele folgen dem MISRA-C-Standard dessen
Anwendung in der Automobilindustrie vorgeschrieben ist. Dieser wird in einem separaten Kapitel
vorgestellt und sorgt für gut verständlichen und somit leicht zu pflegenden Code. Der Fokus
liegt auf der »baremetal«-Programmierung was den Umstieg auf Mikrocontroller anderer
Hersteller erleichtert. Auf den Einsatz der HAL-Bibliothek wird ausdrücklich verzichtet.Aus dem
Inhalt: Typische GPIO-Anwendungen (Input Output Alternative Funktionen) Timer: Systick Basic
General Purpose Advanced Control Timer PWM: Dimmen von LEDs mit Timern A D- und D A-Wandlung
Serielle Kommunikation mit UARTs USARTs I2C SPI Porterweiterung mit I2C (PCF8574) Ansteuerung
von LC-Displays 7-Segment-Anzeigen über SPI (MAX7219) Einsatz einer externen Echtzeituhr (RTC)
DS3231 über I2C