STM32

Das umfassende Praxisbuch.ARM-Mikrocontroller programmieren für Embedded Systems

Ralf Jesse

Diese Publikation zitieren

Ralf Jesse, STM32 (2022), mitp-Verlag, Frechen, ISBN: 9783747504536

2618
Accesses
35
Quotes

Beschreibung / Abstract




  • 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


Beschreibung

Ralf Jesse ist Diplom-Ingenieur der Elektrotechnik mit mehr als 30 Jahren beruflicher Praxis im Einsatz von Mikroprozessoren und -controllern. Nach ersten Erfahrungen als Entwicklungsingenieur in einem Maschinenbau-Unternehmen folgten mehr als 20 Jahre als Software-Ingenieur in einem großen japanischen Konzern.

Inhaltsverzeichnis

  • Cover
  • Titel
  • Impressum
  • Inhaltsverzeichnis
  • Einleitung
  • Worum es geht
  • Warum STM32F4?
  • Zielgruppe dieses Buches
  • Voraussetzungen
  • Aufbau des Buches
  • Einsatz von Bibliotheken?
  • Entwicklungsumgebungen
  • Hinweis zu den Prozessorregistern
  • Support
  • Anmerkungen des Autors
  • Teil I: Grundlagen
  • Kapitel 1: STM32F4xx-Mikrocontroller
  • Kapitel 2: CMSIS und MCAL erstellen, der Bootprozess, Anwendung der CMSIS
  • Kapitel 3: Embedded C vs. Standard C
  • Kapitel 4: RCC, SYSCFG und SCB
  • Kapitel 5: Einstellung von Taktfrequenzen
  • Teil II: Kernkomponenten der STM32F4xx-Mikrocontroller
  • Kapitel 6: GPIO: General Purpose Input/Output
  • Kapitel 7: Polling, Interrupts und Exceptions
  • Kapitel 8: Alternative GPIO-Funktionen
  • Kapitel 9: System Tick Timer (SysTick)
  • Kapitel 10: Timer-Grundlagen und Basic Timer
  • Kapitel 11: General-Purpose Timer (GP-Timer)
  • Kapitel 12: Advanced-Control Timer
  • Kapitel 13: Digital-Analog-Konverter
  • Kapitel 14: Analog-Digital-Wandlung
  • Teil III: Serielle Schnittstellen
  • Kapitel 15: Serielle Kommunikation
  • Kapitel 16: UARTs und USARTs
  • Kapitel 17: Inter-Integrated Circuit I²C
  • Kapitel 18: Serial Peripheral Interface SPI
  • Teil IV: Weitere Komponenten
  • Kapitel 19: Direct Memory Access (DMA)
  • Kapitel 20: Watchdog
  • Anhang A: Internetadressen und Literaturnachweise
  • A.1 Literaturnachweise
  • A.2 Infos zur STM32F4xx-Familie
  • A.3 Programmierung in C
  • A.4 Tastaturkürzel von STM32CubeIDE
  • A.5 Internettutorials
  • A.6 Support
  • Anhang B: Dokumentation der MCAL
  • B.1 Grundlegender Aufbau der Dokumentation
  • B.2 Erläuterung einzelner Funktionen
  • Anhang C: Einführung in das Debuggen
  • C.1 Debugger einrichten
  • C.2 Variablen »beobachten«
  • C.3 Anzeige von Prozessorregistern
  • C.4 Anzeige von SRAM-Inhalten
  • C.5 Vorsicht bei Watchdogs!
  • C.6 Ein weiteres tolles Feature
  • Stichwortverzeichnis

Mehr von dieser Serie

    Ähnliche Titel

      Mehr von diesem Autor