summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDominik Sliwa <dominik.sliwa@toradex.com>2017-05-31 11:31:31 +0200
committerDominik Sliwa <dominik.sliwa@toradex.com>2017-05-31 11:31:31 +0200
commit41a46914821b1ea72c6dd68b308a3740276139ee (patch)
tree460e7df42a6c3e0f79fca2f60351ef2f377083b1
parentc9d5d6b248a12f7c6b66d8a64b93fb0c8c6cae4d (diff)
tsc:change touch detection polarity
Limited number of boards appear to have issues with previous method.
-rw-r--r--source/adc_task.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/source/adc_task.c b/source/adc_task.c
index bd7215d..456b9b2 100644
--- a/source/adc_task.c
+++ b/source/adc_task.c
@@ -138,7 +138,7 @@ void tsc_task(void *pvParameters)
pin_config_pd.mux = kPORT_MuxAsGpio;
pin_config_pd.openDrainEnable = kPORT_OpenDrainDisable;
- pin_config_pd.pullSelect = kPORT_PullDown;
+ pin_config_pd.pullSelect = kPORT_PullUp;
pin_config_pd.slewRate = kPORT_FastSlewRate;
pin_config_pd.passiveFilterEnable = kPORT_PassiveFilterDisable;
pin_config_pd.driveStrength = kPORT_LowDriveStrength;
@@ -156,12 +156,12 @@ void tsc_task(void *pvParameters)
channel.enableInterruptOnConversionCompleted = false;
while(1) {
- //Touch detect power Y+, enable pulldown on xp and read xp GPIO
- ts_force_drive(0, 0, 0, 1);
+ //Touch detect: power Y-, enable pullup on xp and read xp GPIO
+ ts_force_drive(0, 0, 1, 0);
PORT_SetPinConfig(PORTB, 6u, &pin_config_pd);
vTaskDelay(10);
old_status = status;
- status = GPIO_ReadPinInput(GPIOB, 6u) ? PEN_DOWN:PEN_UP;
+ status = GPIO_ReadPinInput(GPIOB, 6u) ? PEN_UP:PEN_DOWN;
PORT_SetPinConfig(PORTB, 6u, &pin_config_ana);
if (status != old_status)
@@ -213,7 +213,7 @@ int tsc_registers(dspi_transfer_t *spi_transfer)
uint8_t *rx_buf = spi_transfer->rxData;
uint8_t *tx_buf = &spi_transfer->txData[1];
if (rx_buf[0] == APALIS_TK1_K20_READ_INST) {
- switch (rx_buf[1]) {
+ switch (rx_buf[2]) {
case APALIS_TK1_K20_TSCREG:
tx_buf[0] = 0x00;
return 1;
@@ -295,7 +295,7 @@ int adc_registers(dspi_transfer_t *spi_transfer)
uint8_t *tx_buf = &spi_transfer->txData[1];
if (rx_buf[0] == APALIS_TK1_K20_READ_INST) {
- switch (rx_buf[1]) {
+ switch (rx_buf[2]) {
case APALIS_TK1_K20_ADCREG:
tx_buf[0] = 0x00;
return 1;