k

Dependencies:   TFT-RFID_Finish3ja mbed MFRC522 UniGraphic

Revision:
7:81f1c4fae022
Parent:
6:c9088eb90616
Child:
8:2bcc87bbd034
--- a/main.cpp	Sun Mar 13 09:09:47 2016 +0000
+++ b/main.cpp	Fri Dec 14 05:54:31 2018 +0000
@@ -1,249 +1,576 @@
-//
-//    UniGraphic demo on Nucleo-F401RE and UL024TF (Adafruit 2.2" parallel TFT shield compatible)
-//
-//      2016.3.13
-//
-//        reference: https://developer.mbed.org/questions/6893/BusOut-instead-of-PortName/
-//
-//
-//
-
 #include "stdio.h"
 #include "mbed.h"
 #include "string"
 #include "Arial12x12.h"
 #include "Arial24x23.h"
-//#include "Terminal6x8.h"
+#include "Arial28x28.h"
 #include "Arial43x48_numb.h"
 #include "pict.h"
 #include "pavement_48x34.h"
-
-//#include "IST3020.h"
-//#include "UC1608.h"
-//#include "ST7565.h"
-#include "ILI932x.h"
-//#include "ILI9341.h"
-//#include "ILI9486.h"
-//#include "TFT_MIPI.h"
-//#include "SSD1306.h"
-
-Serial pc(USBTX, USBRX);
-
-//IST3020 myLCD(PAR_8, PortC, PC_8, PC_9, PA_0, PA_1, PA_4,"myLCD", 192, 64); // Parallel 8bit, Port, CS, reset, A0, WR, RD for F302
-//UC1608 myLCD(SPI_16, 10000000, D11, D12, D13, D10, D9, D8,"myLCD", 240, 120); // Spi 16bit, 10MHz, mosi, miso, sclk, cs, reset, dc
-//ST7565 myLCD(PAR_8, PortC, PC_8, PC_9, PA_0, PA_1, PA_4,"myLCD", 128, 64); // Parallel 8bit, Port, CS, reset, A0, WR, RD
-//ILI932x myLCD(PAR_8, PortC, PH_0, PH_1, PA_0, PA_1, PA_4,"myLCD"); // Parallel 8bit, Port, CS, reset, RS, WR, RD for F401
-//ILI932x myLCD(SPI_16, 10000000, D11, D12, D13, D10, D9,"myLCD"); // Spi 16bit, 12MHz, mosi, miso, sclk, cs, reset
-//ILI9341 myLCD(SPI_16, 12000000, D11, D12, D13, D10, D9, D8,"myLCD"); // Spi 16bit, 12MHz, mosi, miso, sclk, cs, reset, dc
-//ILI9341 myLCD(PAR_16, PortC, PH_0, PH_1, PA_0, PA_1, PA_4,"myLCD"); // Parallel 16bit, Port, CS, reset, DC, WR, RD for F401
-//ILI9486 myLCD(PAR_16, PortC, PH_0, PH_1, PA_0, PA_1, PA_4,"myLCD"); // Parallel 16bit, Port, CS, reset, DC, WR, RD for F401
-//TFT_MIPI myLCD(PAR_16, PortC, PH_0, PH_1, PA_0, PA_1, PA_4,"myLCD"); // Parallel 16bit, Port, CS, reset, DC, WR, RD for F401
-//SSD1306 myLCD(SPI_16, 10000000, D11, D12, D13, D10, D9, D8,"myLCD", 240, 120); // Spi 16bit, 10MHz, mosi, miso, sclk, cs, reset, dc
-//ILI9486 myLCD(SPI_8, 12000000, PA_7, PA_6, PA_5, PB_6, PA_8, PA_9,"myLCD"); // Spi 16bit, 12MHz, mosi, miso, sclk, cs, reset, dc for minimaple
-//ILI9341 myLCD(SPI_8, 12000000, PA_7, PA_6, PA_5, PB_6, PA_8, PA_9,"myLCD"); // Spi 16bit, 12MHz, mosi, miso, sclk, cs, reset, dc for minimaple
-
-// using UL024TF on NucleoF401RE
-
-PinName buspins[8]={D8,D9,D2,D3,D4,D5,D6,D7};
-ILI932x myLCD(BUS_8, buspins, A3, A4, A2, A1, A0,"myLCD"); // Parallel Bus 8bit, buspins array, CS, reset, RS, WR, RD
-
-
+#include "TFT_MIPI.h"
+#include "SDFileSystem.h"
+Serial pc(SERIAL_TX, SERIAL_RX);
+PinName buspins[] = { PA_9, PC_7, PA_10, PB_3, PB_5, PB_4, PB_10, PA_8 };
+TFT_MIPI myLCD(BUS_8, buspins, A3, A4, A2, A1, A0, "myLCD");
+DigitalIn Sw[] = {PB_13, PB_14, PB_15, PB_2, PB_12,PA_11 };
 Timer t;
 
