//********************************************************************************
void menu()
{

  
    byte bait;
byte bait1;
byte bait2;
byte bait3;
//long address;
int i;
  int w;
  int w1;
  int w2;
  int q=0;
  int x,y;
  if( t.hour<7 )
{night=1;
}
else
{night=0;
}
    myGLCD.setFont( BigFont);
    
 // myGLCD.fillScr(200,200,200);
 sd.chdir("/");
  delay (100);
//myFiles.loadBitmap(0, 0, 800, 480, "33a.raw");  
  myFile.open("33.raw", O_READ);
  
int n=0;
int m=0;
  for (i =0 ; i < 96000; i = i++)
  {
    n=n+1;
  bait = myFile.read();
 
  bait1 =myFile.read();
  
// w1= (bait - 48) << 4 | (bait1 - 48);
// w2= (bait2 - 48) << 4 | (bait3 - 48);
 w= bait<<8|bait1;
 
 pic1[n]=w;
 //3199
 if (n>399){
 n=0;  
// myGLCD.drawBitmap (0, 20*m, 320, 10, pic1, 2);
//   myGLCD.drawBitmap (0, 2*m, 320, 1, pic1, 2);
  myGLCD.drawBitmap (0, 2*m, 400, 1, pic1, 2);
 m=m+1;
 }
  }
 

  // close the file:d
 myFile.close(); 

 
//  myGLCD.fillScr(VGA_BLUE);
  myGLCD.setColor(VGA_WHITE);
  myGLCD.setBackColor(0,0,55);
 myGLCD.setFont(BigFont);


 
  myGLCD.setColor(255, 255, 255);
  
     myGLCD.drawBitmap (100, 100, 80, 80, flr);
    myGLCD.drawRoundRect (100, 100, 180, 180);// fl
    
     myGLCD.drawBitmap (100, 190, 80, 80, dom1);//******************************
    myGLCD.drawRoundRect (100, 190, 180, 270);// dom1
    
   myGLCD.drawBitmap (10, 10, 80, 80, aandelen);
    myGLCD.drawRoundRect (10, 10, 90, 90);// Aandelend
    
    myGLCD.drawBitmap (100, 10, 80, 80, clokk);
    myGLCD.drawRoundRect (100, 10, 180, 90);// internet
    
    myGLCD.drawBitmap (10, 100, 80, 80,ints);
    myGLCD.drawRoundRect (10, 100, 90, 180); //Radio
    
    myGLCD.drawBitmap (10, 190, 80, 80,wer);
   myGLCD.drawRoundRect (10, 190, 90, 270); //Klok 
   
   
    myGLCD.drawBitmap (10, 280, 80, 80, fotos);
    myGLCD.drawRoundRect (10, 280, 90, 360); //Foto 
    
    myGLCD.drawBitmap (10, 370, 80, 80, instellingen);
     myGLCD.drawRoundRect (10, 370, 90, 450); //Install 
     
      myGLCD.drawBitmap (639, 370, 160, 80,  cl);
     myGLCD.drawRoundRect (639, 370, 799, 450); //Clok 
     
     myGLCD.drawBitmap (769, 449, 30, 30, jar);
    myGLCD.drawRoundRect (769, 449, 769+30, 449+30);// яркость
  kalend();
clc();
  c=0; 
  
    while(1)
{ 
  if (myTouch.dataAvailable())
 
    {
      myTouch.read();
      x=myTouch.getX();
      y=myTouch.getY();
      
         if ((x>=769) && (x<=799))  // Upper row
      {
        
        if ((y>=449) && (y<=479))  // яркость
          {
            waitForIt1(769, 449, 799, 479);
            bright();
             menu();
          }
      } 
      
      if ((x>=100) && (x<=180))  // Upper row
      {
          if ((y>=10) && (y<=90))  // Aandelend
        {waitForIt1(100, 10, 180, 90);
        
        intime();
        menu();
        // grafik();
        //paint();
        
        }
        
        if ((y>=100) && (y<=180))  //Radio
        {waitForIt1(100, 100, 180, 180);
        //radio2();
        Serialread();
       // flower();
        menu();
       
        }
        
        if ((y>=190) && (y<=270))  //HOME
        {waitForIt1(100, 190, 180, 270);
        //radio2();
        initial();
        home1();
        menu();
       
        }
      }
      
      if ((x>=10) && (x<=90))  // Upper row
      {
        
        if ((y>=10) && (y<=90))  // Aandelend
        {waitForIt1(10, 10, 90, 90);
        initial();
         grafik();
        //paint();
        
        }
        
         if ((y>=100) && (y<=180))  //Radio
        {waitForIt1(10, 100, 90, 180);
        //radio2();
        internet();
        menu();
       
        }
        
          if ((y>=190) && (y<=270))  //(10, 190, 90, 270); //Klok 
        {waitForIt1(10, 190, 90, 270);
        initial();
        pogoda();
        
        }
        
          if ((y>=280) && (y<=360))  //(10, 280, 90, 360); //Foto 
        {
          waitForIt1(10, 280, 90, 360);
          initial();
        raw();
        }
        
          if ((y>=370) && (y<=450))  //(10, 370, 90, 450); //Install 
        {waitForIt1(10, 370, 90, 450);
       sdlist();
       menu();
        }
     }    
    
    
    if ((x>=640) && (x<=799))  // Upper row
      { 
        
            if ((y>=10) && (y<=150))  //(10, 370, 90, 450); //Install 
        {
           kalendarset();
            menu();
        }
        
         if ((y>=370) && (y<=450))  //(10, 370, 90, 450); //Clok 
        {waitForIt1(639, 370, 799, 450);
         vrem();
          clok();
        }
      } 
        
    }

 
 //***************************************** 
  
t = rtc.getTime();
 // sec=t.sec;
 if (raw1==0)
 {raw1=1;
 raw();
 }
if (t.sec==0)
{
delay(800);
clc();
}
if ((t.sec==5) || (t.sec==20) || (t.sec==35)|| (t.sec==50))
{  
   priem();
}
 if ((t.sec==14) || (t.sec==42) )
{
dtu21();

 bmp085();
 
 uart();
 }
 

 
}



}
//*******************************************************************************
void kalend()
{
byte bait;
byte bait1;

//long address;

  int w;
  int i;
  int q=0;
 // char* S1[]={"fam1.txt","fam.txt","fam2.txt","fam3.txt"};

  


 
 
myFile.open("Kalendar.raw", O_READ);
  
int n=0;
int m=0;
//160*160=25600
   for (i =0 ; i < 25600; i = i++) {
    n=n+1;
  bait = myFile.read();
 
  bait1 =myFile.read();
  
// w1= (bait - 48) << 4 | (bait1 - 48);
// w2= (bait2 - 48) << 4 | (bait3 - 48);
 w= bait<<8|bait1;
 
 pic1[n]=w;
 //3199
 if (n>159){
 n=0;  
// myGLCD.drawBitmap (0, 20*m, 320, 10, pic1, 2);
  myGLCD.drawBitmap (640, m, 160, 1, pic1, 1);
 m=m+1;
 }
  }
 

  // close the file:
 myFile.close();
 }
