Repo for ESP32 Weather Station Development
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

72 lines
2.3KB

  1. /*
  2. STMPE610 Touch controller constants
  3. */
  4. #ifndef _STMPE610_H
  5. #define _STMPE610_H
  6. #include <stdint.h>
  7. #define STMPE610_SPI_MODE 1
  8. // Identification registers
  9. #define STMPE610_REG_CHP_ID 0x00 // 16-bit
  10. #define STMPE610_REG_ID_VER 0x02
  11. // System registers
  12. #define STMPE610_REG_SYS_CTRL1 0x03
  13. #define STMPE610_REG_SYS_CTRL2 0x04
  14. #define STMPE610_REG_SPI_CFG 0x08
  15. // Interrupt control registers
  16. #define STMPE610_REG_INT_CTRL 0x09
  17. #define STMPE610_REG_INT_EN 0x0A
  18. #define STMPE610_REG_INT_STA 0x0B
  19. #define STMPE610_REG_GPIO_INT_EN 0x0C
  20. #define STMPE610_REG_GPIO_INT_STA 0x0D
  21. #define STMPE610_REG_ADC_INT_EN 0x0E
  22. #define STMPE610_REG_ADC_INT_STA 0x0F
  23. // GPIO registers
  24. #define STMPE610_REG_GPIO_SET_PIN 0x10
  25. #define STMPE610_REG_GPIO_CLR_PIN 0x11
  26. #define STMPE610_REG_GPIO_MP_STA 0x12
  27. #define STMPE610_REG_GPIO_DIR 0x13
  28. #define STMPE610_REG_GPIO_ED 0x14
  29. #define STMPE610_REG_GPIO_RE 0x15
  30. #define STMPE610_REG_GPIO_FE 0x16
  31. #define STMPE610_REG_GPIO_AF 0x17
  32. // ADC registers
  33. #define STMPE610_REG_ADC_CTRL1 0x20
  34. #define STMPE610_REG_ADC_CTRL2 0x21
  35. #define STMPE610_REG_ADC_CAPT 0x22
  36. #define STMPE610_REG_ADC_DATA_CH0 0x30 // 16-bit
  37. #define STMPE610_REG_ADC_DATA_CH1 0x32 // 16-bit
  38. #define STMPE610_REG_ADC_DATA_CH4 0x38 // 16-bit
  39. #define STMPE610_REG_ADC_DATA_CH5 0x3A // 16-bit
  40. #define STMPE610_REG_ADC_DATA_CH6 0x3C // 16-bit
  41. #define STMPE610_REG_ADC_DATA_CH7 0x3E // 16-bit
  42. // Touchscreen registers
  43. #define STMPE610_REG_TSC_CTRL 0x40
  44. #define STMPE610_REG_TSC_CFG 0x41
  45. #define STMPE610_REG_WDW_TR_X 0x42 // 16-bit
  46. #define STMPE610_REG_WDW_TR_Y 0x44 // 16-bit
  47. #define STMPE610_REG_WDW_BL_X 0x46 // 16-bit
  48. #define STMPE610_REG_WDW_BL_Y 0x48 // 16-bit
  49. #define STMPE610_REG_FIFO_TH 0x4A
  50. #define STMPE610_REG_FIFO_STA 0x4B
  51. #define STMPE610_REG_FIFO_SIZE 0x4C
  52. #define STMPE610_REG_TSC_DATA_X 0x4D // 16-bit
  53. #define STMPE610_REG_TSC_DATA_Y 0x4F // 16-bit
  54. #define STMPE610_REG_TSC_DATA_Z 0x51
  55. #define STMPE610_REG_TSC_DATA_XYZ 0x52 // 32-bit
  56. #define STMPE610_REG_TSC_FRACT_XYZ 0x56
  57. #define STMPE610_REG_TSC_DATA 0x57
  58. #define STMPE610_REG_TSC_I_DRIVE 0x58
  59. #define STMPE610_REG_TSC_SHIELD 0x59
  60. #endif /* _STMPE610_H */