// Haussteuerung // Menüfile // (c) Jan Hermann //-------------------------------------------------------------------- #include "main.h" long t; unsigned int TestInt = 0; #define ARRAYGROESSE 10 unsigned char Array[ARRAYGROESSE] = {1,2,3,4,5,6,7,8,9,10}; void Menu(unsigned char key) { static unsigned int arr = 0; static unsigned char MaxMenue = 19,MenuePunkt=0; unsigned char text[19]; if(key & KEY1) { if(MenuePunkt) MenuePunkt--; else MenuePunkt = MaxMenue; LCD_Clear; } if(key & KEY2) { MenuePunkt++; LCD_Clear; } if((key & KEY1) && (key & KEY2)) MenuePunkt = 0; sprintf(text,"[%i]",MenuePunkt); LCD_Writexy(16,0,text); switch(MenuePunkt) { case 0: LCD_Writexy(0,0,"Haussteuerung"); LCD_Writexy(0,1,"(C) Jan Hermann"); LCD_Writexy(0,2,"1.2008"); break; case 1: LCD_Writexy(0,0,"System-Uhr"); sprintf(text,"%3i:%002i:",Minute,Sekunde); LCD_Writexy(0,1,text); sprintf(text,"%002i:%2i:",Sekunde,Minute); LCD_Writexy(1,2,text); if(key & KEY3) if(Minute) Minute--; if(key & KEY4) Minute++; if(key & KEY5) Sekunde = 0; break; case 2: LCD_Writexy(0,0,"Einstellungen"); LCD_Writexy(0,1,"Grundstruktur"); if(key & KEY5) { } break; case 3: LCD_Writexy(0,0,"Deckenlichter"); LCD_Writexy(0,1,"an-aus"); break; case 4: LCD_Writexy(0,0,"Steckdosen"); LCD_Writexy(0,1,"an-aus"); break; case 5: LCD_Writexy(0,0,"Rolllaeden"); LCD_Writexy(0,1,"hoch-runter"); break; case 6: LCD_Writexy(0,0,"Heizung"); LCD_Writexy(0,1,"Raumtemperatur-"); LCD_Writexy(0,2,"steuerung") break; case 7: LCD_Writexy(0,0,"Effektsteuerung"); LCD_Writexy(0,1,"Soundsysteme"); break; case 8: LCD_Writexy(0,0,"Effektsteuerung"); LCD_Writexy(0,1,"Light"); break; case 9: LCD_Writexy(0,0,"Relais-Ausgaenge"); LCD_Writexy(0,1,"Hochvolt"); break; case 10: LCD_Writexy(0,0,"Relais-Ausgaenge"); LCD_Writexy(0,1,"Niedervolt"); break; case 11: LCD_Writexy(0,0,"Festprogramme"); LCD_Writexy(0,1,"Auswahl"); break; case 12: LCD_Writexy(0,0,"Einstellungen"); LCD_Writexy(0,1,"Effektsteuerung"); break; case 13: LCD_Writexy(0,0,"Einstellungen"); LCD_Writexy(0,1,"Rlais-Ausgaenge"); break; case 14: LCD_Writexy(0,0,"Einstellungen"); LCD_Writexy(0,1,"Festprogramme"); break; case 15: LCD_Writexy(0,0,"Einstellungen"); LCD_Writexy(0,1,"Steckdosen"); break; case 16: LCD_Writexy(0,0,"Einstellungen"); LCD_Writexy(0,1,"Licht"); break; case 17: LCD_Writexy(0,0,"Einstellungen"); LCD_Writexy(0,1,"Rollaeden"); break; case 18: LCD_Writexy(0,0,"Einstellungen"); LCD_Writexy(0,1,"Heizung"); break; case 19: LCD_Writexy(0,0,"Betriebsmodus"); LCD_Writexy(0,1,"Haussteuerung"); LCD_Writexy(0,2,"Systemzeit"); sprintf(text,"%3i:%002i:",Minute,Sekunde); LCD_Writexy(0,3,text); break; default: MaxMenue = MenuePunkt -2; MenuePunkt = 0; break; } }