Crate esp32_hal

source ·
Expand description

no_std HAL for the ESP32 from Espressif.

Implements a number of the traits defined by the various packages in the embedded-hal repository.

Modules

  • Analog to digital (ADC) conversion support.
  • Advanced Encryption Standard (AES) support.
  • Common module for analog functions
  • Clock Control
  • Control CPU Cores (ESP32)
  • Digital to analog (DAC) conversion.
  • Delay driver
  • Direct Memory Access Commons
  • Reading of eFuses (ESP32)
  • General Purpose I/Os
  • I2C Driver
  • I2S Master
  • Interrupt support
  • LEDC (LED PWM Controller) peripheral control
  • Procedural macros for placing statics and functions into RAM, and for marking interrupt handlers.
  • MCPWM (Motor Control Pulse Width Modulator) peripheral
  • Pulse Counter peripheral driver
  • Exclusive peripheral access
  • Peripheral instance singletons (ESP32)
  • The prelude
  • PSRAM “virtual peripheral” driver (ESP32)
  • Wireless communication peripheral implementations
  • Hardware and Software Reset
  • Remote Control Peripheral (RMT)
  • Random Number Generator
  • ESP ROM libraries
  • RSA Accelerator support.
  • RTC_CNTL (Real-Time Clock Control) and Low-power Management
  • Secure Hash Algorithm peripheral driver
  • Serial Peripheral Interface
  • System Control
  • General-purpose timers
  • State of the CPU saved when entering exception or interrupt
  • Two-wire Automotive Interface (TWAI)
  • UART driver

Macros

Structs

  • Delay driver
  • FlashSafeDma
  • General Purpose Input/Output driver
  • RMT Instance
  • Random number generator driver
  • Low-power Management
  • RTC Watchdog Timer
  • SPI peripheral driver
  • General-purpose Timer driver
  • UART driver

Enums

  • Available CPU cores

Functions

  • Which core the application is currently executing on

Attribute Macros

  • Marks a function as the main function to be called on program start