
a
Dependencies: LCD_DISCO_F429ZI mbed TS_DISCO_F429ZI BSP_DISCO_F429ZI
Keyboard_Ts.cpp
- Committer:
- wierzba100
- Date:
- 2022-05-11
- Revision:
- 0:515a71b6fd11
File content as of revision 0:515a71b6fd11:
#include "Keyboard_Ts.h" #include "TS_DISCO_F429ZI.h" TS_DISCO_F429ZI ts; TS_StateTypeDef TS_State; KeyboardTs::KeyboardTs(unsigned char ucButtonPos): ucButtonMode(ucButtonPos){} 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; }else { uiX=0; uiY=0; } switch(ucButtonMode) { case 0: if(uiX > 0 && uiX < 79 && uiY > 0 && uiY < 79) { return BUTTON_0; } else if(uiX > 0 && uiX < 79 && uiY > 80 && uiY < 160) { return BUTTON_1; } else if(uiX > 0 && uiX < 79 && uiY > 160 && uiY < 240) { return BUTTON_2; } else if(uiX > 0 && uiX < 79 && uiY > 240 && uiY < 320) { return BUTTON_3; } else{ return RELASED; } case 1: if(uiX > 80 && uiX < 160 && uiY > 0 && uiY < 79) { return BUTTON_0; } else if(uiX > 80 && uiX < 160 && uiY > 80 && uiY < 160) { return BUTTON_1; } else if(uiX > 80 && uiX < 160 && uiY > 160 && uiY < 240) { return BUTTON_2; } else if(uiX > 80 && uiX < 160 && uiY > 240 && uiY < 320) { return BUTTON_3; } else{ return RELASED; } default: if(uiX > 160 && uiX < 240 && uiY > 0 && uiY < 79) { return BUTTON_0; } else if(uiX > 160 && uiX < 240 && uiY > 80 && uiY < 160) { return BUTTON_1; } else if(uiX > 160 && uiX < 240 && uiY > 160 && uiY < 240) { return BUTTON_2; } else if(uiX > 160 && uiX < 240 && uiY > 240 && uiY < 320) { return BUTTON_3; } else{ return RELASED; } } }