#ifdef TEST2 //#include "TEST2_2024-0324.inc" LCD_Cmd(LCD_CLEAR);__delay_ms(100); //12345678901234567890 LCD_Write_CText_At(1,1,"Selection Programme "); LCD_Write_CText_At(2,1," Cde Clavier PRG=x "); LCD_Write_CText_At(3,1," avec x =2 à 9 "); LCD_Write_CText_At(4,1,"et x=Q pour Quitter "); __delay_xSec(2); CPrint("--------- Zone Test 2 24-03-2024 ----------------\r\n"); CPrint("\r\n Lecture table programmes horaire en eeprom\r\n"); Lecture_Eeprom_Table_Programmes_Horaires(1); // parametre : 1 = avec visu CPrint(" Decodage table de programmation sauf CONF24/24 et ECO 24/24 car sur 1 seule plage\r\n"); do { //for (j=2;j<10;j++) //{ // j=9 ; Print ("\r\n choix Numero de programme ? saisir PRG=x (avec x=2 à 9 ) x=Q pour Sortir \r\n"); RAZ_UART1_Buffer1(); // et arme interrupt UART RX do { __delay_xSec(2); // sert de delay de boucle principale } while(Flag_Buffer1==0); CPrint("Recu :"); Print(Buffer1); CRLF1(); p0=&Buffer1[0]; cx=*(p0+4) ; if ((*(p0)=='P') && (*(p0+1)=='R') && ( *(p0+2)=='G') && ( *(p0+3)=='=') ) { cx=*(p0+4) ; if ( (cx >='1') && (cx<='9') ) { sprintf(CRam1,"new prog en cours #%3d %c \r\n",cx-48,Progr_Name[cx-48]); Print(CRam1); Progr_En_Cours=cx-48; // Rafraichit_LCD_Table_en_cours(cx); } p0=0; } if (cx=='Q') break; LCD_Cmd(LCD_CLEAR);__delay_ms(100); CRLF1(); strConstRamCpy(txt," "); TEXTE[0]=0; strncpy(CRam1,&Tables_Programmations_Horaires[Progr_En_Cours][24],8); LCD_Write_Text_At(1,1,CRam1); CPrint(" Decodage Table #"); PrintChar(Progr_En_Cours+48); PrintChar(':');Print(CRam1);CRLF1(); LCD_Write_CText_At(2,1,"Decodage Table "); // affiche table de programmation en cours sur LCD LCD_Write_CText_At(3,1,"Matin"); for (i=0;i<12;i++) LCD_Chr_At( 3,9+i, Tables_Programmations_Horaires[Progr_En_Cours][i]); LCD_Write_CText_At(4,1,"A.Midi"); for (i=0;i<12;i++) LCD_Chr_At( 4,9+i,Tables_Programmations_Horaires[Progr_En_Cours][i+12]); k=0; i=0; Plage=0; txt=&TEXTE[0]; Erase_Line(2); i=0; Deb=Tables_Programmations_Horaires[Progr_En_Cours][i]; OldDeb=Deb; do { do { i++; Deb=Tables_Programmations_Horaires[Progr_En_Cours][i]; } while ( (i<23) && (Deb==OldDeb) ) ; TEXTE[0]=32; if(Deb==0) TEXTE[0]='('; if (Deb==3) TEXTE[0]='*'; TEXTE[1]= (i/10)+48; TEXTE[2]= (i%10)+48; TEXTE[3]='h'; Plage++; TEXTE[4]=0; switch (Plage) // renseigne la plage au bon endroit ! { case 1: CPrint("\tPlage 1H :"); Print( TEXTE); CRLF1(); LCD_Write_Text_At(1,9,TEXTE); break; case 2: LCD_Write_Text_At(2,9,TEXTE); CPrint("\tPlage 1B :"); Print( TEXTE); CRLF1(); break; case 3: CPrint("\tPlage 2H :"); Print( TEXTE); CRLF1(); LCD_Write_Text_At(1,13,TEXTE); break; case 4: LCD_Write_Text_At(2,13,TEXTE); CPrint("\tPlage 2B :"); Print( TEXTE); CRLF1(); break; case 5: LCD_Write_Text_At(1,17,TEXTE); CPrint("\tPlage 3H :"); Print( TEXTE); CRLF1(); break; case 6: LCD_Write_Text_At(2,17,TEXTE); CPrint("\tPlage 3B :"); Print( TEXTE); CRLF1(); break; default: break; } OldDeb=Deb; i++; __delay_xSec(1); } while(i<23); CPrint(" ------------\r\n"); } while(1); #endif // TEST2 // --------------------------------------------- /µ 00054 00055 00056 PRG=2 Recu :PRG=2 new prog en cours # 2 D Decodage Table #2:DOMUS>R Plage 1H :*07h Plage 1B :(22h ------------ choix Numero de programme ? saisir PRG=x (avec x=2 à 9 ) x=Q pour Sortir PRG=3 Recu :PRG=3 new prog en cours # 3 M Decodage Table #3:MATIN>W Plage 1H :*06h Plage 1B :(08h Plage 2H :*10h Plage 2B :(22h ------------ choix Numero de programme ? saisir PRG=x (avec x=2 à 9 ) x=Q pour Sortir PRG=4 Recu :PRG=4 new prog en cours # 4 R Decodage Table #4:RMidi>W Plage 1H :*06h Plage 1B :(08h Plage 2H :*11h Plage 2B :(13h Plage 3H :*17h Plage 3B :(22h ------------ choix Numero de programme ? saisir PRG=x (avec x=2 à 9 ) x=Q pour Sortir PRG=5 Recu :PRG=5 new prog en cours # 5 A Decodage Table #5:AMidi>W Plage 1H :*07h Plage 1B :(13h Plage 2H :*19h Plage 2B :(22h ------------ choix Numero de programme ? saisir PRG=x (avec x=2 à 9 ) x=Q pour Sortir PRG=6 Recu :PRG=6 new prog en cours # 6 J Decodage Table #6:JOUR>W Plage 1H :*06h Plage 1B :(08h Plage 2H :*17h Plage 2B :(22h ------------ choix Numero de programme ? saisir PRG=x (avec x=2 à 9 ) x=Q pour Sortir PRG=7 Recu :PRG=7 new prog en cours # 7 P Decodage Table #7:P>Pers1 Plage 1H : 06h Plage 1B :(08h Plage 2H :*17h Plage 2B :(22h ------------ choix Numero de programme ? saisir PRG=x (avec x=2 à 9 ) x=Q pour Sortir PRG=8 Recu :PRG=8 new prog en cours # 8 T Decodage Table #8:T>Pers2 Plage 1H : 06h Plage 1B :*08h Plage 2H : 16h Plage 2B :(18h Plage 3H :*20h Plage 3B : 22h ------------ choix Numero de programme ? saisir PRG=x (avec x=2 à 9 ) x=Q pour Sortir PRG=9 Recu :PRG=9 new prog en cours # 9 V Decodage Table #9:V>Pers3 Plage 1H : 02h Plage 1B : 05h Plage 2H :*08h Plage 2B : 14h Plage 3H : 17h Plage 3B :(20h ------------ choix Numero de programme ? saisir PRG=x (avec x=2 à 9 ) x=Q pour Sortir */