Преглед на файлове

Use blink to show more info on LCD (#12256)

MasterPIC преди 6 години
родител
ревизия
6e041b9c61
променени са 2 файла, в които са добавени 28 реда и са изтрити 9 реда
  1. 27
    8
      Marlin/src/lcd/HD44780/ultralcd_impl_HD44780.cpp
  2. 1
    1
      Marlin/src/lcd/dogm/status_screen_DOGM.cpp

+ 27
- 8
Marlin/src/lcd/HD44780/ultralcd_impl_HD44780.cpp Целия файл

848
       lcd_put_u8str(itostr3(feedrate_percentage));
848
       lcd_put_u8str(itostr3(feedrate_percentage));
849
       lcd_put_wchar('%');
849
       lcd_put_wchar('%');
850
 
850
 
851
-      #if LCD_WIDTH >= 20 && HAS_PRINT_PROGRESS
852
-        lcd_moveto(7, 2);
853
-        _draw_print_progress();
854
-      #endif
855
-
856
       char buffer[14];
851
       char buffer[14];
857
       duration_t elapsed = print_job_timer.duration();
852
       duration_t elapsed = print_job_timer.duration();
858
-      uint8_t len = elapsed.toDigital(buffer);
859
-
860
-      lcd_moveto(LCD_WIDTH - len - 1, 2);
853
+      const uint8_t len = elapsed.toDigital(buffer),
854
+                    timepos = LCD_WIDTH - len - 1;
855
+      lcd_moveto(timepos, 2);
861
       lcd_put_wchar(LCD_CLOCK_CHAR);
856
       lcd_put_wchar(LCD_CLOCK_CHAR);
862
       lcd_put_u8str(buffer);
857
       lcd_put_u8str(buffer);
863
 
858
 
859
+      #if LCD_WIDTH >= 20
860
+        lcd_moveto(timepos - 7, 2);
861
+        #if HAS_PRINT_PROGRESS
862
+          _draw_print_progress();
863
+        #else
864
+          #if HAS_FAN0
865
+            char c;
866
+            int per;
867
+            if (blink) {
868
+              c = 'F';
869
+              per = ((int(fan_speed[0]) + 1) * 100) / 256;
870
+            }
871
+            else
872
+          #endif
873
+            {
874
+              c = 'E';
875
+              per = planner.flow_percentage[0];
876
+            }
877
+          lcd_put_wchar(c);
878
+          lcd_put_u8str(itostr3(per));
879
+          lcd_put_wchar('%');
880
+        #endif
881
+      #endif
882
+
864
     #endif // LCD_HEIGHT > 3
883
     #endif // LCD_HEIGHT > 3
865
 
884
 
866
     // ========= Last Line ========
885
     // ========= Last Line ========

+ 1
- 1
Marlin/src/lcd/dogm/status_screen_DOGM.cpp Целия файл

282
     #if HAS_FAN0
282
     #if HAS_FAN0
283
       if (PAGE_CONTAINS(STATUS_SCREEN_FAN_TEXT_Y - 7, STATUS_SCREEN_FAN_TEXT_Y)) {
283
       if (PAGE_CONTAINS(STATUS_SCREEN_FAN_TEXT_Y - 7, STATUS_SCREEN_FAN_TEXT_Y)) {
284
         // Fan
284
         // Fan
285
-        const uint16_t per = (((uint16_t)fan_speed[0] + 1) * 100) / 256;
285
+        const int per = ((int(fan_speed[0]) + 1) * 100) / 256;
286
         if (per) {
286
         if (per) {
287
           lcd_moveto(STATUS_SCREEN_FAN_TEXT_X, STATUS_SCREEN_FAN_TEXT_Y);
287
           lcd_moveto(STATUS_SCREEN_FAN_TEXT_X, STATUS_SCREEN_FAN_TEXT_Y);
288
           lcd_put_u8str(itostr3(per));
288
           lcd_put_u8str(itostr3(per));

Loading…
Отказ
Запис