You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
80 lines
1.6 KiB
80 lines
1.6 KiB
void kalendar()
|
|
{
|
|
|
|
|
|
myFile.open("Kalendar.raw", O_READ);
|
|
int w = 0; //счетчик строк при чтении из файла
|
|
int n = 0;
|
|
int m = 0;
|
|
byte bait;
|
|
byte bait1;
|
|
//160*160=25600
|
|
for (int i = 0 ; i < 25600; 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;
|
|
//Serial.println("n=0");
|
|
delay(1);
|
|
// 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 kalendardat()
|
|
{
|
|
//int day1,month1,year1, h1,m1,s1;//время дата
|
|
myGLCD.setFont( SevenSegNumFont);
|
|
myGLCD.setColor(0, 0, 155);
|
|
myGLCD.setBackColor(255, 255, 255);
|
|
if (day1 < 10)
|
|
myGLCD.printNumI(day1, 710, 56);
|
|
else
|
|
myGLCD.printNumI(day1, 695, 56);
|
|
// myGLCD.setFont(BigFont);
|
|
// myGLCD.setBackColor(180,180,180);
|
|
myGLCD.setFont( Ubuntubold);
|
|
dow = calcDOW(day1, month1, year1);
|
|
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(year1, 694, 143);
|
|
}
|
|
|
|
byte calcDOW(byte d, byte m, int y)
|
|
{
|
|
int dow;
|
|
byte mArr[12] = {6, 2, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4};
|
|
|
|
dow = (y % 100);
|
|
dow = dow * 1.25;
|
|
dow += d;
|
|
dow += mArr[m - 1];
|
|
if (((y % 4) == 0) && (m < 3))
|
|
dow -= 1;
|
|
while (dow > 7)
|
|
dow -= 7;
|
|
|
|
return dow;
|
|
}
|
|
|