Part 5: Device Drivers

This section covers Zephyr’s device driver model and common peripheral interfaces.

What You’ll Learn

  • Zephyr’s device driver architecture
  • Device tree bindings for drivers
  • GPIO, I2C, SPI, and UART APIs
  • Writing custom device drivers

Chapters

Chapter Description
Driver Model Device architecture and APIs
Device Tree Bindings Connecting DTS to drivers
GPIO Digital I/O and interrupts
I2C I2C bus communication
SPI SPI bus communication
UART Serial communication
Custom Drivers Writing your own drivers

Driver Architecture

flowchart TB
    APP[Application] --> API[Device API]
    API --> DRIVER[Driver Implementation]
    DRIVER --> DT[Device Tree Config]
    DRIVER --> HW[Hardware Registers]

    subgraph Subsystems
        GPIO[GPIO Subsystem]
        I2C[I2C Subsystem]
        SPI[SPI Subsystem]
    end

    API --> Subsystems

Understanding the driver model is essential for working with hardware in Zephyr.


Table of contents


Back to top

Zephyr RTOS Programming Guide is not affiliated with the Zephyr Project or Linux Foundation. Content is provided for educational purposes.

This site uses Just the Docs, a documentation theme for Jekyll.