CPT112S_I2C

Detailed Description

Silicon Labs 12-pad Capacitive Touch Evaluation Board I2C driver.

I2C data structure

For CPT112S there are 12 capsense outputs, each pin corresponds to a capsenseCurrent bit showing whether a cap-sense button pressed or not, and capsensePrevious bit showing the status of previous cycle.

If capsenseCurrent==1 && capsensePrevious==0, detects a "press" If capsenseCurrent==0 && capsensePrevious==1, detects a "release"

capsenseCurrent bit-map byte: | N/A | N/A | N/A | N/A| cC11 | cC10| cC9 | cC8 | | cC7 | cC6 | cC5 | cC4 | cC3 | cC2 | cC1 | cC0 |

capsensePrevious bit-map byte: | N/A | N/A | N/A | N/A| cP11 | cP10| cP9 | cP8 | | cP7 | cP6 | cP5 | cP4 | cP3 | cP2 | cP1 | cP0 |

*cC,cP are abbreviation for capsenseCurrent and capsensePrevious

Macros

#define CPT112S_I2C_ADDRESS 0xE0
#define CPT112S_I2C_RELEASE_EVENT 1
#define CPT112S_I2C_RXBUFFER_SIZE 3
#define CPT112S_I2C_SLIDER_ACTIVITY 2
#define CPT112S_I2C_TOUCH_EVENT 0

Functions

uint16_t CPT112S_getCapsenseCurrent (void)
uint16_t CPT112S_getCapsensePrevious (void)
uint16_t CPT112S_getSliderCurrent (void)
uint16_t CPT112S_getSliderPrevious (void)
void CPT112S_init (void)
void CPT112S_update (void)