diff options
author | Joel Bodenmann <joel@unormal.org> | 2013-11-25 21:35:04 +0100 |
---|---|---|
committer | Joel Bodenmann <joel@unormal.org> | 2013-11-25 21:35:04 +0100 |
commit | cf193b3583fdc0e79970b323e0c53ae270718f21 (patch) | |
tree | f8c10177ec93de2578ac1744e227deedb3392e53 /boards/base | |
parent | e1c9be826387d05a17b1b51f4f2e1729931631cb (diff) | |
download | uGFX-cf193b3583fdc0e79970b323e0c53ae270718f21.tar.gz uGFX-cf193b3583fdc0e79970b323e0c53ae270718f21.tar.bz2 uGFX-cf193b3583fdc0e79970b323e0c53ae270718f21.zip |
Olimex-STM32-LCD board files update
Diffstat (limited to 'boards/base')
-rw-r--r-- | boards/base/Olimex-STM32-LCD/ginput_lld_mouse_board.h | 51 | ||||
-rw-r--r-- | boards/base/Olimex-STM32-LCD/ginput_lld_mouse_config.h | 2 |
2 files changed, 40 insertions, 13 deletions
diff --git a/boards/base/Olimex-STM32-LCD/ginput_lld_mouse_board.h b/boards/base/Olimex-STM32-LCD/ginput_lld_mouse_board.h index 7a383c60..8b0fc3b2 100644 --- a/boards/base/Olimex-STM32-LCD/ginput_lld_mouse_board.h +++ b/boards/base/Olimex-STM32-LCD/ginput_lld_mouse_board.h @@ -39,16 +39,6 @@ static inline void init_board(void) { adcStart(&ADCD1, NULL); } -static inline bool_t getpin_pressed(void) { - palSetPadMode(GPIOC, 0, PAL_MODE_INPUT_PULLDOWN); - palSetPadMode(GPIOC, 1, PAL_MODE_INPUT); - palSetPadMode(GPIOC, 2, PAL_MODE_INPUT); - palSetPadMode(GPIOC, 3, PAL_MODE_OUTPUT_PUSHPULL); - palSetPad(GPIOC, 3); - - return palReadPad(GPIOC, 0); -} - static inline void aquire_bus(void) { } @@ -57,7 +47,37 @@ static inline void release_bus(void) { } -static inline uint16_t read_x_value(void) { +static inline void setup_x(void) { + palSetPadMode(GPIOC, 0, PAL_MODE_INPUT_ANALOG); + palSetPadMode(GPIOC, 1, PAL_MODE_INPUT_ANALOG); + palSetPadMode(GPIOC, 2, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOC, 3, PAL_MODE_OUTPUT_PUSHPULL); + + palSetPad(GPIOC, 2); + palClearPad(GPIOC, 3); + gfxSleepMilliseconds(1); +} + +static inline void setup_y(void) { + palSetPadMode(GPIOC, 2, PAL_MODE_INPUT_ANALOG); + palSetPadMode(GPIOC, 3, PAL_MODE_INPUT_ANALOG); + palSetPadMode(GPIOC, 0, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOC, 1, PAL_MODE_OUTPUT_PUSHPULL); + + palSetPad(GPIOC, 1); + palClearPad(GPIOC, 0); + gfxSleepMilliseconds(1); +} + +static inline void setup_z(void) { + palSetPadMode(GPIOC, 0, PAL_MODE_INPUT_PULLDOWN); + palSetPadMode(GPIOC, 1, PAL_MODE_INPUT); + palSetPadMode(GPIOC, 2, PAL_MODE_INPUT); + palSetPadMode(GPIOC, 3, PAL_MODE_OUTPUT_PUSHPULL); + palSetPad(GPIOC, 3); +} + +static inline uint16_t read_x(void) { uint16_t val1, val2; adcsample_t samples[ADC_NUM_CHANNELS * ADC_BUF_DEPTH]; @@ -81,7 +101,7 @@ static inline uint16_t read_x_value(void) { return ((val1+((1<<12)-val2))/4); } -static inline uint16_t read_y_value(void) { +static inline uint16_t read_y(void) { uint16_t val1, val2; adcsample_t samples[ADC_NUM_CHANNELS * ADC_BUF_DEPTH]; @@ -105,5 +125,12 @@ static inline uint16_t read_y_value(void) { return ((val1+((1<<12)-val2))/4); } +static inline uint16_t read_z(void) { + if (palReadPad(GPIOC, 0)) + return 100; + else + return 0; +} + #endif /* _GINPUT_LLD_MOUSE_BOARD_H */ diff --git a/boards/base/Olimex-STM32-LCD/ginput_lld_mouse_config.h b/boards/base/Olimex-STM32-LCD/ginput_lld_mouse_config.h index bba2cdd1..e8362219 100644 --- a/boards/base/Olimex-STM32-LCD/ginput_lld_mouse_config.h +++ b/boards/base/Olimex-STM32-LCD/ginput_lld_mouse_config.h @@ -12,7 +12,7 @@ #define GINPUT_MOUSE_NEED_CALIBRATION TRUE #define GINPUT_MOUSE_LLD_CALIBRATION_LOADSAVE FALSE #define GINPUT_MOUSE_MAX_CALIBRATION_ERROR 12 -#define GINPUT_MOUSE_READ_CYCLES 4 +#define GINPUT_MOUSE_READ_CYCLES 1 #define GINPUT_MOUSE_POLL_PERIOD 25 #define GINPUT_MOUSE_MAX_CLICK_JITTER 2 #define GINPUT_MOUSE_MAX_MOVE_JITTER 2 |