XY MIDI-Pad med Arduino och TFT (4 / 7 steg)
Steg 4: Touch skärm kalibrering
För att fungera korrekt, pekskärm behöver kalibreras.
Att göra kalibreringar för modifierade UTouch bibliotek vi behöver för att köra denna skiss: SimplerCalibration.ino (SimplerCalibration.zip):
Vi behöver matcha orientering UTFT bibliotek med UTouch bibliotek:
myGLCD.InitLCD(LANDSCAPE);
myTouch.InitTouch(LANDSCAPE);
Det finns 4 steg. Vi behöver redigera linje #define selector för varje steg och ladda upp och köra skiss steg för steg:
#define selector 1
Vi kommer att kontrollera att vi placerar den rätt upplösningen i SimplerCalibration ino fil i detta steg. Detta är ett valfritt steg. Jag lägga den här eftersom som ritades av författaren till denna lösning.
#define selector 2
Detta är den viktigaste av fyrana. Här är faktiskt kalibrering. Efter uppladdning skiss måste du skaffa vänster-top och höger-botten som i bilden ovan. och göra ändringar i filen:
...\arduino-1.5.8\libraries\UTouch\UTouch.cpp
void UTouch::InitTouch (byte läggning) {
Orient = läggning.
_default_orientation = 0;
touch_x_left = 306; ange nummer för lämnade de flesta touch
touch_x_right = 3966; ange nummer för rätt de flesta touch
touch_y_bottom = 3906; ange nummer för botten de flesta touch
touch_y_top = 174; ange nummer för top mest touch
disp_x_size = 320; Glöm inte dem om olika
disp_y_size = 240; Glöm inte dem om olika
prec = 10;
// ..................................................
Vi ser att värdena för touch_y_bottom och touch_y_top är swaped i förhållande till som få från skärmen. (eftersom beskärningen av TFT axlar är olika från beskärningen av pekskärm). Du kommer att lista ut att för varje modell av TFT. Du kan behöva eller inte för att byta y- eller x-axelns värden beror av din TFT modell. För denna modell fungerar som ovan.
#define selector 3
Testprogram. Display x y koordinater touch punkt. Frivillig.
#define selector 4
Testprogram. Sätta en vit pixel touch punkt. Frivillig. Det är fortfarande mycket intuitivt. Om du vill se dessa pixlar speglas på x eller y-axeln måste du byta värden för det axix.