| Crates.io | gc9a01a_driver |
| lib.rs | gc9a01a_driver |
| version | 1.0.0 |
| created_at | 2024-07-29 22:10:26.415195+00 |
| updated_at | 2024-09-12 11:20:35.90251+00 |
| description | Display Driver to Support for GC9A01A LCD 1.28 inch with embedded-graphics support |
| homepage | |
| repository | https://github.com/GordonCox/gc9a01a_driver.git |
| max_upload_size | |
| id | 1319251 |
| size | 34,643 |
This crate provides a driver for the GC9A01A display, enabling basic operations such as initialization, clearing the screen, setting pixels, drawing images, and displaying buffers. The driver is built using the embedded-hal and embedded-graphics crates to ensure compatibility with various embedded platforms. The crate has been updated to accommodate the latest versions of embedded-hal and embedded-graphics.
With the release of version 1.0.0, the crate now includes support for the updated embedded-hal 1.0.0 and embedded-graphics 0.8.1. This update ensures better compatibility and performance for modern embedded projects.
Key changes:
1.0.0, which introduces new traits and API changes for hardware abstraction.0.8.1, providing improved rendering capabilities and API adjustments for embedded graphics.toml
Copy code
[dependencies] embedded-hal = { version = "1.0.0" } embedded-graphics = { version = "0.8.1" }
For projects that still rely on the older version of the crate, version 0.3.2 continues to provide compatibility with embedded-hal 0.2 and embedded-graphics 0.7.1. This is useful for maintaining projects that use older libraries or hardware.
toml
Copy code
[dependencies] embedded-hal = { version = "0.2" } embedded-graphics = { version = "0.7.1" }
To upgrade from version 0.3.2 to 1.0.0, you'll need to adjust your project's dependencies and refactor the code to account for any API changes in the dependencies, especially with embedded-hal.
To use this crate, add the following dependencies to your Cargo.toml:
embedded-halembedded-graphicsgc9a01a_driverThe GC9A01A struct provides methods to interact with the display. Key methods include:
new: Creates a new instance of the GC9A01A driver.init: Initializes the display with a given delay provider.set_orientation: Sets the display orientation.clear_screen: Clears the screen with a specific color.write_pixel: Sets the color of a single pixel.draw_image: Draws an image from a slice of RGB565 data.show: Displays the provided buffer on the screen.show_region: Updates only the specified region of the display with the provided buffer.The FrameBuffer struct represents a frame buffer and includes methods to manipulate it:
new: Creates a new frame buffer.get_buffer: Returns a reference to the buffer.clear: Clears the frame buffer with the specified color.copy_region: Copies a region from another buffer into this buffer.Contributions are welcome! Please feel free to submit a pull request or open an issue.
This project is licensed under the MIT License - see the LICENSE file for details.