sa

Dependencies:   LCD_DISCO_F429ZI mbed TS_DISCO_F429ZI BSP_DISCO_F429ZI

Keyboard_Ts.cpp

Committer:
wierzba100
Date:
2022-05-16
Revision:
0:564bdd59fe99

File content as of revision 0:564bdd59fe99:

#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;
}