/* ChibiOS/RT - Copyright (C) 2012 Joel Bodenmann aka Tectu This file is part of ChibiOS-LCD-Driver. ChibiOS-LCD-Driver is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. ChibiOS-LCD-Driver is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . */ #include "touchpad.h" #include "glcd.h" volatile static struct cal cal = { 1, 1, 0, 0 }; static const SPIConfig spicfg = { NULL, GPIOC, TP_CS, SPI_CR1_SPE | SPI_CR1_BR_2 | SPI_CR1_BR_1 | SPI_CR1_BR_0, }; void tpInit(SPIDriver *spip) { spiStart(spip, &spicfg); } uint8_t tpIRQ(void) { return (!palReadPad(TP_IRQ_PORT, TP_IRQ)); } static uint16_t tpReadRealX(void) { uint32_t results = 0; uint16_t i, x; for(i=0; i