STMPE610/STMPE811
|
STMPE811_REG_CHIP_ID = $00;
|
Device identification
|
STMPE811_REG_ID_VER = $02;
|
Revision number (0x01 for engineering sample/0x03 for final silicon)
|
STMPE811_REG_SYS_CTRL1 = $03;
|
Reset control
|
STMPE811_REG_SYS_CTRL2 = $04;
|
Clock control
|
STMPE811_REG_SPI_CFG = $08;
|
SPI interface configuration
|
STMPE811_REG_INT_CTRL = $09;
|
Interrupt control register
|
STMPE811_REG_INT_EN = $0A;
|
Interrupt enable register
|
STMPE811_REG_INT_STA = $0B;
|
Interrupt status register
|
|
STMPE811_REG_GPIO_INT_EN = $0C;
|
GPIO interrupt enable register
|
STMPE811_REG_GPIO_INT_STA = $0D;
|
GPIO interrupt status register
|
STMPE811_REG_ADC_INT_EN = $0E;
|
ADC interrupt enable register
|
STMPE811_REG_ADC_INT_STA = $0F;
|
ADC interrupt status register
|
STMPE811_REG_GPIO_SET_PIN = $10;
|
GPIO set pin register
|
STMPE811_REG_GPIO_CLR_PIN = $11;
|
GPIO clear pin register
|
STMPE811_REG_GPIO_MP_STA = $12;
|
GPIO monitor pin state register
|
STMPE811_REG_GPIO_SET_DIR = $13;
|
GPIO direction register
|
STMPE811_REG_GPIO_ED = $14;
|
GPIO edge detect register
|
STMPE811_REG_GPIO_RE = $15;
|
GPIO rising edge register
|
STMPE811_REG_GPIO_FE = $16;
|
GPIO falling edge register
|
STMPE811_REG_GPIO_AF = $17;
|
Alternate function register
|
|
STMPE811_REG_ADC_CTRL1 = $20;
|
ADC control
|
STMPE811_REG_ADC_CTRL2 = $21;
|
ADC control
|
STMPE811_REG_ADC_CAPT = $22;
|
To initiate ADC data acquisition
|
STMPE811_REG_ADC_DATA_CH0 = $30;
|
ADC channel 0
|
STMPE811_REG_ADC_DATA_CH1 = $32;
|
ADC channel 1
|
STMPE811_REG_ADC_DATA_CH2 = $34;
|
ADC channel 2
|
STMPE811_REG_ADC_DATA_CH3 = $36;
|
ADC channel 3
|
STMPE811_REG_ADC_DATA_CH4 = $38;
|
ADC channel 4
|
STMPE811_REG_ADC_DATA_CH5 = $3A;
|
ADC channel 5
|
STMPE811_REG_ADC_DATA_CH6 = $3C;
|
ADC channel 6
|
STMPE811_REG_ADC_DATA_CH7 = $3E;
|
ADC channel 7
|
|
STMPE811_REG_TSC_CTRL = $40;
|
4-wire touchscreen controller setup
|
STMPE811_REG_TSC_CFG = $41;
|
Touchscreen controller configuration
|
STMPE811_REG_WDW_TR_X = $42;
|
Window setup for top right X
|
STMPE811_REG_WDW_TR_Y = $44;
|
Window setup for top right Y
|
STMPE811_REG_WDW_BL_X = $46;
|
Window setup for bottom left X
|
STMPE811_REG_WDW_BL_Y = $48;
|
Window setup for bottom left Y
|
STMPE811_REG_FIFO_TH = $4A;
|
FIFO level to generate interrupt
|
STMPE811_REG_FIFO_STA = $4B;
|
Current status of FIFO
|
STMPE811_REG_FIFO_SIZE = $4C;
|
Current filled level of FIFO
|
STMPE811_REG_TSC_DATA_X = $4D;
|
Data port for touchscreen controller data access
|
STMPE811_REG_TSC_DATA_Y = $4F;
|
Data port for touchscreen controller data access
|
STMPE811_REG_TSC_DATA_Z = $51;
|
Data port for touchscreen controller data access
|
STMPE811_REG_TSC_DATA_XYZ = $52;
|
Data port for touchscreen controller data access
|
STMPE811_REG_TSC_FRACTION_Z = $56;
|
Touchscreen controller FRACTION_Z
|
STMPE811_REG_TSC_DATA = $57;
|
Data port for touchscreen controller data access
|
STMPE811_REG_TSC_I_DRIVE = $58;
|
Touchscreen controller drive I
|
STMPE811_REG_TSC_SHIELD = $59;
|
Touchscreen controller shield
|
|
STMPE811
|
STMPE811_REG_TEMP_CTRL= $60;
|
Temperature sensor setup
|
STMPE811_REG_TEMP_DATA = $61;
|
Temperature data access port
|
STMPE811_REG_TEMP_TH = $62;
|
Threshold for temperature controlled interrupt
|
|
STMPE811_REG_MAX = $62;
|
|
STMPE811_REG_SIZE = 1;
|
|
|
STMPE801
|
STMPE801_REG_CHIP_ID = $00;
|
Device identification
|
STMPE801_REG_ID_VER = $02;
|
Revision number (0x01 for engineering sample/0x02 for final silicon)
|
STMPE801_REG_SYS_CTRL = $04;
|
Reset and interrupt control
|
STMPE801_REG_GPIO_INT_EN = $08;
|
GPIO interrupt enable register
|
STMPE801_REG_GPIO_INT_STA = $09;
|
GPIO interrupt status register
|
STMPE801_REG_GPIO_MP_STA = $10;
|
GPIO monitor pin state register
|
STMPE801_REG_GPIO_SET_PIN = $11;
|
GPIO set pin state register
|
STMPE801_REG_GPIO_SET_DIR = $12;
|
GPIO set pin direction register
|
|
STMPE801_REG_MAX = $12;
|
|
STMPE801_REG_SIZE = 1;
|
|
|
STMPE1601
|
STMPE1601_REG_CHIP_ID = $80;
|
Device identification
|
STMPE1601_REG_ID_VER = $81;
|
Revision number
|
|
STMPE1601_REG_SYS_CTRL = $02;
|
System control register
|
STMPE1601_REG_SYS_CTRL2 = $03;
|
System control register 2
|
STMPE1601_REG_INT_CTRL_MSB = $10;
|
Interrupt control register
|
STMPE1601_REG_INT_CTRL_LSB = $11;
|
|
STMPE1601_REG_INT_EN_MSB = $12;
|
Interrupt enable mask register
|
STMPE1601_REG_INT_EN_LSB = $13;
|
|
STMPE1601_REG_INT_STA_MSB = $14;
|
Interrupt status register
|
STMPE1601_REG_INT_STA_LSB = $15;
|
|
|
STMPE1601_REG_GPIO_INT_EN_MSB = $16;
|
Interrupt enable GPIO mask register
|
STMPE1601_REG_GPIO_INT_EN_LSB = $17;
|
|
STMPE1601_REG_GPIO_INT_STA_MSB = $18;
|
Interrupt status GPIO register
|
STMPE1601_REG_GPIO_INT_STA_LSB = $19;
|
|
|
STMPE1601_REG_GPIO_SET_PIN_MSB = $82;
|
GPIO set pin state register
|
STMPE1601_REG_GPIO_SET_PIN_LSB = $83;
|
|
STMPE1601_REG_GPIO_CLR_PIN_MSB = $84;
|
GPIO clear pin state register
|
STMPE1601_REG_GPIO_CLR_PIN_LSB = $85;
|
|
STMPE1601_REG_GPIO_MP_STA_MSB = $86;
|
GPIO monitor pin state register
|
STMPE1601_REG_GPIO_MP_STA_LSB = $87;
|
|
STMPE1601_REG_GPIO_SET_DIR_MSB = $88;
|
GPIO set pin direction register
|
STMPE1601_REG_GPIO_SET_DIR_LSB = $89;
|
|
|
STMPE1601_REG_GPIO_ED_MSB = $8A;
|
GPIO edge detect status register
|
STMPE1601_REG_GPIO_ED_LSB = $8B;
|
|
STMPE1601_REG_GPIO_RE_MSB = $8C;
|
GPIO rising edge register
|
STMPE1601_REG_GPIO_RE_LSB = $8D;
|
|
STMPE1601_REG_GPIO_FE_MSB = $8E;
|
GPIO falling edge register
|
STMPE1601_REG_GPIO_FE_LSB = $8F;
|
|
STMPE1601_REG_GPIO_PU_MSB = $90;
|
GPIO pull up register
|
STMPE1601_REG_GPIO_PU_LSB = $91;
|
|
STMPE1601_REG_GPIO_AF_U_MSB = $92;
|
GPIO alternate function register (upper word)
|
STMPE1601_REG_GPIO_AF_U_LSB = $93;
|
|
STMPE1601_REG_GPIO_AF_L_MSB = $94;
|
GPIO alternate function register (lower word)
|
STMPE1601_REG_GPIO_AF_L_LSB = $95;
|
|
|
STMPE1601_REG_GPIO_LT_EN = $96;
|
GPIO level translator enable
|
STMPE1601_REG_GPIO_LT_DIR = $97;
|
GPIO level translator direction
|
|
STMPE1601_REG_MAX = $BF;
|
|
STMPE1601_REG_SIZE = 2;
|
|
|
STMPE1801
|
STMPE1801_REG_CHIP_ID = $00;
|
Device identification
|
STMPE1801_REG_ID_VER = $01;
|
Revision number
|
|
STMPE1801_REG_SYS_CTRL = $02;
|
System control
|
STMPE1801_REG_INT_CTRL_LOW = $04;
|
Interrupt control
|
STMPE1801_REG_INT_CTRL_HIGH = $05;
|
|
STMPE1801_REG_INT_EN_LOW = $06;
|
Interrupt enable mask
|
STMPE1801_REG_INT_EN_HIGH = $07;
|
|
STMPE1801_REG_INT_STA_LOW = $08;
|
Interrupt status
|
STMPE1801_REG_INT_STA_HIGH = $09;
|
|
|
STMPE1801_REG_GPIO_INT_EN_LOW = $0A;
|
Interrupt enable GPIO mask
|
STMPE1801_REG_GPIO_INT_EN_MID = $0B;
|
|
STMPE1801_REG_GPIO_INT_EN_HIGH = $0C;
|
|
STMPE1801_REG_GPIO_INT_STA_LOW = $0D;
|
Interrupt status GPIO
|
STMPE1801_REG_GPIO_INT_STA_MID = $0E;
|
|
STMPE1801_REG_GPIO_INT_STA_HIGH = $0F;
|
|
STMPE1801_REG_GPIO_SET_PIN_LOW = $10;
|
GPIO set pin state
|
STMPE1801_REG_GPIO_SET_PIN_MID = $11;
|
|
STMPE1801_REG_GPIO_SET_PIN_HIGH = $12
|
|
STMPE1801_REG_GPIO_CLR_PIN_LOW = $13;
|
GPIO clear pin state
|
STMPE1801_REG_GPIO_CLR_PIN_MID = $14;
|
|
STMPE1801_REG_GPIO_CLR_PIN_HIGH = $15;
|
|
STMPE1801_REG_GPIO_MP_STA_LOW = $16;
|
GPIO monitor pin state
|
STMPE1801_REG_GPIO_MP_STA_MID = $17;
|
|
STMPE1801_REG_GPIO_MP_STA_HIGH = $18;
|
|
STMPE1801_REG_GPIO_SET_DIR_LOW = $19;
|
GPIO set pin direction register
|
STMPE1801_REG_GPIO_SET_DIR_MID = $1A;
|
|
STMPE1801_REG_GPIO_SET_DIR_HIGH = $1B;
|
|
|
STMPE1801_REG_GPIO_RE_LOW = $1C;
|
GPIO rising edge
|
STMPE1801_REG_GPIO_RE_MID = $1D;
|
|
STMPE1801_REG_GPIO_RE_HIGH = $1E;
|
|
STMPE1801_REG_GPIO_FE_LOW = $1F;
|
GPIO falling edge
|
STMPE1801_REG_GPIO_FE_MID = $20;
|
|
STMPE1801_REG_GPIO_FE_HIGH = $21;
|
|
STMPE1801_REG_GPIO_PULL_UP_LOW = $22;
|
GPIO pull up
|
STMPE1801_REG_GPIO_PULL_UP_MID = $23;
|
|
STMPE1801_REG_GPIO_PULL_UP_HIGH = $24;
|
|
|
STMPE1801_REG_KPC_ROW = $30;
|
Keypad row scanning
|
STMPE1801_REG_KPC_COL_LOW = $31;
|
Keypad column scanning
|
STMPE1801_REG_KPC_COL_HIGH = $32;
|
|
STMPE1801_REG_KPC_CTRL_LOW = $33;
|
Key config: Scan count and dedicated key
|
STMPE1801_REG_KPC_CTRL_MID = $34;
|
|
STMPE1801_REG_KPC_CTRL_HIGH = $35;
|
|
STMPE1801_REG_KPC_CMD = $36;
|
Keypad command
|
STMPE1801_REG_KPC_COMB_KEY_0 = $37;
|
Keypad combination key mask
|
STMPE1801_REG_KPC_COMB_KEY_1 = $38;
|
|
STMPE1801_REG_KPC_COMB_KEY_2 = $39;
|
|
STMPE1801_REG_KPC_DATA_BYTE0 = $3A;
|
Keypad data
|
STMPE1801_REG_KPC_DATA_BYTE1 = $3B;
|
|
STMPE1801_REG_KPC_DATA_BYTE2 = $3C;
|
|
STMPE1801_REG_KPC_DATA_BYTE3 = $3D;
|
|
STMPE1801_REG_KPC_DATA_BYTE4 = $3E;
|
|
|
STMPE1801_REG_MAX = $3E;
|
|
STMPE1801_REG_SIZE = 3;
|
|
|
STMPE2401/STMPE2403
|
STMPE240X_REG_CHIP_ID = $80;
|
Device identification
|
STMPE240X_REG_ID_VER = $81;
|
Revision number
|
|
STMPE240X_REG_SYS_CTRL = $02;
|
System control register
|
STMPE240X_REG_INT_CTRL_MSB = $10;
|
Interrupt Control Register
|
STMPE240X_REG_INT_CTRL_LSB = $11;
|
|
STMPE240X_REG_INT_EN_MSB = $12;
|
Interrupt Enable Mask Register
|
STMPE240X_REG_INT_EN_LSB = $13;
|
|
STMPE240X_REG_INT_STA_MSB = $14;
|
Interrupt Status Register
|
STMPE240X_REG_INT_STA_LSB = $15;
|
|
|
STMPE240X_REG_GPIO_INT_EN_MSB = $16;
|
Interrupt Enable GPIO Mask Register
|
STMPE240X_REG_GPIO_INT_EN_MID = $17;
|
|
STMPE240X_REG_GPIO_INT_EN_LSB = $18;
|
|
STMPE240X_REG_GPIO_INT_STA_MSB = $19;
|
Interrupt Status GPIO Register
|
STMPE240X_REG_GPIO_INT_STA_MID = $1A;
|
|
STMPE240X_REG_GPIO_INT_STA_LSB = $1B;
|
|
STMPE240X_REG_GPIO_MP_STA_MSB = $A2;
|
GPIO Monitor Pin State Register
|
STMPE240X_REG_GPIO_MP_STA_MID = $A3;
|
|
STMPE240X_REG_GPIO_MP_STA_LSB = $A4;
|
|
STMPE240X_REG_GPIO_SET_PIN_MSB = $83;
|
GPIO Set Pin State Register
|
STMPE240X_REG_GPIO_SET_PIN_MID = $84;
|
|
STMPE240X_REG_GPIO_SET_PIN_LSB = $85;
|
|
STMPE240X_REG_GPIO_CLR_PIN_MSB = $86;
|
GPIO Clear Pin State Register
|
STMPE240X_REG_GPIO_CLR_PIN_MID = $87;
|
|
STMPE240X_REG_GPIO_CLR_PIN_LSB = $88;
|
|
STMPE240X_REG_GPIO_SET_DIR_MSB = $89;
|
GPIO Set Pin Direction Register
|
STMPE240X_REG_GPIO_SET_DIR_MID = $8A;
|
|
STMPE240X_REG_GPIO_SET_DIR_LSB = $8B;
|
|
STMPE240X_REG_GPIO_ED_MSB = $8C;
|
GPIO Edge Detect Status Register
|
STMPE240X_REG_GPIO_ED_MID = $8D;
|
|
STMPE240X_REG_GPIO_ED_LSB = $8E;
|
|
STMPE240X_REG_GPIO_RE_MSB = $8F;
|
GPIO Rising Edge Register
|
STMPE240X_REG_GPIO_RE_MID = $90;
|
|
STMPE240X_REG_GPIO_RE_LSB = $91;
|
|
STMPE240X_REG_GPIO_FE_MSB = $92;
|
GPIO Falling Edge Register
|
STMPE240X_REG_GPIO_FE_MID = $93;
|
|
STMPE240X_REG_GPIO_FE_LSB = $94;
|
|
STMPE240X_REG_GPIO_PULL_UP_MSB = $95;
|
GPIO Pull Up Register
|
STMPE240X_REG_GPIO_PULL_UP_MID = $96;
|
|
STMPE240X_REG_GPIO_PULL_UP_LSB = $97;
|
|
STMPE240X_REG_GPIO_PULL_DN_MSB = $98;
|
GPIO Pull Down Register
|
STMPE240X_REG_GPIO_PULL_DN_MID = $99;
|
|
STMPE240X_REG_GPIO_PULL_DN_LSB = $9A;
|
|
STMPE240X_REG_GPIO_AF_U_MSB = $9B;
|
GPIO Alternate Function Register (Upper Bit)
|
STMPE240X_REG_GPIO_AF_U_MID = $9C;
|
|
STMPE240X_REG_GPIO_AF_U_LSB = $9D;
|
|
STMPE240X_REG_GPIO_AF_L_MSB = $9E;
|
GPIO Alternate Function Register(Lower Bit)
|
STMPE240X_REG_GPIO_AF_L_MID = $9F;
|
|
STMPE240X_REG_GPIO_AF_L_LSB = $A0;
|
|
|
STMPE240X_REG_PWMCS = $30;
|
PWM Control and Status register
|
STMPE240X_REG_PWMIC0 = $38;
|
PWM instructions are initialized through this data port
|
STMPE240X_REG_PWMIC1 = $39;
|
|
STMPE240X_REG_PWMIC2 = $3A;
|
|
|
STMPE240X_REG_KPC_COL = $60;
|
Keypad column scanning register
|
STMPE240X_REG_KPC_ROW_MSB = $61;
|
Keypad row scanning register
|
STMPE240X_REG_KPC_ROW_LSB = $62;
|
|
STMPE240X_REG_KPC_CTRL_MSB = $63;
|
Keypad control register
|
STMPE240X_REG_KPC_CTRL_LSB = $64;
|
|
STMPE240X_REG_KPC_DATA_BYTE0 = $68;
|
Keypad data register
|
STMPE240X_REG_KPC_DATA_BYTE1 = $69;
|
|
STMPE240X_REG_KPC_DATA_BYTE2 = $6A;
|
|
|
STMPE240X_REG_MAX = $BF;
|
|
STMPE240X_REG_SIZE = 3;
|
|
|
STMPE_REG_UNKNOWN = $FF;
|
|