
mbed_1 - last program
Dependencies: LCD_DISCO_F429ZI mbed TS_DISCO_F429ZI BSP_DISCO_F429ZI
Diff: Keyboard_Ts.cpp
- Revision:
- 0:f3da1afb14d9
- Child:
- 2:39601122cf74
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Keyboard_Ts.cpp Sun May 10 14:31:55 2020 +0000 @@ -0,0 +1,42 @@ +#include "Keyboard_Ts.h" + +#define LENGTH_SIDE_SQUARE 80 + +KeyboardTs::KeyboardTs(unsigned char ucColumnNr){ + + TouchScreen.Init(lcd.GetXSize(), lcd.GetYSize()); + + if(ucColumnNr == 1){ + square_x_pos = 80; + } + else if(ucColumnNr == 2){ + square_x_pos = 160; + } + else{ + square_x_pos = 0; + } +} + +enum KeyboardState KeyboardTs::eRead(void){ + + TouchScreen.GetState(&TSState); + + if(TSState.TouchDetected){ + if((TSState.X > square_x_pos) && (TSState.X <= square_x_pos + LENGTH_SIDE_SQUARE)){ + + if((TSState.Y > 0) && (TSState.Y <= LENGTH_SIDE_SQUARE)){ + return BUTTON_0; + } + else if((TSState.Y > LENGTH_SIDE_SQUARE) && (TSState.Y <= 2 * LENGTH_SIDE_SQUARE)){ + return BUTTON_1; + } + else if((TSState.Y > 2 * LENGTH_SIDE_SQUARE) && (TSState.Y <= 3 * LENGTH_SIDE_SQUARE)){ + return BUTTON_2; + } + else if((TSState.Y > 3 * LENGTH_SIDE_SQUARE) && (TSState.Y <= 4 * LENGTH_SIDE_SQUARE)){ + return BUTTON_3; + } + } + } + return NO_BUTTON_PRESSED; +}