main/task_user.c

changeset 42
22a0f9810561
parent 41
d327e0aff62f
child 43
70c99c2084dc
equal deleted inserted replaced
41:d327e0aff62f 42:22a0f9810561
339 * @brief The main overview screen. 339 * @brief The main overview screen.
340 */ 340 */
341 void screen_main() 341 void screen_main()
342 { 342 {
343 char buf[65]; 343 char buf[65];
344 int i; 344 int i, mode[3];
345 uint32_t temperature = 0, pressure[3]; 345 uint32_t temperature = 0, pressure[3];
346 346
347 if (xSemaphoreTake(xSemaphoreUnits, 25) == pdTRUE) { 347 if (xSemaphoreTake(xSemaphoreUnits, 25) == pdTRUE) {
348 temperature = units[0].temperature; 348 temperature = units[0].temperature;
349 for (i = 0; i < 3; i++) { 349 for (i = 0; i < 3; i++) {
350 pressure[i] = units[i].pressure; 350 pressure[i] = units[i].pressure;
351 mode[i] = units[i].mode;
351 } 352 }
352 xSemaphoreGive(xSemaphoreUnits); 353 xSemaphoreGive(xSemaphoreUnits);
353 } else { 354 } else {
354 ESP_LOGE(TAG, "screen_main() lock error"); 355 ESP_LOGE(TAG, "screen_main() lock error");
355 } 356 }
357 screen_top("CO2 meter %s", app_desc->version); 358 screen_top("CO2 meter %s", app_desc->version);
358 u8g2_SetFont(&u8g2, u8g2_font_t0_22b_tf); 359 u8g2_SetFont(&u8g2, u8g2_font_t0_22b_tf);
359 sprintf(buf, "%.1f °C", temperature / 1000.0); 360 sprintf(buf, "%.1f °C", temperature / 1000.0);
360 u8g2_uint_t w = u8g2_GetUTF8Width(&u8g2, buf); 361 u8g2_uint_t w = u8g2_GetUTF8Width(&u8g2, buf);
361 u8g2_DrawUTF8(&u8g2, (128 - w) / 2,40, buf); 362 u8g2_DrawUTF8(&u8g2, (128 - w) / 2,40, buf);
362 u8g2_SetFont(&u8g2, u8g2_font_t0_18b_tf);
363 363
364 for (i = 0; i < 3; i++) { 364 for (i = 0; i < 3; i++) {
365 if (mode[i])
366 u8g2_SetFont(&u8g2, u8g2_font_t0_18b_tf);
367 else
368 u8g2_SetFont(&u8g2, u8g2_font_t0_18_tf);
365 sprintf(buf, "%.1f", pressure[i] / 1000.0); 369 sprintf(buf, "%.1f", pressure[i] / 1000.0);
366 w = u8g2_GetUTF8Width(&u8g2, buf); 370 w = u8g2_GetUTF8Width(&u8g2, buf);
367 u8g2_DrawUTF8(&u8g2, ((42 - w) / 2) + i * 43,63, buf); 371 u8g2_DrawUTF8(&u8g2, ((42 - w) / 2) + i * 43,63, buf);
368 } 372 }
369 373

mercurial