//************************************************************************************ 
 
void clc() 
{ char* strm[] = {" JAN","FEBR","MARCH","APRIL"," MAY","JUNE","JULY"," AUG","SEPT"," OCT"," NOV"," DEC"};
  int cx=640;
  int cy=383;
  int month1;
//**********CLOK*******************************************************************************
 myGLCD.setColor(VGA_WHITE);
  myGLCD.setBackColor(0,38,92);
myGLCD.setFont( SevenSegNumFont);
 t = rtc.getTime();
    if (t.hour<10)
  {
    myGLCD.printNumI(0,cx, cy);
    myGLCD.printNumI(t.hour, cx+32, cy);
  }
  else
  {
    myGLCD.printNumI(t.hour,cx, cy);
  }
  myGLCD.print(":",cx+64, cy);
  if (t.min<10)
  {
    myGLCD.printNumI(0,cx+96, cy);
    myGLCD.printNumI(t.min, cx+128, cy);
  }
  else
  {
    myGLCD.printNumI(t.min, cx+96, cy);
  }
  myGLCD.setFont( Ubuntubold);
  //myGLCD.setFont(BigFont);
  
  myGLCD.setColor(0,0,155);
  myGLCD.setBackColor(255,114,0);
  month1=t.mon;
   myGLCD.print(strm[month1-1], 663, 18);
   
// **********WIFI work ********************************************************************
if(t.hour>7)
{
 if (t.min==7)  
  {if (fwifi==1)
     {fwifi=0;
      internet();
     }
  } 
  if (wifi>0) //если была ошибка подключения
  {if (t.min==23)
     {
          internet();
         
      } 
  }
}  

 //**************************опрос всех датчиков каждый час и запись всех данных в massiv 23:00 ******************
 if (t.min==0)
 {

  //  printmassiv();
  if (fsec==1)
  {uart();
  bmp085();
  uart();
  savemastd();//запись данных датчиков в рабочий массив
  
   digitalWrite(53, LOW);//reset NRF
 delay(100);
 digitalWrite(53, HIGH);
 
  fsec=0;  //delay (300);
  if(t.hour==23)
  {sdwrite();//запись данных в файлы по месяцам и дням  директориии улица и дом Temul i Temdom
   savemasclok();//запись времени на sd 12:56 15/05/14 и массива rab
     saveminmax();//запись макс  мин и средних значений датчиков за день
  } 
  
   if((t.hour>=0)||(t.hour<23))
  {
   savemasclok();//запись времени на sd 12:56 15/05/14 и массива rab
  } 

  
  }   
  
}

 if (t.min>30)
 {fsec=1;
  fwifi=1;
 }
 //*****************************************************************    

//  myGLCD.print(rtc.getDOWStr(FORMAT_SHORT), 256+450, 8);
myGLCD.setFont( SevenSegNumFont);
 myGLCD.setColor(0,0,155);
  myGLCD.setBackColor(255,255,255);
  if (t.date<10)
    myGLCD.printNumI(t.date, 710, 56);
  else
    myGLCD.printNumI(t.date, 695, 56);
   // myGLCD.setFont(BigFont);
   // myGLCD.setBackColor(180,180,180);
   myGLCD.setFont( Ubuntubold);
   dow= t.dow;
   myGLCD.print(str[dow-1], 690,110);
 /// myGLCD.printNumI(rtc_clock.get_months(), 695, 122);
 myGLCD.setFont(BigFont);
  myGLCD.setBackColor(180,180,180);
  myGLCD.printNumI(t.year, 694, 143);

   
myGLCD.setBackColor(0,0,55);

}

void waitForIt1(int x1, int y1, int x2, int y2)
{
  myGLCD.setColor(255, 232, 13);
  myGLCD.drawRoundRect (x1, y1, x2, y2);
  while (myTouch.dataAvailable())
    myTouch.read();
  myGLCD.setColor(255, 255, 255);
  myGLCD.drawRoundRect (x1, y1, x2, y2);
}
