1234567891011121314151617181920212223242526272829303132 |
- #ifndef _CST816D_H
- #define _CST816D_H
- #include "driver/i2c.h"
- #include "driver/gpio.h"
- #define I2C_ADDR_CST816D 0x15
- // Gestures
- typedef enum {
- None = 0x00, // No gesture
- SlideDown = 0x01, // Slide down
- SlideUp = 0x02, // Slide up
- SlideLeft = 0x03, // Slide left
- SlideRight = 0x04, // Slide right
- SingleTap = 0x05, // Single tap
- DoubleTap = 0x0B, // Double tap
- LongPress = 0x0C // Long press
- } GESTURE_t;
- typedef struct {
- int sda_pin;
- int scl_pin;
- int rst_pin;
- int int_pin;
- i2c_port_t i2c_port;
- } CST816D_t;
- void CST816D_init(CST816D_t *dev);
- bool CST816D_getTouch(CST816D_t *dev, uint16_t *x, uint16_t *y, uint8_t *gesture);
- #endif
|