#ifndef __DES_EPD_IMPL_H #define __DES_EPD_IMPL_H // SPIDEV #include #include #include #include #include // LIBGPIOD #include // USER #include "gdew0213m21_epd.h" #include "config.h" typedef struct { int spi_fd; struct gpiod_chip *gpio_chip; struct gpiod_line *gpio_line_res; struct gpiod_line *gpio_line_dc; struct gpiod_line *gpio_line_busy; } _des_impl_t; _des_impl_t *_des_epd_impl_init(void); int _des_epd_impl_deinit(_des_impl_t *handle); des_epd_ret_t _des_epd_write_cmd(void *handle, uint8_t *cmd, uint8_t len); des_epd_ret_t _des_epd_write_data(void *handle, uint8_t *data, uint16_t len); des_epd_ret_t _des_epd_reset(void *handle); des_epd_ret_t _des_epd_poll_busy(void *handle); #endif