The CMSIS-Driver specification defines a uniform software API for peripheral driver interfaces that can be used by middleware stacks and user applications.
This documentation covers a set of reference CMSIS-Driver implementations for external peripheral devices.
The implementations are maintained in a public GitHub repository. Their releases in CMSIS Pack format are also available on CMSIS Packs page under Arm - CMSIS Drivers for external devices category and can be used in environments supporting the CMSIS-Pack concept.
Interested parties are welcome to contribute their drivers to the referenced repository.
The ARM::CMSIS-Driver Pack contains the following items:
File/Directory | Content |
---|---|
ARM.CMSIS-Driver.pdsc | Package description file in CMSIS-Pack format. |
LICENSE | CMSIS license agreement (Apache 2.0) |
Config/ | Configuration files for I2C, NAND, and SPI bus implementations |
Documentation/ | This documentation |
Ethernet/ | Ethernet driver implementations |
Ethernet_PHY/ | Ethernet PHY driver implementations |
Flash/ | Flash memory driver implementations |
I2C/ | I2C driver implementations |
NAND/ | NAND driver implementations |
Shield/ | Shield layer implementations |
SPI/ | SPI driver implementations |
USB/ | USB driver implementations |
WiFi/ | WiFi driver implementations |
The CMSIS Driver example implementations are provided free of charge under Apache 2.0 license. See the Apache 2.0 License.