Custom LCD Driver Development for STM32 Microcontroller (HD44780 16x2 in 4-bit mode)
This project demonstrates the development of a custom driver to interface an HD44780-compatible 16x2 character LCD with an STM32 microcontroller .
this driver is written from scratch to provide a deeper understanding of:
- Bitwise manipulation
- LCD command protocols
- Embedded C modular design
- β 4-bit communication mode (saves GPIO pins)
- β Send commands and data to the LCD
- β Display and cursor shift functionality
- β Entry mode configuration
- β Display ON/OFF, cursor ON/OFF, blink control
- β Clear display and return home functions
- β Modular code for easy reuse and portability
- Microcontroller: STM32 (tested on STM32F303RE "nucleo")
- Display: HD44780 16x2 LCD
- Language: Embedded C
- IDE: STM32CubeIDE
- No HAL LCD utility used β fully custom implementation