This lists peripheral drivers (drivers for internal parts of the MCU) that exist in Mbed CE. Check these pages carefully: If a MCU's datasheet shows that it has a peripheral, but Mbed does not list a driver for that peripheral, then the peripheral will not be accessible via Mbed APIs on that MCU.
Name | Mbed Internal Name | Description |
---|---|---|
Reset Reason | DEVICE_RESET_REASON |
Support for determining the cause of the most recent MCU reset. |
Octal SPI | DEVICE_OSPI |
Octal SPI peripheral driver, usually used to communicate with flash memory chips. OSPI uses 8 bidirectional data lines and one clock line, plus optionally a CS line and a DQS line. |
Low-Precision Ticker | DEVICE_LPTICKER |
Also known as the Low-Power Ticker, this peripheral keeps time at a low-frequency clock (usually 32kHz) and generates events for the application. Usually it is used to implement low power sleep. |
True Random Number Generator | DEVICE_TRNG |
Cryptographic-grade True Random Number Generator (TRNG). This is required to implement SSL communications securely unless you provision devices with an entropy seed stored in nonvolatile storage. |
ITM | DEVICE_ITM |
Driver for for ARM Instrumentation Trace Macrocell (ITM). Basically a fast serial port designed for application logging and tracing that runs over the SWO pin. |
GPIO Port Input | DEVICE_PORTIN |
Driver for reading from an entire GPIO port at a time |
I2C Controller/Master | DEVICE_I2C |
I2C driver for synchronous (blocking) controller/master mode |
Legacy Async Serial (UART) | DEVICE_SERIAL_ASYNCH |
Legacy asynchronous serial API via SerialBase |
CAN | DEVICE_CAN |
Controller Area Network (CAN) peripheral driver |
SPI Controller/Master | DEVICE_SPI |
Serial Peripheral Interface (SPI) controller/master mode |
Analog Outputs | DEVICE_ANALOGOUT |
Analog output (DAC) peripheral driver |
GPIO Port Output | DEVICE_PORTOUT |
Driver for writing to an entire GPIO port at a time |
μs Ticker | DEVICE_USTICKER |
Clock peripheral with at least microsecond resolution that Mbed uses to implement Timer and Ticker. |
Ethernet MAC | DEVICE_EMAC |
Ethernet MAC peripheral driver. Combine the MAC with a PHY chip to connect to Ethernet networks. |
Quad SPI | DEVICE_QSPI |
Quad SPI peripheral, usually used to communicate with flash memory chips. Has 4 bidirectional data lines and one clock line, plus optionally a CS line. |
Watchdog | DEVICE_WATCHDOG |
Peripheral which resets the chip if software doesn't service it within a configurable amount of time. Used to guard against software hangs. |
Serial (UART) | DEVICE_SERIAL |
Support for buffered and unbuffered serial (UART) ports |
Semihost Debug Aware | DEVICE_DEBUG_AWARENESS |
Target supports awareness of whether semihost is attached |
Analog Inputs | DEVICE_ANALOGIN |
Analog input (ADC) peripheral driver |
Async I2C Controller/Master | DEVICE_I2C_ASYNCH |
Driver allowing I2C controller mode to be used in the background via interrupts and/or DMA. |
I2C Peripheral/Slave | DEVICE_I2CSLAVE |
I2C for interrupt-based peripheral/slave mode |
Serial RTS/CTS Flow Control | DEVICE_SERIAL_FC |
Serial (UART) peripheral supports using RTS and/or CTS pins for hardware flow control. |
Hardware CRC | DEVICE_CRC |
Driver for CRC Accelerator peripheral, used to accelerate certain CRC computations. |
Sleep | DEVICE_SLEEP |
Support for sending the processor to sleep when no threads/ISRs are executing. |
GPIO Interrupts | DEVICE_INTERRUPTIN |
GPIO input pin interrupt support |
802.15.4 Radio | DEVICE_802_15_4_PHY |
802.15.4 radio driver, used to implement mesh networking (Wi-SUN, Thread, LoWPAN) |
GPIO Port I/O | DEVICE_PORTINOUT |
Driver for using an entire GPIO port as a bidirectional I/O port. |
Async SPI | DEVICE_SPI_ASYNCH |
Allows use of SPI controller mode in the background via interrupts and/or DMA. |
SPI Peripheral/Slave | DEVICE_SPISLAVE |
Serial Peripheral Interface (SPI) device/slave mode |
PWM Out | DEVICE_PWMOUT |
Pulse Width Modulation (PWM) generator peripheral driver |
USB Device | DEVICE_USBDEVICE |
USB Device peripheral. Allows the Mbed target to act as a USB device when connected to a host computer. |
Memory Protection Unit | DEVICE_MPU |
Mbed supports configuring the MPU on this device to disable writing to ROM and executing from RAM. |
Flash IAP | DEVICE_FLASH |
Driver allowing In-Application Programming (IAP) of the MCU flash memory. |
RTC | DEVICE_RTC |
Real-Time Clock. Clock which keeps track of real world time, usually using a low frequency, accurate clock. |
Larger Mbed OS optional features supported for certain targets.
Name | Mbed Internal Name | Description |
---|---|---|
Arm Platform Security Architecture (PSA) | FEATURE_PSA |
Feature representing support for the Arm PSA Root of Trust peripheral. This provides a secure storage environment, cryptography acceleration, secure boot and updates, and more. |
Experimental API | FEATURE_EXPERIMENTAL_API |
Feature flag to enable Mbed OS experimental API features, including driver virtual base classes and PSA. |
Bluetooth Low Energy | FEATURE_BLE |
This feature enables Mbed's BLE stack. |
Arm CryptoCell 310 | FEATURE_CRYPTOCELL310 |
Embedded security peripheral providing TRNG and H/W accelerated encryption algorithms. |
This lists drivers which support external components (or in some cases co-processors) which are present on a target board so that they are supported out of the box.
Name | Mbed Internal Name | Description |
---|---|---|
Semtech SX1276 | COMPONENT_SX1276 |
LoRa Connect™ 137-1020MHz Transceiver |
SD/SDHC Card | COMPONENT_SD |
Component for SD card support via the SPI bus. |
SFDP SPI Flash | COMPONENT_SPIF |
Component for generic SPI flashes supporting the SFDP standard |
Infineon CYW43012 | COMPONENT_43012 |
Infineon/Cypress AIROC Wifi 802.11n (2.4GHz and 5GHz) + BT 5.4 module |
Infineon CYW4343W | COMPONENT_4343W |
Infineon/Cypress AIROC Wifi 802.11n (2.4GHz) + BT 5.3 module |
Telit ME910 | COMPONENT_TELIT_ME910 |
LTE + GSM + GNSS module |
Microchip LAN9220 | COMPONENT_SMSC9220 |
Parallel bus-connected Ethernet MAC/PHY |
Infineon Wifi Host Driver | COMPONENT_WHD |
Generic component for the driver for Infineon/Cypress wifi modules. Works in combination with other components. |
PSoC CM0 in Security Mode | COMPONENT_CM0P_SECURE |
Used on Cypress PSoC 64 dual core processors with secure boot. When enabled, activates the Cortex-M0 coprocessor as a security coprocessor. |
STMicro LIS2DH12 | COMPONENT_lis2dh12 |
Low power 3-axis accelerometer |
Infineon CYW43438 | COMPONENT_43438 |
Infineon/Cypress AIROC Wifi 802.11n (2.4GHz) + BT 5.3 module |
STMicro BlueNRG-MS | COMPONENT_BlueNRG_MS |
Bluetooth 4.2 module |
MXChip EMW3080B | COMPONENT_EMW3080B |
Wifi 802.11b/g/n module (driver available for STM32 targets only) |
Himax HM01B0 | COMPONENT_hm01b0 |
320x320 monochrome camera module |
PSoC CM0 in Sleep Mode | COMPONENT_CM0P_SLEEP |
Used on Cypress PSoC6 dual core processors. When enabled, this activates the Cortex-M0 coprocessor in sleep mode. |
SFDP Octal SPI Flash | COMPONENT_OSPIF |
Component for generic Octal SPI flashes supporting the SFDP standard |
Telit HE910 | COMPONENT_TELIT_HE910 |
3G module |
SFDP QuadSPI Flash | COMPONENT_QSPIF |
Component for generic QuadSPI flashes supporting the SFDP standard |
Infineon CYW43XXX | COMPONENT_CYW43XXX |
Generic component for Infineon/Cypress AIROC Wifi modules. Add one of the specific part number components to get configs + firmware for your device. |
Multitech Dragonfly Nano Cellular | COMPONENT_MULTITECH_DRAGONFLY_NANO_CELLULAR |
Cellular module from this Multitech board. I have been unable to figure out its exact part number from the available docs... |
TFM Secure Firmware | COMPONENT_TFM_S_FW |
Component for devices with a separate firmware image that must be merged for the TFM Secure processor. |
Infineon CYW4343W (Arduino Portenta variant) | COMPONENT_4343W_FS |
Infineon/Cypress AIROC Wifi 802.11n (2.4GHz) + BT 5.3 module |
Telit ME310 | COMPONENT_TELIT_ME310 |
LTE + GSM + GNSS module |
LocalFileSystem | COMPONENT_LOCALFILESYSTEM |
Mbed interface chip on the board can store a local filesystem and make it available on the USB drive |