Hardware independent HD44780 LCD library written in Rust
The library's goal is to provide a high level interface to control HD44780 compliant LCD displays. It does not rely on std
and therefore it should work on PCs as well as on embedded devices. Its main goal is to provide all features defined in the HD44780 spec.
This library is actively maintained and most of the features described in the HD44780 spec are implemented. The current work mainly concentrates on providing a first stable version.
- Clear display
- Return home (but is possible via
seek()
) - Entry mode settings
- Cursor and display shift
- Function set
- Display control settings
- Set DDRAM address (high level interface via
seek()
) - Set CGRAM address
- Read/write DDRAM
- Read/write CGRAM (create custom characters)
- Read busy flag and cursor address
- more unit and integration testing
- error handling
- feature flags to allow additional (high level) functions
- conditional compilation for different hardware variants (read-only, read-write)
- test on different targets (currently only tested on Raspberry Pi)
Have a look at the How-to for a detailed description on getting started with clerk
on a RaspberryPi.
If you have any questions, just create a ticket or ping me on Mozillas IRC channels #rust
or rust-embedded
.
All kinds of contributions are highly welcome (see TODOs). Create tickets with feature requests, design ideas and so on. You can also find me on Mozillas IRC channel #rust
and #rust-embedded
.
This project is licensed under MIT license (LICENSE or https://opensource.org/licenses/MIT)