MakerLabs ACM
u8g2_esp32_hal.h
Go to the documentation of this file.
1 /*
2  * u8g2_esp32_hal.h
3  *
4  * Created on: Feb 12, 2017
5  * Author: kolban
6  */
7 
8 #ifndef U8G2_ESP32_HAL_H_
9 #define U8G2_ESP32_HAL_H_
10 
11 #ifdef __cplusplus
12 extern "C" {
13 #endif // __cplusplus
14 #include "u8g2.h"
15 #ifdef __cplusplus
16 }
17 #endif // __cplusplus
18 
19 #include "driver/gpio.h"
20 #include "driver/spi_master.h"
21 #include "driver/i2c.h"
22 
23 #define U8G2_ESP32_HAL_UNDEFINED ((gpio_num_t)(-1))
24 
25 #define I2C_MASTER_NUM I2C_NUM_1
26 #define I2C_MASTER_TX_BUF_DISABLE 0
27 #define I2C_MASTER_RX_BUF_DISABLE 0
28 //#define I2C_MASTER_FREQ_HZ 50000
29 #define I2C_MASTER_FREQ_HZ 100000
30 #define ACK_CHECK_EN 0x1
31 #define ACK_CHECK_DIS 0x0
33 typedef struct {
34  gpio_num_t clk;
35  gpio_num_t mosi;
36  gpio_num_t sda; // data for I²C
37  gpio_num_t scl; // clock for I²C
38  gpio_num_t cs;
39  gpio_num_t reset;
40  gpio_num_t dc;
42 
43 #define U8G2_ESP32_HAL_DEFAULT {U8G2_ESP32_HAL_UNDEFINED, U8G2_ESP32_HAL_UNDEFINED, U8G2_ESP32_HAL_UNDEFINED, U8G2_ESP32_HAL_UNDEFINED, U8G2_ESP32_HAL_UNDEFINED, U8G2_ESP32_HAL_UNDEFINED, U8G2_ESP32_HAL_UNDEFINED }
44 
45 void u8g2_esp32_hal_init(u8g2_esp32_hal_t u8g2_esp32_hal_param);
46 uint8_t u8g2_esp32_msg_comms_cb(u8x8_t *u8x8, uint8_t msg, uint8_t arg_int, void *arg_ptr);
47 uint8_t u8g2_esp32_msg_gpio_and_delay_cb(u8x8_t *u8x8, uint8_t msg, uint8_t arg_int, void *arg_ptr);
48 uint8_t u8g2_esp32_msg_i2c_cb(u8x8_t *u8x8, uint8_t msg, uint8_t arg_int, void *arg_ptr);
49 uint8_t u8g2_esp32_msg_i2c_and_delay_cb(u8x8_t *u8x8, uint8_t msg, uint8_t arg_int, void *arg_ptr);
50 #endif /* U8G2_ESP32_HAL_H_ */
uint8_t u8g2_esp32_msg_comms_cb(u8x8_t *u8x8, uint8_t msg, uint8_t arg_int, void *arg_ptr)
Definition: u8g2_esp32_hal.cpp:31
gpio_num_t dc
Definition: u8g2_esp32_hal.h:40
gpio_num_t scl
Definition: u8g2_esp32_hal.h:37
uint8_t u8g2_esp32_msg_i2c_cb(u8x8_t *u8x8, uint8_t msg, uint8_t arg_int, void *arg_ptr)
Definition: u8g2_esp32_hal.cpp:100
void u8g2_esp32_hal_init(u8g2_esp32_hal_t u8g2_esp32_hal_param)
Definition: u8g2_esp32_hal.cpp:23
uint8_t u8g2_esp32_msg_i2c_and_delay_cb(u8x8_t *u8x8, uint8_t msg, uint8_t arg_int, void *arg_ptr)
Definition: u8g2_esp32_hal.cpp:232
gpio_num_t cs
Definition: u8g2_esp32_hal.h:38
gpio_num_t clk
Definition: u8g2_esp32_hal.h:34
uint8_t u8g2_esp32_msg_gpio_and_delay_cb(u8x8_t *u8x8, uint8_t msg, uint8_t arg_int, void *arg_ptr)
Definition: u8g2_esp32_hal.cpp:188
gpio_num_t sda
Definition: u8g2_esp32_hal.h:36
gpio_num_t mosi
Definition: u8g2_esp32_hal.h:35
gpio_num_t reset
Definition: u8g2_esp32_hal.h:39
Definition: u8g2_esp32_hal.h:33