main/manual.c

changeset 62
2e90ada37476
parent 54
7b134c27fadb
child 89
fa44bd094e01
equal deleted inserted replaced
61:c7b8a9931b59 62:2e90ada37476
30 */ 30 */
31 bool Manual_Init(void) 31 bool Manual_Init(void)
32 { 32 {
33 switch (Main_Screen) { 33 switch (Main_Screen) {
34 case MAIN_MANUAL_INIT: 34 case MAIN_MANUAL_INIT:
35 ESP_LOGI(TAG, "Start manual mode"); 35 log_msg(TAG, "Start manual mode");
36 if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) { 36 if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) {
37 driver_state->enable = true; 37 driver_state->enable = true;
38 xSemaphoreGive(xSemaphoreDriver); 38 xSemaphoreGive(xSemaphoreDriver);
39 } 39 }
40 break; 40 break;
119 vTaskDelay(20 / portTICK_PERIOD_MS); 119 vTaskDelay(20 / portTICK_PERIOD_MS);
120 } 120 }
121 Buttons_Clear(); 121 Buttons_Clear();
122 122
123 if (! _ManualHLT && ! _ManualMLT) { 123 if (! _ManualHLT && ! _ManualMLT) {
124 ESP_LOGI(TAG, "End manual mode"); 124 log_msg(TAG, "End manual mode");
125 Main_Screen = MAIN_MODE_FREE; 125 Main_Screen = MAIN_MODE_FREE;
126 break; 126 break;
127 } 127 }
128 if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) { 128 if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) {
129 /* Set them all, even if not in use now. */ 129 /* Set them all, even if not in use now. */
141 if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) { 141 if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) {
142 driver_state->mlt_mode = MLT_MODE_OFF; 142 driver_state->mlt_mode = MLT_MODE_OFF;
143 xSemaphoreGive(xSemaphoreDriver); 143 xSemaphoreGive(xSemaphoreDriver);
144 } 144 }
145 } 145 }
146 log_msg(TAG, "HLT:%s MLT:%s", (_ManualHLT)?"true":"false", (_ManualMLT)?"true":"false");
146 Main_Screen = MAIN_MANUAL_MAIN; 147 Main_Screen = MAIN_MANUAL_MAIN;
147 break; 148 break;
148 149
149 case MAIN_MANUAL_MAIN: 150 case MAIN_MANUAL_MAIN:
150 if (_ManualMLT) { 151 if (_ManualMLT) {
153 if (_ManualHLT) { 154 if (_ManualHLT) {
154 HLT_info(71, 150, true, false); 155 HLT_info(71, 150, true, false);
155 } 156 }
156 switch (Buttons_Scan()) { 157 switch (Buttons_Scan()) {
157 case 0: Main_Screen = MAIN_MODE_FREE; 158 case 0: Main_Screen = MAIN_MODE_FREE;
158 ESP_LOGI(TAG, "End manual mode"); 159 log_msg(TAG, "End manual mode");
159 if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) { 160 if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) {
160 runtime.ManualHLT = driver_state->hlt_sp; 161 runtime.ManualHLT = driver_state->hlt_sp;
161 runtime.ManualMLT = driver_state->mlt_sp; 162 runtime.ManualMLT = driver_state->mlt_sp;
162 driver_state->enable = false; 163 driver_state->enable = false;
163 driver_state->mlt_mode = MLT_MODE_NONE; 164 driver_state->mlt_mode = MLT_MODE_NONE;
171 break; 172 break;
172 173
173 case 1: if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) { 174 case 1: if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) {
174 if (_ManualMLT) { 175 if (_ManualMLT) {
175 driver_state->mlt_sp += 0.25; 176 driver_state->mlt_sp += 0.25;
177 log_msg(TAG, "MLT sp %.2f", driver_state->mlt_sp);
176 } else { 178 } else {
177 driver_state->hlt_sp += 0.25; 179 driver_state->hlt_sp += 0.25;
180 log_msg(TAG, "HLT sp %.2f", driver_state->hlt_sp);
178 } 181 }
179 xSemaphoreGive(xSemaphoreDriver); 182 xSemaphoreGive(xSemaphoreDriver);
180 } 183 }
181 break; 184 break;
182 185
183 case 2: if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) { 186 case 2: if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) {
184 if (_ManualMLT) { 187 if (_ManualMLT) {
185 driver_state->mlt_sp -= 0.25; 188 driver_state->mlt_sp -= 0.25;
189 log_msg(TAG, "MLT sp %.2f", driver_state->mlt_sp);
186 } else { 190 } else {
187 driver_state->hlt_sp -= 0.25; 191 driver_state->hlt_sp -= 0.25;
192 log_msg(TAG, "HLT sp %.2f", driver_state->hlt_sp);
188 } 193 }
189 xSemaphoreGive(xSemaphoreDriver); 194 xSemaphoreGive(xSemaphoreDriver);
190 } 195 }
191 break; 196 break;
192 197
196 driver_state->pump_run = 0; 201 driver_state->pump_run = 0;
197 else 202 else
198 driver_state->pump_run = 1; 203 driver_state->pump_run = 1;
199 xSemaphoreGive(xSemaphoreDriver); 204 xSemaphoreGive(xSemaphoreDriver);
200 } 205 }
206 log_msg(TAG, "Pump turned %s", driver_state->pump_run?"on":"off");
201 } else { 207 } else {
202 if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) { 208 if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) {
203 if (driver_state->hlt_mode == HLT_MODE_BANG) { 209 if (driver_state->hlt_mode == HLT_MODE_BANG) {
204 driver_state->hlt_mode = HLT_MODE_OFF; 210 driver_state->hlt_mode = HLT_MODE_OFF;
205 Buttons_Add(255, 200, 60, 40, (char *)"Aan" , 3); 211 Buttons_Add(255, 200, 60, 40, (char *)"Aan" , 3);
206 ESP_LOGI(TAG, "HLT turned off"); 212 log_msg(TAG, "HLT turned off");
207 } else { 213 } else {
208 driver_state->hlt_mode = HLT_MODE_BANG; 214 driver_state->hlt_mode = HLT_MODE_BANG;
209 Buttons_Add(255, 200, 60, 40, (char *)"Uit" , 3); 215 Buttons_Add(255, 200, 60, 40, (char *)"Uit" , 3);
210 ESP_LOGI(TAG, "HLT turned on"); 216 log_msg(TAG, "HLT turned on sp %.2f", driver_state->hlt_sp);
211 } 217 }
212 xSemaphoreGive(xSemaphoreDriver); 218 xSemaphoreGive(xSemaphoreDriver);
213 } 219 }
214 Buttons_Show(); 220 Buttons_Show();
215 } 221 }
217 223
218 case 4: if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) { 224 case 4: if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) {
219 if (driver_state->mlt_mode == MLT_MODE_PID) { 225 if (driver_state->mlt_mode == MLT_MODE_PID) {
220 driver_state->mlt_mode = MLT_MODE_OFF; 226 driver_state->mlt_mode = MLT_MODE_OFF;
221 Buttons_Add(255, 76, 60, 40, (char *)"Aan" , 4); 227 Buttons_Add(255, 76, 60, 40, (char *)"Aan" , 4);
222 ESP_LOGI(TAG, "MLT turned off"); 228 log_msg(TAG, "MLT turned off");
223 } else { 229 } else {
224 driver_state->mlt_mode = MLT_MODE_PID; 230 driver_state->mlt_mode = MLT_MODE_PID;
225 Buttons_Add(255, 76, 60, 40, (char *)"Uit" , 4); 231 Buttons_Add(255, 76, 60, 40, (char *)"Uit" , 4);
226 ESP_LOGI(TAG, "MLT turned on"); 232 log_msg(TAG, "MLT turned on sp %.2f", driver_state->mlt_sp);
227 } 233 }
228 xSemaphoreGive(xSemaphoreDriver); 234 xSemaphoreGive(xSemaphoreDriver);
229 } 235 }
230 Buttons_Show(); 236 Buttons_Show();
231 break; 237 break;
232 238
233 case 5: if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) { 239 case 5: if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) {
234 driver_state->hlt_sp += 0.25; 240 driver_state->hlt_sp += 0.25;
235 xSemaphoreGive(xSemaphoreDriver); 241 xSemaphoreGive(xSemaphoreDriver);
236 } 242 }
243 log_msg(TAG, "HLT sp %.2f", driver_state->hlt_sp);
237 break; 244 break;
238 245
239 case 6: if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) { 246 case 6: if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) {
240 driver_state->hlt_sp -= 0.25; 247 driver_state->hlt_sp -= 0.25;
241 xSemaphoreGive(xSemaphoreDriver); 248 xSemaphoreGive(xSemaphoreDriver);
242 } 249 }
250 log_msg(TAG, "HLT sp %.2f", driver_state->hlt_sp);
243 break; 251 break;
244 252
245 case 7: if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) { 253 case 7: if (xSemaphoreTake(xSemaphoreDriver, 10) == pdTRUE) {
246 if (driver_state->hlt_mode == HLT_MODE_BANG) { 254 if (driver_state->hlt_mode == HLT_MODE_BANG) {
247 driver_state->hlt_mode = HLT_MODE_OFF; 255 driver_state->hlt_mode = HLT_MODE_OFF;
248 Buttons_Add(255, 200, 60, 40, (char *)"Aan" , 7); 256 Buttons_Add(255, 200, 60, 40, (char *)"Aan" , 7);
249 ESP_LOGI(TAG, "HLT turned off"); 257 log_msg(TAG, "HLT turned off");
250 } else { 258 } else {
251 driver_state->hlt_mode = HLT_MODE_BANG; 259 driver_state->hlt_mode = HLT_MODE_BANG;
252 Buttons_Add(255, 200, 60, 40, (char *)"Uit" , 7); 260 Buttons_Add(255, 200, 60, 40, (char *)"Uit" , 7);
253 ESP_LOGI(TAG, "HLT turned on"); 261 log_msg(TAG, "HLT turned on %.2f", driver_state->hlt_sp);
254 } 262 }
255 xSemaphoreGive(xSemaphoreDriver); 263 xSemaphoreGive(xSemaphoreDriver);
256 } 264 }
257 Buttons_Show(); 265 Buttons_Show();
258 break; 266 break;

mercurial