KL25Z driving an ILI9320 LCD board with touch panel (HY28A-LCDB SPI)
Dependencies: SPI_TFT_ILI9320 mbed
Diff: main.cpp
- Revision:
- 1:76f92f6b3737
- Parent:
- 0:ff976ad09b2f
--- a/main.cpp Tue Mar 18 19:36:05 2014 +0000 +++ b/main.cpp Sun Mar 23 19:45:33 2014 +0000 @@ -23,6 +23,9 @@ int main() { + Matrix matrix; + Coordinate ScreenSample[3]; + unsigned short LCD_id; TFT.claim(stdout); // send stdout to the TFT display // Disable stdout buffering, allows us to omit \n with printf. @@ -131,6 +134,40 @@ TP.TouchPanel_Calibrate(); TFT.set_font((unsigned char*) Arial12x12); TFT.set_orientation(0); + // Display calibration values + TP.GetCalibration(&matrix, &ScreenSample[0]); + TFT.cls(); + TFT.locate(0,20); + // read calibration results + printf("Read calibration results.\n"); + printf("matrix.An = %d\n", matrix.An); + printf("matrix.Bn = %d\n", matrix.Bn); + printf("matrix.Cn = %d\n", matrix.Cn); + printf("matrix.Dn = %d\n", matrix.Dn); + printf("matrix.En = %d\n", matrix.En); + printf("matrix.Fn = %d\n", matrix.Fn); + printf("matrix.Di = %d\n", matrix.Divider); + for (i=0;i<3;i++) + printf("sample x[%d] = %d\nsample y[%d] = %d\n", i, ScreenSample[i].x, i, ScreenSample[i].y); + // Write calibration results + printf("\nWrite calibration results...\n"); + TP.SetCalibration(&matrix, &ScreenSample[0]); + printf("Done.\nTouch panel to read again.\n"); + while(TP._tp_irq); + // read calibration results + TFT.cls(); + TFT.locate(0,20); + printf("Calibration results.\n\n"); + printf("matrix.An = %d\n", matrix.An); + printf("matrix.Bn = %d\n", matrix.Bn); + printf("matrix.Cn = %d\n", matrix.Cn); + printf("matrix.Dn = %d\n", matrix.Dn); + printf("matrix.En = %d\n", matrix.En); + printf("matrix.Fn = %d\n", matrix.Fn); + printf("matrix.Di = %d\n", matrix.Divider); + for (i=0;i<3;i++) + printf("sample x[%d] = %d\nsample y[%d] = %d\n", i, ScreenSample[i].x, i, ScreenSample[i].y); + TFT.locate(0,0); printf(" X:"); TFT.locate(70,0);