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.
 
 
 
Play/my718/uartperedat.ino

1259 lines
32 KiB

void peredat()//min max 415
{
if(Serial.available()) {
priem(); //171
//1d24.8h500p7630 2u+07.10h63.8s92
}
t = rtc.getTime();
if (t.min<55)
{
if (per>4)
{per=1;
}
//*******************************************************************************
//*******************************************************************************
if (per==4)//5+07.1v4.08 vetzav 921
{Serial.print("5");//prognoz // tuzav;//preszav
// tudzav;
Serial.print(znzav);
if (tuzav>9)
{
Serial.print(tuzav);
}
else
{ Serial.print("0");
Serial.print(tuzav);
}
Serial.print(".");
Serial.print(tudzav);
Serial.print("v");
if (vetczav>9)
{
Serial.print(vetczav);
}
else
{ Serial.print("0");
Serial.print(vetczav);
}
Serial.print(".");
Serial.print(vetdzav);
Serial.print(vetzav);
Serial.print("921");
}
//****************************************************************************
//******************************************************************************
if (per==3)
{//4V1*05.0 pzav 765 7s
Serial.print("4V");//vet
Serial.print(vet);
Serial.print("*");
if (vetc>9)
{
Serial.print(vetc);
}
else
{ Serial.print("0");
Serial.print(vetc);
}
Serial.print(".");
Serial.print(vetd);
// Serial.print("ms");
Serial.print(pzav);
Serial.print(preszav);
Serial.print("7s");
}
//**********************************************************************
if (per==1)
{Serial.print("1d");
//int tem = temperatur;
Serial.print(tdc);
Serial.print(".");
Serial.print(tdd);
Serial.print("h");
int hs=hdc;
Serial.print(hs);
// Serial.print(".");
if (h[0]/10>h[1]/10){Serial.print("1");}
if (h[0]/10==h[1]/10) {Serial.print("0");}
if (h[0]/10<h[1]/10) {Serial.print("2");}
Serial.print("p");
word pr=pressure;
Serial.print(pr);
if (pr>pres[4]+1){ Serial.println("1");}
if (pr==pres[0]) {Serial.println("0");}
if (pr<pres[4]-1){ Serial.println("2");}
}
//**********************************************
//***************************2u+07.10h63.8s9
if (per==2)
{
Serial.print("2u");
if (zn<2)
{
Serial.print("-");
}
else
{
Serial.print("+");
}
if (tu>9)
{
Serial.print(tu);
}
else
{ Serial.print("0");
Serial.print(tu);
}
Serial.print(".");
Serial.print(tud);
int Tm;
int Tm1;
if (zn<2)
{Tm1=-1*tu;
}
else
{Tm1=tu;
}
if (temul[1]>1000)
{ Tm=-1*(temul[1]-1000);
}
else
{
Tm=temul[1];
}
//myGLCD.setFont( Ubuntubold);
if (Tm/10>Tm1)
Serial.print("1");
if (Tm/10==Tm1)
Serial.print("0");
if (Tm/10<Tm1)
Serial.print("2");
// 2u+07.10 h63.8s92
Serial.print("h");
Serial.print(hu);
Serial.print(".");
Serial.print(hud);
Serial.print("s");
Serial.println(ptoday);
//ptoday=0;//погода сегодня 0-солн 1-перемен обл 2-пасмурно 3-дождь 4- снег 5- туман 6-гроза
// Serial.print(osv);1-ясно 2 перем обл 3-облачно 4-дождь-солнце 5-дождь 6 -снег 7- туман
}
//********************************************
//******************************************
per++;
//delay (400);
}
}
//*****************************************************************************************************************
void priem()
{
t = rtc.getTime();
char datf[16];//принятая с премника по UART перемнная
for (int j=0 ; j<15 ;j++)
{ if(Serial.available()) {
datf[j] = Serial.read();//принятая с премника по UART перемнная
}
}
int i=0;
while (i<6000) {
if(Serial.available()) {
datf[16] = Serial.read();
}
i++;
}
//myGLCD.print(datf ,80, 457);
int tfld;// temp flower1
int vfld;// vlaga flower1
int osvd;// svet flower1
int dfld;// time flower1
int tfld2;// temp flower2
int vfld2;// vlaga flower2
int dfld2;// time flower2
int tfld3;// temp flower3
int vfld3;// vlaga flower3
int dfld3;// time flower3
//int tfl3=27;// temp flower
//int vfl3=52;// vlaga flower
//int dfl3=14;// time flower
int tdat;//температура
int hdat;//влажность
int vdat;//напряж батареи датчика
char c ;
char token[] = "6d";//цветок1
char token1[] = "7d";//цветок2
char token2[] = "8d";//цветок3
char token9[] = "9d";//улица
char token11[] = "t1";//датчики
char token12[] = "t2";//датчики
char token13[] = "t3";//датчики
char token14[] = "t4";//датчики
char token15[] = "t5";//датчики
int n=0;
int p=0;
boolean chet=0;
i=0;
//***************************
for (int j=0 ; j<15 ;j++)
{ c=datf[j];//принятая с премника по UART перемнная
if (p==1)
{
if (c == token[1]) {p=11;}
else {
p=0;}
}
if (p==2)
{ if (c==token1[1]){p=22;}
else{
p=0;}
}
if (p==3)
{ if (c==token2[1]){p=33;}
else{
p=0;}
}
if (p==9)
{ if (c==token9[1]){p=99;}
else{
p=0;}
}
if (p==101)//cравнение второго символа на соответствие t 1
{ if (c==token11[1]){p=111;}
}
if (p==101)//cравнение второго символа на соответствие t 2
{ if (c==token12[1]){p=112;}
}
if (p==101)//cравнение второго символа на соответствие t 3
{ if (c==token13[1]){p=113;}
}
if (p==101)//cравнение второго символа на соответствие t 4
{ if (c==token14[1]){p=114;}
}
if (p==101)//cравнение второго символа на соответствие t 5
{ if (c==token15[1]){p=115;}
else{
p=0;}
}
//*************************************************
if (p==99)
{// myFile.print(c);//d+237h895s05v
n++;
if (n==2){
if (c==45){zn9=1;//-
}//znak
else
{zn9=2;//+
}
}
if (n==3) {t9=(c-48)*100;} //температура
if (n==4){t9=(c-48)*10+t9;}
if (n==5){t9=(c-48)+t9;}
if (n==7){h9=(c-48)*100;}//влажность
if (n==8){h9=(c-48)*10+h9;}
if (n==9){h9=(c-48)+h9;}
if (n==11){osv9=10*(c-48);}//освещенность
if (n==12)
{osv9=osv9+(c-48);
if(osv9>99){osv9=99;}
}//sun
hourdu=t.hour;//время прихода данных час
mindu=t.min;//мин
}
//*****************************************
if (p==33)
{// myFile.print(c);//d55v26t07s20t
n++;
if (n==2){vfld3=10*(c-48);}
if (n==3) {vfld3=vfld3+(c-48);} //влажность
if (n==5){tfld3=10*(c-48);}
if (n==6){tfld3=tfld3+(c-48);}//температура
if (n==8){osvd=10*(c-48);}
if (n==9){osvd=osvd+(c-48);}//освещенность
if (n==11){dfld3=10*(c-48);}
if (n==12){dfld3=dfld3+(c-48);}//время
}
//**********************************************************
if (p==22)
{// myFile.print(c);//d55v26t07s20t
n++;
if (n==2){vfld2=10*(c-48);}
if (n==3) {vfld2=vfld2+(c-48);} //влажность
if (n==5){tfld2=10*(c-48);}
if (n==6){tfld2=tfld2+(c-48);}//температура
if (n==8){osvd=10*(c-48);}
if (n==9){osvd=osvd+(c-48);}//освещенность
if (n==11){dfld2=10*(c-48);}
if (n==12){dfld2=dfld2+(c-48);}//время
}
//********************************************
if (p==11)
{// myFile.print(c);//d55v26t07s20t
n++;
if (n==2){vfld=10*(c-48);}
if (n==3) {vfld=vfld+(c-48);} //влажность
if (n==5){tfld=10*(c-48);}
if (n==6){tfld=tfld+(c-48);}//температура
if (n==8){osvd=10*(c-48);}
if (n==9){osvd=osvd+(c-48);}//освещенность
if (n==11){dfld=10*(c-48);}
if (n==12){dfld=dfld+(c-48);}//время
}
//*****************датчики температуры переносные***********************
//************************T1****************************************************
if (p==111) //выделение данных из принятой строки
{// myFile.print(c);//t1+103c375v299h9
ntdat=1;
if(chet==0)
{ if( hourd1==t.hour)
{fh=1;
}
else
{fh=0;
}
chet=1;
}
hourd1=t.hour;
mind1=t.min;
//byte ntdat;номер датчика
//byte zndat;знак температуры 0+
//int tdat;температура
//int hdat;влажность
//int vdat;напряж батареи датчика
n++;
if (n==2){
if (c==45){zndat=1;//-
}//znak
else
{zndat=0;//+
}
}
if (n==3) {tdat=(c-48)*100;} //температура
if (n==4){tdat=(c-48)*10+tdat;}
if (n==5)
{tdat=(c-48)+tdat;
for (int u =22 ; u >= 0; u = u--)
{
t1[u+1]=t1[u];
}
if(zndat==1)//-
{t11=tdat+1000;
t1[0]=t11;
}
else
{t11=tdat;
t1[0]=t11;
}
}
if (n==7){vdat=(c-48)*100;}//напряж батареи датчика
if (n==8){vdat=(c-48)*10+vdat;}
if (n==9)
{vdat=(c-48)+vdat;
bat[0]=vdat;
}
if (n==11){hdat=(c-48)*100;}//влажность
if (n==12)
{hdat=(c-48)*10+hdat;
for (int u =22 ; u >= 0; u = u--)
{
h1[u+1]=h1[u];
}
h1[0]=hdat;
}
if (n==13)
{hdat=(c-48)+hdat;
h11=hdat;
}
}
//**************************************** T2
if (p==112) //выделение данных из принятой строки
{// myFile.print(c);//t2+103c375v299h9
ntdat=2;
if(chet==0)
{ if( hourd2==t.hour)
{fh=1;
}
else
{fh=0;
}
chet=1;
}
hourd2=t.hour;
mind2=t.min;
//byte ntdat;номер датчика
//byte zndat;знак температуры 0+
//int tdat;температура
//int hdat;влажность
//int vdat;напряж батареи датчика
n++;
if (n==2){
if (c==45){zndat=1;//-
}//znak
else
{zndat=0;//+
}
}
if (n==3) {tdat=(c-48)*100;} //температура
if (n==4){tdat=(c-48)*10+tdat;}
if (n==5)
{tdat=(c-48)+tdat;
for (int u =22 ; u >= 0; u = u--)
{
t2[u+1]=t2[u];
}
if(zndat==1)//-
{t12=tdat+1000;
t2[0]=t12;
}
else
{t12=tdat;
t2[0]=t12;
}
}
if (n==7){vdat=(c-48)*100;}//напряж батареи датчика
if (n==8){vdat=(c-48)*10+vdat;}
if (n==9)
{vdat=(c-48)+vdat;
bat[1]=vdat;
}
if (n==11){hdat=(c-48)*100;}//влажность
if (n==12)
{hdat=(c-48)*10+hdat;
for (int u =22 ; u >= 0; u = u--)
{
h2[u+1]=h2[u];
}
h2[0]=hdat;
}
if (n==13)
{hdat=(c-48)+hdat;
h12=hdat;
}
}
//****************************************
//**************************************** T3
if (p==113) //выделение данных из принятой строки
{// myFile.print(c);//t2+103c375v299h9
ntdat=3;
if(chet==0)
{ if( hourd3==t.hour)
{fh=1;
}
else
{fh=0;
}
chet=1;
}
hourd3=t.hour;
mind3=t.min;
//byte ntdat;номер датчика
//byte zndat;знак температуры 0+
//int tdat;температура
//int hdat;влажность
//int vdat;напряж батареи датчика
n++;
if (n==2){
if (c==45){zndat=1;//-
}//znak
else
{zndat=0;//+
}
}
if (n==3) {tdat=(c-48)*100;} //температура
if (n==4){tdat=(c-48)*10+tdat;}
if (n==5)
{tdat=(c-48)+tdat;
for (int u =22 ; u >= 0; u = u--)
{
t3[u+1]=t3[u];
}
if(zndat==1)//-
{t13=tdat+1000;
t3[0]=t13;
}
else
{t13=tdat;
t3[0]=t13;
}
}
if (n==7){vdat=(c-48)*100;}//напряж батареи датчика
if (n==8){vdat=(c-48)*10+vdat;}
if (n==9)
{vdat=(c-48)+vdat;
bat[2]=vdat;
}
if (n==11){hdat=(c-48)*100;}//влажность
if (n==12)
{hdat=(c-48)*10+hdat;
for (int u =22 ; u >= 0; u = u--)
{
h3[u+1]=h3[u];
}
h3[0]=hdat;
}
if (n==13)
{hdat=(c-48)+hdat;
h13=hdat;
}
}
//**************************************** T4 ****************************
if (p==114) //выделение данных из принятой строки
{// myFile.print(c);//t1+103c375v299h9
ntdat=4;
if(chet==0)
{ if( hourd4==t.hour)
{fh=1;
}
else
{fh=0;
}
chet=1;
}
hourd4=t.hour;
mind4=t.min;
//byte ntdat;номер датчика
//byte zndat;знак температуры 0+
//int tdat;температура
//int hdat;влажность
//int vdat;напряж батареи датчика
n++;
if (n==2){
if (c==45){zndat=1;//-
}//znak
else
{zndat=0;//+
}
}
if (n==3) {tdat=(c-48)*100;} //температура
if (n==4){tdat=(c-48)*10+tdat;}
if (n==5)
{tdat=(c-48)+tdat;
for (int u =22 ; u >= 0; u = u--)
{
t4[u+1]=t4[u];
}
if(zndat==1)//-
{t14=tdat+1000;
t4[0]=t14;
}
else
{t14=tdat;
t4[0]=t14;
}
}
if (n==7){vdat=(c-48)*100;}//напряж батареи датчика
if (n==8){vdat=(c-48)*10+vdat;}
if (n==9)
{vdat=(c-48)+vdat;
bat[3]=vdat;
}
if (n==11){hdat=(c-48)*100;}//влажность
if (n==12)
{hdat=(c-48)*10+hdat;
for (int u =22 ; u >= 0; u = u--)
{
h4[u+1]=h4[u];
}
h4[0]=hdat;
}
if (n==13)
{hdat=(c-48)+hdat;
h14=hdat;
}
}
//**************************************** T5
if (p==115) //выделение данных из принятой строки
{// myFile.print(c);//t2+103c375v299h9
ntdat=5;
if(chet==0)
{ if( hourd5==t.hour)
{fh=1;
}
else
{fh=0;
}
chet=1;
}
hourd5=t.hour;
mind5=t.min;
//byte ntdat;номер датчика
//byte zndat;знак температуры 0+
//int tdat;температура
//int hdat;влажность
//int vdat;напряж батареи датчика
n++;
if (n==2){
if (c==45){zndat=1;//-
}//znak
else
{zndat=0;//+
}
}
if (n==3) {tdat=(c-48)*100;} //температура
if (n==4){tdat=(c-48)*10+tdat;}
if (n==5)
{tdat=(c-48)+tdat;
for (int u =22 ; u >= 0; u = u--)
{
t5[u+1]=t5[u];
}
if(zndat==1)//-
{t15=tdat+1000;
t5[0]=t15;
}
else
{t15=tdat;
t3[0]=t15;
}
}
if (n==7){vdat=(c-48)*100;}//напряж батареи датчика
if (n==8){vdat=(c-48)*10+vdat;}
if (n==9)
{vdat=(c-48)+vdat;
bat[4]=vdat;
}
if (n==11){hdat=(c-48)*100;}//влажность
if (n==12)
{hdat=(c-48)*10+hdat;
for (int u =22 ; u >= 0; u = u--)
{
h5[u+1]=h5[u];
}
h5[0]=hdat;
}
if (n==13)
{hdat=(c-48)+hdat;
h15=hdat;
}
}
//*******************************************************************************
if ((c==token[0])&&(p==0)){p=1;}
if ((c==token1[0])&&(p==0)){p=2;}
if ((c==token2[0])&&(p==0)){p=3;}
if ((c==token9[0])&&(p==0)){p=9;}
if ((c==token11[0])&&(p==0)){p=101;}//cравнение первого символа на соответствие t
}//for
//*************************************************
if ((p==111)||(p==112)||(p==113)||(p==114)||(p==115))
{savetdat();
return;
}
//*******************POLIV***************************************************************************
char* strm[] = {"JAN","FEBR","MARCH","APRIL","MAY","JUNE","JULY","AUG","SEPT","OCT","NOV","DEC"};
char* stry[] = {"2014","2015","2016","2017","2018","2019","2020","2021","2022","2023","2024","2025","2026","2027","2028","2029","2030","2031","2032","2033","2034","2035"};
char* name;
sd.chdir("/");
delay (100);
sd.chdir("flower");
delay (100);
name= stry[t.year-2014];
if (!sd.chdir(name))
{sd.mkdir(name);
}
sd.chdir(name);//установка раб директории
delay (100);
name= strm[t.mon-1];
if (!sd.chdir(name))
{sd.mkdir(name);
}
sd.chdir(name);//установка раб директории
delay (100);
if (n>12)
{
if (p==99)
{
//********************************************************************
if((t9<650)&& (h9<1000)&& (h9>0))
{ tu=t9/10;//темп улица целая часть
tud=t9%10;//темп улица дробная часть
hu=h9/10;//влажность улица целая часть
hud=h9%10;//влажность улица дробная часть
volt=510;//напряжение в батарейках
zn=zn9;// знак ул темп 1- 2+
}
int Tun;//настоящая температура
int Tumin;// отриц температура
if (zn==2)
{
Tun=tu*10+tud;
zn=2;
}
if (zn==1)
{Tun=tu*10+tud;
zn=1;//-
}
if (Tun<600)
{
if((hu>0)&&(volt>0))
{
if (zn==2)// +++++++++++++++++++++++++++++
{if (Tun>temul[24]) //max Tul
{temul[24]=Tun;
time1[24]=(t.date*1000)+(t.mon)*10+((t.year-2000)/10);
time1[25]=(t.hour*1000)+(t.min)*10+((t.year-2000)%10);//tem%10
fa=1;//флаг появления макс темп
}
//проверка на отр темп
if (temul[25]<1000)//pol+
{
if (Tun<temul[25]) //min Tul
{
temul[25]=Tun;
time1[26]=(t.date*1000)+(t.mon)*10+((t.year-2000)/10);
time1[27]=(t.hour*1000)+(t.min)*10+((t.year-2000)%10);//tem%10
fi=1;//флаг появления мин темп для записи на флеш
}
}
}//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
if (zn==1)// ---------------------------------
{
if (temul[25]>999)
{
if (Tun>temul[25]-1000) //min Tul
{
temul[25]=Tun+1000;
time1[26]=(t.date*1000)+(t.mon)*10+((t.year-2000)/10);
time1[27]=(t.hour*1000)+(t.min)*10+((t.year-2000)%10);//tem%10
fi=1;//флаг появления мин темп для записи на флеш
}
}
if (temul[25]<1000)
{ temul[25]=Tun+1000;//min Tul
time1[26]=(t.date*1000)+(t.mon)*10+((t.year-2000)/10);
time1[27]=(t.hour*1000)+(t.min)*10+((t.year-2000)%10);//tem%10
fi=1;//флаг появления мин темп для записи на флеш
}
}
}//hu>0
}//>-300
//**************************************************************************
myGLCD.setColor(VGA_WHITE);
myGLCD.setBackColor(0,172,238);
myGLCD.setFont(BigFont);
if(zn==1)
{ myGLCD.print("T=-" ,80, 457);
}
else
{myGLCD.print("T=+" ,80, 457);
}
myGLCD.printNumI(t9/10,80+48,457);
myGLCD.print("," ,80+48+32, 457);
myGLCD.printNumI(t9%10,80+48+32+16,457);
myGLCD.print("C H=" ,80+48+32+16+16, 457);
myGLCD.printNumI(h9/10,80+48+32+16+16+64,457);
myGLCD.print("," ,80+48+32+16+16+64+32, 457);
myGLCD.printNumI(h9%10 ,80+48+32+16+16+64+48,457);
myGLCD.print("% S=" ,80+48+32+16+16+64+48+16, 457);
if(osv9>99){osv9=99;}
myGLCD.printNumI(osv9,80+48+32+16+16+64+48+16+64,457);
min9=t.min;
hour9=t.hour;
myGLCD.printNumI(hour9,80+48+32+16+16+64+48+16+64+64,457);
myGLCD.print(":" ,80+48+32+16+16+64+48+16+64+64+32, 457);
if(min9>9){
myGLCD.printNumI(min9,80+48+32+16+16+64+48+16+64+64+32+16,457);
}
else
{myGLCD.print("0" ,80+48+32+16+16+64+48+16+64+64+32+16, 457);
myGLCD.printNumI(min9,80+48+32+16+16+64+48+16+64+64+32+16+16,457);
}
}
if (p==11)
{
//*********************
myGLCD.setColor(VGA_WHITE);
myGLCD.setBackColor(0,172,238);
myGLCD.setFont(BigFont);
myGLCD.print("T=+" ,80, 457);
myGLCD.printNumI(tfl ,80+48, 457);
myGLCD.print(" V=" ,80+48+32, 457);
myGLCD.printNumI(vfl ,80+48+48+32, 457);
myGLCD.print("%" ,80+48+48+32+32, 457);
myGLCD.print(" S=" ,80+48+48+32+32+16, 457);
myGLCD.printNumI(osv ,80+48+48+32+32+16+48, 457);
myGLCD.printNumI(dfld2 ,80+48+48+32+32+16+48+48, 457);
myGLCD.print(":" ,80+48+48+32+32+16+48+48+32, 457);
myGLCD.printNumI(min1 ,80+48+48+32+32+16+48+48+32+16, 457);
//*****************************
myFile.open("poliv.txt", O_RDWR | O_CREAT | O_AT_END);
delay (50);
//**************запиь в файл*******************************************
if (dfl!=dfld) {
if((dfld==t.hour)||(dfld==t.hour-1)||(dfld==t.hour+1))
{
tfl=tfld;// temp flower
vfl=vfld;// vlaga flower
osv=osvd;// svet flower
dfl=dfld;
if(dfl>9)
{myFile.print(dfl);
}
else
{myFile.print("0");
myFile.print(dfl);
}
myFile.print(":00");
myFile.print(" vl=");
if(vfl>9)
{myFile.print(vfl);
}
else
{myFile.print("0");
myFile.print(vfl);
}
myFile.print(" t=");
if(tfl>9)
{myFile.print(tfl);
}
else
{myFile.print("0");
myFile.print(tfl);
}
myFile.print(" s=");
if(osv>9)
{myFile.println(osv);
}
else
{myFile.print("0");
myFile.println(osv);
}
}
}
}
if (p==22)
{
//*********************
myGLCD.setColor(VGA_WHITE);
myGLCD.setBackColor(0,172,238);
myGLCD.setFont(BigFont);
myGLCD.print("T=+" ,80, 457);
myGLCD.printNumI(tfl2 ,80+48, 457);
myGLCD.print(" V=" ,80+48+32, 457);
myGLCD.printNumI(vfl2 ,80+48+48+32, 457);
myGLCD.print("%" ,80+48+48+32+32, 457);
myGLCD.print(" S=" ,80+48+48+32+32+16, 457);
myGLCD.printNumI(osv ,80+48+48+32+32+16+48, 457);
myGLCD.printNumI(dfld2 ,80+48+48+32+32+16+48+48, 457);
myGLCD.print(":" ,80+48+48+32+32+16+48+48+32, 457);
myGLCD.printNumI(min1 ,80+48+48+32+32+16+48+48+32+16, 457);
//*****************************
myFile.open("poliv2.txt", O_RDWR | O_CREAT | O_AT_END);
delay (50);
//**************запиь в файл*******************************************
if (dfl2!=dfld2) {
if((dfld2==t.hour)||(dfld2==t.hour-1)||(dfld2==t.hour+1))
{
tfl2=tfld2;// temp flower
vfl2=vfld2;// vlaga flower
osv=osvd;// svet flower
dfl2=dfld2;
if(dfl2>9)
{myFile.print(dfl2);
}
else
{myFile.print("0");
myFile.print(dfl2);
}
myFile.print(":00");
myFile.print(" vl=");
if(vfl2>9)
{myFile.print(vfl2);
}
else
{myFile.print("0");
myFile.print(vfl2);
}
myFile.print(" t=");
if(tfl2>9)
{myFile.print(tfl2);
}
else
{myFile.print("0");
myFile.print(tfl2);
}
myFile.print(" s=");
if(osv>9)
{myFile.println(osv);
}
else
{myFile.print("0");
myFile.println(osv);
}
}
}
}
//*************************************************************
if (p==33)
{
//*********************
myGLCD.setColor(VGA_WHITE);
myGLCD.setBackColor(0,172,238);
myGLCD.setFont(BigFont);
myGLCD.print("T=+" ,80, 457);
myGLCD.printNumI(tfl3 ,80+48, 457);
myGLCD.print(" V=" ,80+48+32, 457);
myGLCD.printNumI(vfl3 ,80+48+48+32, 457);
myGLCD.print("%" ,80+48+48+32+32, 457);
myGLCD.print(" S=" ,80+48+48+32+32+16, 457);
myGLCD.printNumI(osv ,80+48+48+32+32+16+48, 457);
myGLCD.printNumI(dfld3 ,80+48+48+32+32+16+48+48, 457);
myGLCD.print(":" ,80+48+48+32+32+16+48+48+32, 457);
myGLCD.printNumI(min1 ,80+48+48+32+32+16+48+48+32+16, 457);
//*****************************
myFile.open("poliv3.txt", O_RDWR | O_CREAT | O_AT_END);
delay (50);
//**************запиь в файл*******************************************
if (dfl3!=dfld3) {
if((dfld3==t.hour)||(dfld3==t.hour-1)||(dfld3==t.hour+1))
{
tfl3=tfld3;// temp flower
vfl3=vfld3;// vlaga flower
osv=osvd;// svet flower
dfl3=dfld3;
if(dfl3>9)
{myFile.print(dfl3);
}
else
{myFile.print("0");
myFile.print(dfl3);
}
myFile.print(":00");
myFile.print(" vl=");
if(vfl3>9)
{myFile.print(vfl3);
}
else
{myFile.print("0");
myFile.print(vfl3);
}
myFile.print(" t=");
if(tfl3>9)
{myFile.print(tfl3);
}
else
{myFile.print("0");
myFile.print(tfl3);
}
myFile.print(" s=");
if(osv>9)
{myFile.println(osv);
}
else
{myFile.print("0");
myFile.println(osv);
}
}
}
}
//*************************************************************
}//n=12
delay (100);
myFile.close();
delay (100);
sd.chdir("/");
delay (100);
}
void savefld()
{
char* strm[] = {"JAN","FEBR","MARCH","APRIL","MAY","JUNE","JULY","AUG","SEPT","OCT","NOV","DEC"};
char* stry[] = {"2014","2015","2016","2017","2018","2019","2020","2021","2022","2023","2024","2025","2026","2027","2028","2029","2030","2031","2032","2033","2034","2035"};
mon1=t.mon;
days1=t.date;
char* name;
sd.chdir("/");
delay (100);
sd.chdir("flower");
delay (100);
name= stry[t.year-2014];
if (!sd.chdir(name))
{sd.mkdir(name);
}
sd.chdir(name);//установка раб директории
delay (100);
name= strm[t.mon-1];
if (!sd.chdir(name))
{sd.mkdir(name);
}
sd.chdir(name);//установка раб директории
delay (100);
myFile.open("poliv.txt", O_RDWR | O_CREAT | O_AT_END);
delay (50);
myFile.print("date: ");
if(days1>9)
{myFile.print(days1);
}
else{
myFile.print("0");
myFile.print(days1);
}
myFile.print("/");
if(mon1>9)
{myFile.println(mon1);
}
else{
myFile.print("0");
myFile.println(mon1);
}
delay (100);
myFile.close();
delay (100);
sd.chdir("/");
delay (100);
//**********************************************************************
sd.chdir("/");
delay (100);
sd.chdir("flower");
delay (100);
name= stry[t.year-2014];
if (!sd.chdir(name))
{sd.mkdir(name);
}
sd.chdir(name);//установка раб директории
delay (100);
name= strm[t.mon-1];
if (!sd.chdir(name))
{sd.mkdir(name);
}
sd.chdir(name);//установка раб директории
delay (100);
myFile.open("poliv2.txt", O_RDWR | O_CREAT | O_AT_END);
delay (50);
myFile.print("date: ");
if(days1>9)
{myFile.print(days1);
}
else{
myFile.print("0");
myFile.print(days1);
}
myFile.print("/");
if(mon1>9)
{myFile.println(mon1);
}
else{
myFile.print("0");
myFile.println(mon1);
}
delay (100);
myFile.close();
delay (100);
sd.chdir("/");
delay (100);
//**********************************************************************
sd.chdir("/");
delay (100);
sd.chdir("flower");
delay (100);
name= stry[t.year-2014];
if (!sd.chdir(name))
{sd.mkdir(name);
}
sd.chdir(name);//установка раб директории
delay (100);
name= strm[t.mon-1];
if (!sd.chdir(name))
{sd.mkdir(name);
}
sd.chdir(name);//установка раб директории
delay (100);
myFile.open("poliv3.txt", O_RDWR | O_CREAT | O_AT_END);
delay (50);
myFile.print("date: ");
if(days1>9)
{myFile.print(days1);
}
else{
myFile.print("0");
myFile.print(days1);
}
myFile.print("/");
if(mon1>9)
{myFile.println(mon1);
}
else{
myFile.print("0");
myFile.println(mon1);
}
delay (100);
myFile.close();
delay (100);
sd.chdir("/");
delay (3000);
}