Bare-metal drivers for the STM32F411RE in C
Self-written peripheral drivers for the STM32F411RE microcontroller, without HAL and CMSIS. The project followed the Udemy course "Mastering Microcontroller with Embedded Driver Development".
What it is
Register definitions and drivers for GPIO, I2C, SPI, USART and RCC, written directly against the registers in the datasheet. The drivers support both polling and interrupt driven operation, and are tried out with small example programs on a Nucleo-F411RE board.
- GPIO with external interrupts (EXTI)
- I2C master talking to an Arduino slave, in polling and interrupt mode
- SPI and USART, including printf over USART2
- Examples from blinking an LED to communication between the STM32 and an Arduino
Links
Source code on GitHub ↗ The Udemy course ↗ Course certificate ↗