thermferm/thermferm.c

changeset 214
37d1eb0e1d66
parent 213
2317b8d644fa
child 215
5ad534c79a22
equal deleted inserted replaced
213:2317b8d644fa 214:37d1eb0e1d66
84 break; 84 break;
85 default: syslog(LOG_NOTICE, "die() on signal %d", onsig); 85 default: syslog(LOG_NOTICE, "die() on signal %d", onsig);
86 } 86 }
87 87
88 my_shutdown = TRUE; 88 my_shutdown = TRUE;
89 }
90
91
92
93 void go_menu(int menu)
94 {
95 mb_lcdClear(lcdHandle);
96 lcdPosition(lcdHandle, 0, 0);
97 setupmenu = menu;
98
99 switch (menu) {
100 case MENU_NONE: lcd_buf_show();
101 break;
102
103 case MENU_TOP_DEFAULT: mb_lcdPuts(lcdHandle, "Setup mode.");
104 lcdPosition(lcdHandle, 0, 1);
105 mb_lcdPuts(lcdHandle, "Up&Down = Escape");
106 break;
107
108 case MENU_TOP_UNITS: mb_lcdPuts(lcdHandle, "Select units");
109 break;
110
111 case MENU_UNITS: mb_lcdPuts(lcdHandle, "Choose unit:");
112 break;
113
114 case MENU_MODE_OFF: mb_lcdPuts(lcdHandle, "Set unit OFF");
115 break;
116
117 case MENU_MODE_NONE: mb_lcdPuts(lcdHandle, "Set unit NONE");
118 break;
119
120 case MENU_NONE_HEAT: mb_lcdPuts(lcdHandle, "Switch heater");
121 break;
122
123 case MENU_NONE_COOL: mb_lcdPuts(lcdHandle, "Switch cooler");
124 break;
125
126 case MENU_NONE_FAN: mb_lcdPuts(lcdHandle, "Switch Fan");
127 break;
128
129 case MENU_MODE_BEER: mb_lcdPuts(lcdHandle, "Set unit BEER");
130 break;
131
132 case MENU_BEER_TEMP: mb_lcdPuts(lcdHandle, "Set beer temp");
133 break;
134
135 case MENU_MODE_FRIDGE: mb_lcdPuts(lcdHandle, "Set unit FRIDGE");
136 break;
137
138 case MENU_FRIDGE_TEMP: mb_lcdPuts(lcdHandle, "Set fridge temp");
139 break;
140
141 case MENU_MODE_PROFILE: mb_lcdPuts(lcdHandle, "Set unit PROFILE");
142 break;
143
144 case MENU_PROFILE_SELECT: mb_lcdPuts(lcdHandle, "Select profile");
145 break;
146
147 case MENU_PROFILE_START: mb_lcdPuts(lcdHandle, "Start profile");
148 break;
149
150 case MENU_PROFILE_PAUSE: mb_lcdPuts(lcdHandle, "Pause profile");
151 break;
152
153 case MENU_PROFILE_ABORT: mb_lcdPuts(lcdHandle, "Abort profile");
154 break;
155
156 case MENU_PROFILE_RESUME: mb_lcdPuts(lcdHandle, "Resume profile");
157 break;
158
159 case MENU_PROFILE_GOOFF: mb_lcdPuts(lcdHandle, "Set profile OFF");
160 break;
161
162 case MENU_TOP_SYS: mb_lcdPuts(lcdHandle, "System menu");
163 break;
164
165 case MENU_SYS_HALT: mb_lcdPuts(lcdHandle, "Halt system");
166 break;
167
168 case MENU_SYS_REBOOT: mb_lcdPuts(lcdHandle, "Reboot system");
169 break;
170
171 case MENU_SYS_MASH: mb_lcdPuts(lcdHandle, "Start Mash program");
172 break;
173
174 case MENU_SYS_THERMS: mb_lcdPuts(lcdHandle, "Start Thermometers");
175 break;
176 }
89 } 177 }
90 178
91 179
92 180
93 #ifdef HAVE_WIRINGPI_H 181 #ifdef HAVE_WIRINGPI_H
657 745
658 switch (setupmenu) { 746 switch (setupmenu) {
659 case MENU_NONE: 747 case MENU_NONE:
660 if ((key == KEY_DOWN) || (key == KEY_UP)) 748 if ((key == KEY_DOWN) || (key == KEY_UP))
661 lcd_buf_step(key); 749 lcd_buf_step(key);
662 if ((key == KEY_CONFIRM) && (setupmenu == MENU_NONE)) { 750 if ((key == KEY_CONFIRM) && (setupmenu == MENU_NONE))
663 setupmenu = MENU_TOP; 751 go_menu(MENU_TOP_DEFAULT);
664 mb_lcdClear(lcdHandle); 752 break;
665 lcdPosition(lcdHandle, 0, 0); 753
666 mb_lcdPuts(lcdHandle, "Setup mode."); 754 case MENU_TOP_DEFAULT:
667 lcdPosition(lcdHandle, 0, 1); 755 if (key == KEY_ESCAPE)
668 mb_lcdPuts(lcdHandle, "Up&Down = Escape"); 756 go_menu(MENU_NONE);
669 } 757 if (key == KEY_DOWN)
670 break; 758 go_menu(MENU_TOP_UNITS);
671 759 if (key == KEY_UP)
672 case MENU_TOP: 760 go_menu(MENU_TOP_SYS);
673 if (key == KEY_ESCAPE) { 761 break;
674 setupmenu = MENU_NONE; 762
675 lcd_buf_show(); 763 case MENU_TOP_UNITS:
676 } 764 if (key == KEY_ESCAPE)
677 break; 765 go_menu(MENU_NONE);
766 if (key == KEY_DOWN)
767 go_menu(MENU_TOP_SYS);
768 if (key == KEY_UP)
769 go_menu(MENU_TOP_DEFAULT);
770 break;
771
772 case MENU_TOP_SYS:
773 if (key == KEY_ESCAPE)
774 go_menu(MENU_NONE);
775 if (key == KEY_DOWN)
776 go_menu(MENU_TOP_DEFAULT);
777 if (key == KEY_UP)
778 go_menu(MENU_TOP_UNITS);
779 if (key == KEY_ENTER)
780 go_menu(MENU_SYS_HALT);
781 break;
782
783 case MENU_SYS_HALT:
784 if (key == KEY_ESCAPE)
785 go_menu(MENU_TOP_SYS);
786 if (key == KEY_DOWN)
787 go_menu(MENU_SYS_REBOOT);
788 if (key == KEY_UP)
789 go_menu(MENU_SYS_THERMS);
790 break;
791
792 case MENU_SYS_REBOOT:
793 if (key == KEY_ESCAPE)
794 go_menu(MENU_TOP_SYS);
795 if (key == KEY_DOWN)
796 go_menu(MENU_SYS_MASH);
797 if (key == KEY_UP)
798 go_menu(MENU_SYS_HALT);
799 break;
800
801 case MENU_SYS_MASH:
802 if (key == KEY_ESCAPE)
803 go_menu(MENU_TOP_SYS);
804 if (key == KEY_DOWN)
805 go_menu(MENU_SYS_THERMS);
806 if (key == KEY_UP)
807 go_menu(MENU_SYS_REBOOT);
808 break;
809
810 case MENU_SYS_THERMS:
811 if (key == KEY_ESCAPE)
812 go_menu(MENU_TOP_SYS);
813 if (key == KEY_DOWN)
814 go_menu(MENU_SYS_HALT);
815 if (key == KEY_UP)
816 go_menu(MENU_SYS_MASH);
817 break;
818
678 } 819 }
679 820
680 #endif 821 #endif
681 822
682 usleep(100000); 823 usleep(100000);

mercurial