Paint for the FRDM-KL25Z

Dependencies:   mbed TFT_fonts SPI_TFT_ILI9341

touch.cpp

Committer:
ecowboy
Date:
2019-01-07
Revision:
0:42ec9a44bc24
Child:
1:33506fcfdd95

File content as of revision 0:42ec9a44bc24:

#include "touch.h"
#include "mbed.h"

TouchScreen::TouchScreen(PinName xp, PinName yp, PinName xm, PinName ym) {
    PinName _yp = yp;
    PinName _xm = xm;
    PinName _ym = ym;
    PinName _xp = xp;
}

/*Point TouchScreen::getPoint(Point p){
    int z = 0;
    int y2 = readTouch(_xp,_xm,_yp,_ym);
    int x2 = readTouch(_yp,_ym,_xm,_xp);
    int y1 = readTouch(_xp,_xm,_ym,_yp);
    int x1 = readTouch(_yp,_ym,_xp,_xm);
    int z2 = readTouch(_ym,_xp,_yp,_xm);
    int z1 = readTouch(_ym,_xp,_xm,_yp);

    if (z1!=0){
        z = RXPLATE*x2/Q*(z2/z1-1);
    }else{
        z = 0;
    }
    p.x = x2;
    p.y = y2;
    p.z = z;
    return p;
}*/



int TouchScreen::readTouch(PinName n, PinName m, PinName a, PinName i){
    
    DigitalOut _n(n);
    _n = 1;
    DigitalOut _m(m);
    _m = 0;
    AnalogIn   _a(a);
    AnalogIn   _i(i);
    wait_us(10);
    return _a.read_u16();
}



/*bool TouchScreen::isTouching(void){
    Point p = getPoint(p);
    if(p.z > PRESSURE)return 1;
    else return 0;
}*/

int map(int value, int fromSource, int toSource, int fromTarget, int toTarget){
        return (value - fromSource) / (toSource - fromSource) * (toTarget - fromTarget) + fromTarget;
}