hd44780-controller

Crates.iohd44780-controller
lib.rshd44780-controller
version0.1.0-alpha.2
created_at2025-04-18 01:10:26.398308+00
updated_at2025-04-19 13:05:05.300048+00
descriptionHD44780 LCD controller with async/sync support for embedded-hal
homepage
repositoryhttps://github.com/hasunwoo/hd44780-controller
max_upload_size
id1638696
size45,476
hasunwoo (hasunwoo)

documentation

https://docs.rs/hd44780-controller

README

hd44780-controller

A no_std-compatible controller for the HD44780 LCD controller written in Rust.
This library supports both sync and async interfaces and is designed to be minimal and flexible.

This crate does not depend on any specific I/O implementation. Instead, you must provide your own implementation of the Device (sync) or AsyncDevice (async) trait.

Currently, only the async Controller and the AsyncDevice implementation for embedded-hal-async-based PCF8574 I²C I/O expander are available.

Support for a sync Controller and CGRAM/CGROM manipulation will be added in the future.


Feature Flags

By default, no features are enabled. To do anything useful, you'll need to enable at least one Device implementation.

For example, to use an async PCF8574 device over I²C, enable the pcf8574-device-async feature.

  • default: (empty)
  • async: Enables async support.
  • fmt: Enables formatted text output via heapless::String.
  • i2c-expander-device: Enables support for generic I²C expander devices (embedded-hal required).
  • i2c-expander-device-async: Enables async I²C expander support (async + embedded-hal-async required).
  • pcf8574-device: Enables support for the PCF8574 I²C I/O expander.
  • pcf8574-device-async: Enables async support for PCF8574.
  • all: Enables all of the above.

License

This project is licensed under the MIT license.
See the LICENSE file for more information.


Commit count: 3

cargo fmt