-//unsigned short backgroundcolor=White;
-//unsigned short foregroundcolor=Black;
-unsigned short backgroundcolor=Black;
-unsigned short foregroundcolor=White;
-
+unsigned short backgroundcolor=Orange;
+unsigned short foregroundcolor=Black;
 char orient=1;
+int i=0;
+int j=0;
+int Pagejawjiw = 1;
+int state = 0;
 int main()
-{
-//    myLCD.set_contrast(26);//for uc1608
- //   myLCD.set_contrast(46);//for ist3020
+{   //while(1){
+//    if(Sw[2] == 0){
+//    wait(0.3);
+//    pc.printf("BOOO\n");
+//    }}
     myLCD.set_orientation(orient);
-    int time, time2;
-    pc.baud (115200);
-    pc.printf("\n\nSystem Core Clock = %.3f MHZ\r\n",(float)SystemCoreClock/1000000);
+    int time;
     t.start();
- //   myLCD.set_font((unsigned char*) Terminal6x8);
-   // myLCD.claim(stdout);      // send stdout to the LCD display
-    //myLCD.claim(stderr);      // send stderr to the LCD display
-    myLCD.background(backgroundcolor);    // set background to black
-    myLCD.foreground(foregroundcolor);    // set chars to white
-
-    while(1)
-    {
-    myLCD.set_orientation((orient++)%4);
-//    myLCD.set_orientation(2);
-    myLCD.cls();                // clear the screen
-    myLCD.locate(0,30);
-    myLCD.printf("Display ID: %.8X\r\n", myLCD.tftID);
-    pc.printf("Display ID: %.8X\r\n", myLCD.tftID);
-    // mem write/read test
-    unsigned short readback;
-    unsigned short colorstep = (0x10000/myLCD.width());
-    for(unsigned short i=0; i<myLCD.width(); i++)
-    {
-        myLCD.pixel(i,0,i*colorstep); // write line
-    }
-    bool readerror=false;
-    for(unsigned short i=0; i<myLCD.width(); i++) // verify line
-    {
-        readback = myLCD.pixelread(i,0);
-        if(readback!=i*colorstep)
-        {
-            readerror=true;
-            pc.printf("pix %.4X readback %.4X\r\n", i*colorstep, readback);
-        }
-    }
-    myLCD.locate(0,10);
-    myLCD.printf("pixelread test %s\r\n", readerror ? "FAIL":"PASS");
-    wait(2);
-    
+    myLCD.background(White);    
+    myLCD.foreground(foregroundcolor);    
     myLCD.cls();
-    myLCD.set_font((unsigned char*) Terminal6x8,32,127,false); //variable width disabled
-    myLCD.locate(0,0);
-    myLCD.printf("Display Test\r\nSome text just to see if auto carriage return works correctly");
-    myLCD.set_font((unsigned char*) Terminal6x8);
- //   myLCD.locate(0,0);
-    myLCD.printf("\r\nDisplay Test\r\nSome text just to see if auto carriage return works correctly");
-    pc.printf("  Display Test \r\n");
-    wait(3);
-    t.reset();
-    myLCD.cls();
-    time=t.read_us();
-    myLCD.locate(2,55);
-    myLCD.printf("cls: %.3fms", (float)time/1000);
-    pc.printf("cls: %.3fms\r\n", (float)time/1000);
-    wait(3);
-
-    myLCD.cls();
-    t.reset();
-    // draw some graphics
-    //myLCD.cls();
-    myLCD.set_font((unsigned char*) Arial24x23);
-    myLCD.locate(10,10);
-    myLCD.printf("Test");
-
-    myLCD.line(0,0,myLCD.width()-1,0,foregroundcolor);
-    myLCD.line(0,0,0,myLCD.height()-1,foregroundcolor);
-    myLCD.line(0,0,myLCD.width()-1,myLCD.height()-1,foregroundcolor);
-
-    myLCD.rect(10,30,50,40,foregroundcolor);
-    myLCD.fillrect(60,30,100,40,foregroundcolor);
-
-    myLCD.circle(150,32,30,foregroundcolor);
-    myLCD.fillcircle(140,20,10,foregroundcolor);
-
-    double s;
-
-    for (unsigned short i=0; i<myLCD.width(); i++)
-        {
-        s =10 * sin((long double) i / 10 );
-        myLCD.pixel(i,40 + (int)s ,foregroundcolor);
-        }
-
 
-    time=t.read_us();
-    myLCD.locate(2,55);
-    myLCD.set_font((unsigned char*) Terminal6x8);
-    myLCD.printf("plot: %.3fms", (float)time/1000);
-    pc.printf("plot: %.3fms\r\n", (float)time/1000);
-    wait(3);
-    myLCD.cls();
-    t.reset();
-    Bitmap_s pic = {
-    64, // XSize
-    64, // YSize
-    8, // Bytes in Line
-    burp,  // Pointer to picture data 
-    };
-    myLCD.Bitmap_BW(pic,myLCD.width()-64,0);
-    time=t.read_us();
-    myLCD.locate(2,55);
-    myLCD.printf("bmp: %.3fms", (float)time/1000);
-    pc.printf("bmp: %.3fms\r\n", (float)time/1000);
-    wait(3);
-    myLCD.cls();
-    myLCD.set_font((unsigned char*) Arial43x48_numb, 46, 58, false); //only numbers, variable-width disabled
-    t.reset();
-    myLCD.locate(0,0);
-    myLCD.printf("%d", 12345);
-    time=t.read_us();
-    myLCD.locate(2,55);
-    myLCD.set_font((unsigned char*) Terminal6x8);
-    myLCD.printf("Big Font: %.3fms", (float)time/1000);
-    pc.printf("Big Font: %.3fms\r\n", (float)time/1000);
-    wait(3);
-    // sparse pixels test
-    myLCD.cls();
-    myLCD.FastWindow(true);
-    t.reset();
-    for(unsigned int i=0; i<20000; i++)
-    {
-        myLCD.pixel((i+(i*89)%myLCD.width()), (i+(i*61)%myLCD.height()), White);
-    }
-    myLCD.copy_to_lcd();
-    time=t.read_us();
-    myLCD.cls();
-    myLCD.FastWindow(false);
-    t.reset();
-    for(unsigned int i=0; i<20000; i++)
-    {
-        myLCD.pixel((i+(i*89)%myLCD.width()), (i+(i*61)%myLCD.height()), White);
-    }
-    myLCD.copy_to_lcd();
-    time2=t.read_us();
-    myLCD.locate(2,55);
-    myLCD.printf("std:%.3fms fastw:%.3fms", (float)time2/1000, (float)time/1000);
-    pc.printf("std: %.3fms fastw: %.3fms\r\n", (float)time2/1000, (float)time/1000);
-    wait(3);
-    // scroll test, only for TFT
-    myLCD.cls();
-    myLCD.set_font((unsigned char*) Arial24x23);
-    myLCD.locate(2,10);
-    myLCD.printf("Scrolling");
-    myLCD.rect(0,0,myLCD.width()-1,myLCD.height()-1,White);
-    myLCD.rect(1,1,myLCD.width()-2,myLCD.height()-2,Blue);
-    myLCD.setscrollarea(0,myLCD.sizeY());
-    wait(1);
-    myLCD.scroll(1); //up 1
-    wait(1);
-    myLCD.scroll(0); //center
-    wait(1);
-    myLCD.scroll(myLCD.sizeY()-1); //down 1
-    wait(1);
-    myLCD.scroll(myLCD.sizeY()); // same as 0, center
-    wait(1);
-    myLCD.scroll(myLCD.sizeY()>>1); // half screen
-    wait(1);
-    myLCD.scrollreset(); // center
-    wait(1);
-    for(unsigned short i=1; i<=myLCD.sizeY(); i++)
-    {
-        myLCD.scroll(i);
-        wait_ms(2);
-    }
-    wait(2);
-    // color inversion
-    for(unsigned short i=0; i<=8; i++)
-    {
-        myLCD.invert(i&1);
-        wait_ms(200);
-    }
-    wait(2);
-    // bmp 16bit test
-    myLCD.cls();
-    t.reset();
-    for(int y=0; y<myLCD.height(); y+=34)
-    {
-        for(int x=0; x<myLCD.width(); x+=48) myLCD.Bitmap(x,y,48,34,(unsigned char *)pavement_48x34);
-    }
-    time=t.read_us();
-    myLCD.locate(2,55);
-    myLCD.set_font((unsigned char*) Terminal6x8);
-    myLCD.printf("Bmp speed: %.3fms", (float)time/1000);
-    pc.printf("Bmp speed: %.3fms\r\n", (float)time/1000);
-    wait(2);
-    }
+    while(1){   
+        //if(Sw[0] == 0){
+//        wait(0.3);
+//        pc.printf("BOOO\n");
+    //}
+        //myLCD.background(backgroundcolor);
+//        myLCD.foreground(foregroundcolor);
+//        myLCD.Bitmap(150,45,180,180,data);
+//        myLCD.fillrect(0,320,500,280,Orange);
+//        time=t.read_us();
+//        for(int i=2; i<200;i++){
+//                myLCD.locate(i,295);
+//                myLCD.set_font((unsigned char*) Arial12x12);
+//                myLCD.printf("Please scan your Student ID card to start.");
+//        }
+//        for(int i=200; i>=2;i--){
+//                myLCD.locate(i,295);
+//                myLCD.set_font((unsigned char*) Arial12x12);
+//                myLCD.printf("Please scan your Student ID card to start.");
+//        }}
+      ///first page///
+        //myLCD.cls();
+//        myLCD.fillrect(0,0,500,50,Orange);
+//        myLCD.rect(155,70,320,120,Orange);
+//        myLCD.rect(155,130,320,180,Orange);
+//        myLCD.rect(155,190,320,240,Orange);
+//        myLCD.rect(155,250,320,300,Orange);
+//        myLCD.set_font((unsigned char*) Arial28x28);
+//        myLCD.locate(160,15);
+//        myLCD.background(Orange);
+//        myLCD.foreground(Black);
+//        myLCD.printf("Select Mode");
+//        myLCD.set_font((unsigned char*) Arial24x23);
+//        myLCD.locate(162,85);
+//        myLCD.background(Yellow);
+//        myLCD.foreground(Green);
+//        myLCD.printf(" Document");
+//        myLCD.locate(187,145);
+//        myLCD.background(White);
+//        myLCD.foreground(Black);
+//        myLCD.printf("ID Card");
+//        myLCD.locate(177,205);
+//        myLCD.background(White);
+//        myLCD.foreground(Black);
+//        myLCD.printf("Financial");
+//        myLCD.locate(202,265);
+//        myLCD.background(White);
+//        myLCD.foreground(Black);
+//        myLCD.printf("Other");
+//        wait(5);
+        //do{
+            if(Pagejawjiw == 1){
+                if(i == 0 or Sw[2] == 0){
+                    i++;
+                    switch(i){
+                        case 1:
+                            myLCD.cls();
+                            myLCD.fillrect(0,0,500,50,Orange);
+                            myLCD.rect(155,70,320,120,Orange);
+                            myLCD.rect(155,130,320,180,Orange);
+                            myLCD.rect(155,190,320,240,Orange);
+                            myLCD.rect(155,250,320,300,Orange);
+                            myLCD.set_font((unsigned char*) Arial28x28);
+                            myLCD.locate(160,15);
+                            myLCD.background(Orange);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Select Mode");
+                            myLCD.set_font((unsigned char*) Arial24x23);
+                            myLCD.locate(162,85);
+                            myLCD.background(Yellow);
+                            myLCD.foreground(Green);
+                            myLCD.printf(" Document");
+                            myLCD.locate(187,145);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("ID Card");
+                            myLCD.locate(177,205);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Financial");
+                            myLCD.locate(202,265);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Other");
+                            wait(0.3);
+                            break; 
+                        case 2:
+                            //myLCD.cls();
+                            myLCD.fillrect(0,0,500,50,Orange);
+                            myLCD.rect(155,70,320,120,Orange);
+                            myLCD.rect(155,130,320,180,Orange);
+                            myLCD.rect(155,190,320,240,Orange);
+                            myLCD.rect(155,250,320,300,Orange);
+                            myLCD.set_font((unsigned char*) Arial28x28);
+                            myLCD.locate(160,15);
+                            myLCD.background(Orange);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Select Mode");
+                            myLCD.set_font((unsigned char*) Arial24x23);
+                            myLCD.locate(162,85);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf(" Document");
+                            myLCD.locate(187,145);
+                            myLCD.background(Yellow);
+                            myLCD.foreground(Green);
+                            myLCD.printf("ID Card");
+                            myLCD.locate(177,205);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Financial");
+                            myLCD.locate(202,265);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Other");
+                            wait(0.3);
+                            break;  
+                        case 3:
+                            //myLCD.cls();
+                            myLCD.fillrect(0,0,500,50,Orange);
+                            myLCD.rect(155,70,320,120,Orange);
+                            myLCD.rect(155,130,320,180,Orange);
+                            myLCD.rect(155,190,320,240,Orange);
+                            myLCD.rect(155,250,320,300,Orange);
+                            myLCD.set_font((unsigned char*) Arial28x28);
+                            myLCD.locate(160,15);
+                            myLCD.background(Orange);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Select Mode");
+                            myLCD.set_font((unsigned char*) Arial24x23);
+                            myLCD.locate(162,85);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf(" Document");
+                            myLCD.locate(187,145);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("ID Card");
+                            myLCD.locate(177,205);
+                            myLCD.background(Yellow);
+                            myLCD.foreground(Green);
+                            myLCD.printf("Financial");
+                            myLCD.locate(202,265);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Other");
+                            wait(0.3);
+                            break; 
+                        case 4:
+                            //myLCD.cls();
+                            myLCD.fillrect(0,0,500,50,Orange);
+                            myLCD.rect(155,70,320,120,Orange);
+                            myLCD.rect(155,130,320,180,Orange);
+                            myLCD.rect(155,190,320,240,Orange);
+                            myLCD.rect(155,250,320,300,Orange);
+                            myLCD.set_font((unsigned char*) Arial28x28);
+                            myLCD.locate(160,15);
+                            myLCD.background(Orange);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Select Mode");
+                            myLCD.set_font((unsigned char*) Arial24x23);
+                            myLCD.locate(162,85);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf(" Document");
+                            myLCD.locate(187,145);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("ID Card");
+                            myLCD.locate(177,205);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Financial");
+                            myLCD.locate(202,265);
+                            myLCD.background(Yellow);
+                            myLCD.foreground(Green);
+                            myLCD.printf("Other");
+                            wait(0.3);
+                            break; 
+                        }
+                    }
+                else if(Sw[0] == 0){
+                    i--;
+                    switch(i){
+                        case 1:
+                            //myLCD.cls();
+                            myLCD.fillrect(0,0,500,50,Orange);
+                            myLCD.rect(155,70,320,120,Orange);
+                            myLCD.rect(155,130,320,180,Orange);
+                            myLCD.rect(155,190,320,240,Orange);
+                            myLCD.rect(155,250,320,300,Orange);
+                            myLCD.set_font((unsigned char*) Arial28x28);
+                            myLCD.locate(160,15);
+                            myLCD.background(Orange);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Select Mode");
+                            myLCD.set_font((unsigned char*) Arial24x23);
+                            myLCD.locate(162,85);
+                            myLCD.background(Yellow);
+                            myLCD.foreground(Green);
+                            myLCD.printf(" Document");
+                            myLCD.locate(187,145);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("ID Card");
+                            myLCD.locate(177,205);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Financial");
+                            myLCD.locate(202,265);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Other");
+                            wait(0.3);
+                            break; 
+                        case 2:
+                            //myLCD.cls();
+                            myLCD.fillrect(0,0,500,50,Orange);
+                            myLCD.rect(155,70,320,120,Orange);
+                            myLCD.rect(155,130,320,180,Orange);
+                            myLCD.rect(155,190,320,240,Orange);
+                            myLCD.rect(155,250,320,300,Orange);
+                            myLCD.set_font((unsigned char*) Arial28x28);
+                            myLCD.locate(160,15);
+                            myLCD.background(Orange);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Select Mode");
+                            myLCD.set_font((unsigned char*) Arial24x23);
+                            myLCD.locate(162,85);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf(" Document");
+                            myLCD.locate(187,145);
+                            myLCD.background(Yellow);
+                            myLCD.foreground(Green);
+                            myLCD.printf("ID Card");
+                            myLCD.locate(177,205);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Financial");
+                            myLCD.locate(202,265);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Other");
+                            wait(0.3);
+                            break;  
+                        case 3:
+                            //myLCD.cls();
+                            myLCD.fillrect(0,0,500,50,Orange);
+                            myLCD.rect(155,70,320,120,Orange);
+                            myLCD.rect(155,130,320,180,Orange);
+                            myLCD.rect(155,190,320,240,Orange);
+                            myLCD.rect(155,250,320,300,Orange);
+                            myLCD.set_font((unsigned char*) Arial28x28);
+                            myLCD.locate(160,15);
+                            myLCD.background(Orange);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Select Mode");
+                            myLCD.set_font((unsigned char*) Arial24x23);
+                            myLCD.locate(162,85);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf(" Document");
+                            myLCD.locate(187,145);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("ID Card");
+                            myLCD.locate(177,205);
+                            myLCD.background(Yellow);
+                            myLCD.foreground(Green);
+                            myLCD.printf("Financial");
+                            myLCD.locate(202,265);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Other");
+                            wait(0.3);
+                            break; 
+                        case 4:
+                            //myLCD.cls();
+                            myLCD.fillrect(0,0,500,50,Orange);
+                            myLCD.rect(155,70,320,120,Orange);
+                            myLCD.rect(155,130,320,180,Orange);
+                            myLCD.rect(155,190,320,240,Orange);
+                            myLCD.rect(155,250,320,300,Orange);
+                            myLCD.set_font((unsigned char*) Arial28x28);
+                            myLCD.locate(160,15);
+                            myLCD.background(Orange);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Select Mode");
+                            myLCD.set_font((unsigned char*) Arial24x23);
+                            myLCD.locate(162,85);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf(" Document");
+                            myLCD.locate(187,145);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("ID Card");
+                            myLCD.locate(177,205);
+                            myLCD.background(White);
+                            myLCD.foreground(Black);
+                            myLCD.printf("Financial");
+                            myLCD.locate(202,265);
+                            myLCD.background(Yellow);
+                            myLCD.foreground(Green);
+                            myLCD.printf("Other");
+                            wait(0.3);
+                            break; 
+                        }
+                    }
+                else if(Sw[4] == 0){
+                    Pagejawjiw++;
+                    wait(0.3);
+                    //break;
+                    }
+                }
+            //}
+            else if(Pagejawjiw == 2){
+                if(j == 0 or Sw[1] == 0){
+                    //j++;
+                    switch(j){
+                       case 0:
+                            j++;
+                            myLCD.cls();
+                            myLCD.fillrect(0,0,500,50,Orange);
+                            myLCD.locate(150,15);
+                            myLCD.background(Orange);
+                            myLCD.set_font((unsigned char*) Arial28x28);
+                            myLCD.printf("Select JorJew");
+                            myLCD.fillrect(40,130,215,230,DarkGrey);
+                            myLCD.fillrect(265,130,440,230,DarkGrey);
+                            myLCD.fillcircle(127,182,40,Yellow);
+                            myLCD.fillcircle(347,182,40,White);
+                            myLCD.set_font((unsigned char*) Arial43x48_numb, 46, 58, false);
+                            myLCD.background(White);
+                            myLCD.locate(106,160);
+                            myLCD.printf(" 1");
+                            myLCD.locate(326,160);
+                            myLCD.printf(" 2");
+                            wait(0.3);
+                            break;
+                        case 1:
+                            //j++;
+                            myLCD.fillrect(0,0,500,50,Orange);
+                            myLCD.locate(150,15);
+                            myLCD.background(Orange);
+                            myLCD.set_font((unsigned char*) Arial28x28);
+                            myLCD.printf("Select JorJew");
+                            myLCD.fillrect(40,130,215,230,DarkGrey);
+                            myLCD.fillrect(265,130,440,230,DarkGrey);
+                            myLCD.fillcircle(127,182,40,Yellow);
+                            myLCD.fillcircle(347,182,40,White);
+                            myLCD.set_font((unsigned char*) Arial43x48_numb, 46, 58, false);
+                            myLCD.background(White);
+                            myLCD.locate(106,160);
+                            myLCD.printf(" 1");
+                            myLCD.locate(326,160);
+                            myLCD.printf(" 2");
+                            wait(0.3);
+                            break;
+                        }
+                    }
+                else if(Sw[3] == 0){
+                            myLCD.fillrect(0,0,500,50,Orange);
+                            myLCD.locate(150,15);
+                            myLCD.background(Orange);
+                            myLCD.set_font((unsigned char*) Arial28x28);
+                            myLCD.printf("Select JorJew");
+                            myLCD.fillrect(40,130,215,230,DarkGrey);
+                            myLCD.fillrect(265,130,440,230,DarkGrey);
+                            myLCD.fillcircle(127,182,40,White);
+                            myLCD.fillcircle(347,182,40,Yellow);
+                            myLCD.set_font((unsigned char*) Arial43x48_numb, 46, 58, false);
+                            myLCD.background(White);
+                            myLCD.locate(106,160);
+                            myLCD.printf(" 1");
+                            myLCD.locate(326,160);
+                            myLCD.printf(" 2");
+                            wait(0.3);
+                    }
+                else if(Sw[5] == 0){
+                    Pagejawjiw = 1;
+                    i = 0;
+                    }
+                }
+                
+        
+        //point//
+        //myLCD.background(Yellow);
+//        myLCD.foreground(White);
+        
+        //second page//
+        //do{
+//            if(Sw[4] == 0){
+//                myLCD.cls();
+//                if(j == 0 or Sw[1] == 0 or Sw[3] == 0){
+//                    j++;
+//                    switch(j){
+//                        case 0:
+//                            j++;
+//                            myLCD.fillrect(0,0,500,50,Orange);
+//                            myLCD.locate(150,15);
+//                            myLCD.background(Orange);
+//                            myLCD.set_font((unsigned char*) Arial28x28);
+//                            myLCD.printf("Select JorJew");
+//                            myLCD.fillrect(40,130,215,230,DarkGrey);
+//                            myLCD.fillrect(265,130,440,230,DarkGrey);
+//                            myLCD.fillcircle(127,182,40,Yellow);
+//                            myLCD.fillcircle(347,182,40,White);
+//                            myLCD.set_font((unsigned char*) Arial43x48_numb, 46, 58, false);
+//                            myLCD.background(White);
+//                            myLCD.locate(106,160);
+//                            myLCD.printf(" 1");
+//                            myLCD.locate(326,160);
+//                            myLCD.printf(" 2");
+//                            wait(0.3);
+//                            break;
+//                        case 1:
+//                            j--;
+//                            myLCD.fillrect(0,0,500,50,Orange);
+//                            myLCD.locate(150,15);
+//                            myLCD.background(Orange);
+//                            myLCD.set_font((unsigned char*) Arial28x28);
+//                            myLCD.printf("Select JorJew");
+//                            myLCD.fillrect(40,130,215,230,DarkGrey);
+//                            myLCD.fillrect(265,130,440,230,DarkGrey);
+//                            myLCD.fillcircle(127,182,40,White);
+//                            myLCD.fillcircle(347,182,40,Yellow);
+//                            myLCD.set_font((unsigned char*) Arial43x48_numb, 46, 58, false);
+//                            myLCD.background(White);
+//                            myLCD.locate(106,160);
+//                            myLCD.printf(" 1");
+//                            myLCD.locate(326,160);
+//                            myLCD.printf(" 2");
+//                            wait(0.3);
+//                            break;
+//                        }
+//                    }
+//                else if(Sw[4] == 0){
+//                    State = 1;
+//                    break;
+//                    }
+//                }
+//            }while(State == 1);
+//                myLCD.cls();
+//                myLCD.fillrect(0,0,500,50,Orange);
+//                myLCD.locate(150,15);
+//                myLCD.background(Orange);
+//                myLCD.set_font((unsigned char*) Arial28x28);
+//                myLCD.printf("Select JorJew");
+//                myLCD.fillrect(40,130,215,230,DarkGrey);
+//                myLCD.fillrect(265,130,440,230,DarkGrey);
+//                myLCD.fillcircle(127,182,40,White);
+//                myLCD.fillcircle(347,182,40,White);
+//                myLCD.set_font((unsigned char*) Arial43x48_numb, 46, 58, false);
+//                myLCD.background(White);
+//                myLCD.locate(106,160);
+//                myLCD.printf(" 1");
+//                myLCD.locate(326,160);
+//                myLCD.printf(" 2");
+//                myLCD.fillrect(125,90,355,280,Green);  //pop-up
+//                myLCD.set_font((unsigned char*) Arial28x28);
+//                myLCD.locate(165,140);
+//                myLCD.background(Green);
+//                myLCD.foreground(Black);
+//                myLCD.printf(" Take out"); //chosen jor
+//                myLCD.locate(155,180);
+//                myLCD.printf(" JorJew#1/2");
+//                wait(0.3);
+        //myLCD.cls();
+//        myLCD.fillrect(0,0,500,50,Orange);
+//        myLCD.locate(150,15);
+//        myLCD.background(Orange);
+//        myLCD.set_font((unsigned char*) Arial28x28);
+//        myLCD.printf("Select JorJew");
+//        myLCD.fillrect(40,130,215,230,DarkGrey);
+//        myLCD.fillrect(265,130,440,230,DarkGrey);
+//        myLCD.fillcircle(127,182,40,White);
+//        myLCD.fillcircle(347,182,40,White);
+//        myLCD.set_font((unsigned char*) Arial43x48_numb, 46, 58, false);
+//        myLCD.background(White);
+//        myLCD.locate(106,160);
+//        myLCD.printf(" 1");
+//        myLCD.locate(326,160);
+//        myLCD.printf(" 2");
+//        wait(5);
+        //point//
+        //myLCD.background(Yellow);
+        //myLCD.foreground(White);
+        
+        //third page//
+        
+        //myLCD.cls();
+//        myLCD.fillrect(0,0,500,50,Orange);
+//        myLCD.locate(150,15);
+//        myLCD.background(Orange);
+//        myLCD.set_font((unsigned char*) Arial28x28);
+//        myLCD.printf("Select JorJew");
+//        myLCD.fillrect(40,130,215,230,DarkGrey);
+//        myLCD.fillrect(265,130,440,230,DarkGrey);
+//        myLCD.fillcircle(127,182,40,White);
+//        myLCD.fillcircle(347,182,40,White);
+//        myLCD.set_font((unsigned char*) Arial43x48_numb, 46, 58, false);
+//        myLCD.background(White);
+//        myLCD.locate(106,160);
+//        myLCD.printf(" 1");
+//        myLCD.locate(326,160);
+//        myLCD.printf(" 2");
+//        myLCD.fillrect(125,90,355,280,Green);  //pop-up
+//        myLCD.set_font((unsigned char*) Arial28x28);
+//        myLCD.locate(165,140);
+//        myLCD.background(Green);
+//        myLCD.foreground(Black);
+//        myLCD.printf(" Take out"); //chosen jor
+//        myLCD.locate(155,180);
+//        myLCD.printf(" JorJew#1/2");
+//        wait(5);
+
+//        //forth page//        
+//        
+//        myLCD.cls();
+//        myLCD.background(backgroundcolor);
+//        myLCD.foreground(foregroundcolor);
+//        myLCD.Bitmap(150,45,180,180,data);
+//        myLCD.fillrect(0,320,500,280,Orange);
+//        time=t.read_us();
+//        for(int i=2; i<350;i++){
+//                myLCD.locate(i,295);
+//                myLCD.set_font((unsigned char*) Arial12x12);
+//                myLCD.printf("Love , Thank you");
+//        }
+//        for(int i=350; i>=2;i--){
+//                myLCD.locate(i,295);
+//                myLCD.set_font((unsigned char*) Arial12x12);
+//                myLCD.printf("Love , Thank you");
+//        }
+//      }
+      } //} 
 }
\ No newline at end of file