hd44780-hal
Implementation of the embedded-hal
traits for the HD44780.
Documentation
Examples
Currently there are basic examples for Raspberry Pi as well as the Adafruit Metro Express M0 as those are the devices I currently have on hand.
Any platform that implements the embedded-hal traits is supported by this library! :thumbsup:
Example usage
This library is pretty bare bones at the moment, but it's greatest feature is that all you need to do to use it is supply the HD44780::new
function a bunch of pins that implement the OutputPin
trait for embedded-hal as well as a struct that implements delay with support for DelayUs<u16> + DelayMs<u8>
also from embedded-hal.
// Code grabbed from the metro_m0 example
let mut lcd = HD44780 new;
lcd.reset;
lcd.clear;
lcd.set_display_mode;
lcd.write_str;
Todo
- 4 bit mode
- Busy flag support (Waiting for support from embedded-hal to read and write from a pin)
- Non-blocking API
- A more user-friendly API with additional features
- Custom characters
Additional issues as well as pull-requests are welcome!
License
This project is licensed under MIT license (LICENSE or https://opensource.org/licenses/MIT)