Very simple program for FT800 graphic lib (using touchscreen - button, key and slider demo)

Dependencies:   FT800_2 mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"
00002 #include "FT_Platform.h"
00003 
00004 // SLSTK3400A
00005 FT800 TFT (PE10, PE11, PE12, PE13, PB11, PD4); // mosi, miso, sck, ss, int, pd
00006 // WIZwiki-W7500P
00007 //FT800 TFT (D11, D12, D13, D10, D9, D8); // mosi, miso, sck, ss, int, pd
00008 // ATSAMD21-XPRO
00009 //FT800 TFT (PA18, PA16, PA19, PA17, PA20, PA21); // mosi, miso, sck, ss, int, pd
00010 
00011 char sliderVal = 0;
00012 
00013 /***********************************************************************************************************************/
00014 /* Construct the screen and downloasd it to the TFT */
00015 void drawScreen()
00016 {
00017     TFT.DLstart();
00018     TFT.DL(CLEAR_COLOR_RGB(255, 255, 255));
00019     TFT.DL(CLEAR(1, 1, 1));
00020     
00021     TFT.FgColor(0xC1004D);
00022     
00023     TFT.Keys(27, 127, 271, 41, 29, 0, "123");
00024     
00025     TFT.DL(TAG(1));
00026     TFT.Button(31, 32, 148, 57, 27, OPT_FLAT, "Button");
00027     
00028     TFT.DL(TAG(2));
00029     TFT.Slider(244, 45, 161, 17, 0, sliderVal, 255);
00030     
00031     // track the touch screen
00032     char pressedButton = TFT.Rd8(REG_TOUCH_TAG);
00033     int pressedSlider = TFT.Rd32(REG_TRACKER);
00034     if (pressedButton == 2) {
00035         sliderVal = (pressedSlider >> 16) * 255 / 65536;
00036     }
00037     
00038     TFT.DL(COLOR_RGB(0, 0, 0));
00039     TFT.Text(28, 213, 28, 0, "REG_TOUCH_TAG");
00040     TFT.Text(28, 237, 28, 0, "REG_TRACKER");
00041     TFT.Number(230, 237, 28, 0, pressedButton);
00042     TFT.Number(230, 213, 28, 0, sliderVal);
00043     
00044     TFT.DL(DISPLAY());
00045     TFT.Swap();
00046     TFT.Flush_Co_Buffer();
00047     TFT.WaitCmdfifo_empty();
00048 }
00049 
00050 /***********************************************************************************************************************/
00051 /* Main function */
00052 int main()
00053 {
00054     TFT.Calibrate();
00055     TFT.Track(244, 45, 161, 17, 2);
00056     while(1) {
00057         drawScreen();
00058     }
00059 }