Dependencies: LCD_DISCO_F429ZI mbed TS_DISCO_F429ZI BSP_DISCO_F429ZI
Diff: Keyboard_Ts.cpp
- Revision:
- 0:564bdd59fe99
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Keyboard_Ts.cpp Mon May 16 16:35:32 2022 +0000 @@ -0,0 +1,33 @@ +#include "Keyboard_Ts.h" +#include "TS_DISCO_F429ZI.h" + +TS_DISCO_F429ZI ts; + +TS_StateTypeDef TS_State; + +#define RECTANGLE_SIZE 80 + +KeyboardTs::KeyboardTs(unsigned char ucColumnPos): ucColumnPos(ucColumnPos){} + +KeyboardState enumTab[]={ BUTTON_0, BUTTON_1, BUTTON_2, BUTTON_3 }; + +enum KeyboardState KeyboardTs::eRead(void) +{ + ts.GetState(&TS_State); + unsigned int uiX; + unsigned int uiY; + if (TS_State.TouchDetected) + { + uiX=TS_State.X; + uiY=TS_State.Y; + + if((uiX > (RECTANGLE_SIZE * ucColumnPos)) && (uiX < (RECTANGLE_SIZE * (ucColumnPos+1)))) + { + return enumTab[uiY/RECTANGLE_SIZE]; + } + } + return RELASED; +} + + +