main/u8g2_esp32_hal.h

Sat, 23 Nov 2019 21:43:14 +0100

author
Michiel Broek <mbroek@mbse.eu>
date
Sat, 23 Nov 2019 21:43:14 +0100
changeset 37
358bbd5b608e
parent 35
090b9d36b7a1
child 57
232f318a6b51
permissions
-rw-r--r--

menuconfig settings now work for I2C display setup. Lot's of code cleanup.

30
8b630bf52092 Shorter lock times.
Michiel Broek <mbroek@mbse.eu>
parents: 0
diff changeset
1 /**
8b630bf52092 Shorter lock times.
Michiel Broek <mbroek@mbse.eu>
parents: 0
diff changeset
2 * @file u8g2_esp32_hal.h
8b630bf52092 Shorter lock times.
Michiel Broek <mbroek@mbse.eu>
parents: 0
diff changeset
3 * @date Feb 12, 2017
8b630bf52092 Shorter lock times.
Michiel Broek <mbroek@mbse.eu>
parents: 0
diff changeset
4 * @author kolban
0
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
5 */
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
6
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
7 #ifndef U8G2_ESP32_HAL_H_
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
8 #define U8G2_ESP32_HAL_H_
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
9 #include "u8g2.h"
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
10
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
11 #include "driver/gpio.h"
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
12 #include "driver/spi_master.h"
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
13 #include "driver/i2c.h"
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
14
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
15 #define U8G2_ESP32_HAL_UNDEFINED (-1)
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
16
37
358bbd5b608e menuconfig settings now work for I2C display setup. Lot's of code cleanup.
Michiel Broek <mbroek@mbse.eu>
parents: 35
diff changeset
17 #define I2C_MASTER_NUM (CONFIG_I2C_MASTER_PORT_NUM) ///< I2C port number for master dev (original 1)
30
8b630bf52092 Shorter lock times.
Michiel Broek <mbroek@mbse.eu>
parents: 0
diff changeset
18 #define I2C_MASTER_TX_BUF_DISABLE 0 ///< I2C master do not need buffer
8b630bf52092 Shorter lock times.
Michiel Broek <mbroek@mbse.eu>
parents: 0
diff changeset
19 #define I2C_MASTER_RX_BUF_DISABLE 0 ///< I2C master do not need buffer
37
358bbd5b608e menuconfig settings now work for I2C display setup. Lot's of code cleanup.
Michiel Broek <mbroek@mbse.eu>
parents: 35
diff changeset
20 #define I2C_MASTER_FREQ_HZ (CONFIG_I2C_MASTER_FREQUENCY) ///< I2C master clock frequency (original 50000)
30
8b630bf52092 Shorter lock times.
Michiel Broek <mbroek@mbse.eu>
parents: 0
diff changeset
21 #define ACK_CHECK_EN 0x1 ///< I2C master will check ack from slave
8b630bf52092 Shorter lock times.
Michiel Broek <mbroek@mbse.eu>
parents: 0
diff changeset
22 #define ACK_CHECK_DIS 0x0 ///< I2C master will not check ack from slave
0
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
23
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
24 typedef struct {
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
25 gpio_num_t clk;
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
26 gpio_num_t mosi;
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
27 gpio_num_t sda; // data for I²C
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
28 gpio_num_t scl; // clock for I²C
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
29 gpio_num_t cs;
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
30 gpio_num_t reset;
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
31 gpio_num_t dc;
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
32 } u8g2_esp32_hal_t ;
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
33
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
34 #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 }
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
35
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
36 void u8g2_esp32_hal_init(u8g2_esp32_hal_t u8g2_esp32_hal_param);
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
37 uint8_t u8g2_esp32_spi_byte_cb(u8x8_t *u8x8, uint8_t msg, uint8_t arg_int, void *arg_ptr);
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
38 uint8_t u8g2_esp32_i2c_byte_cb(u8x8_t *u8x8, uint8_t msg, uint8_t arg_int, void *arg_ptr);
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
39 uint8_t u8g2_esp32_gpio_and_delay_cb(u8x8_t *u8x8, uint8_t msg, uint8_t arg_int, void *arg_ptr);
88d965579617 Initial import of the CO2 meter application.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
40 #endif /* U8G2_ESP32_HAL_H_ */

mercurial