ソースを参照

Merge pull request #4043 from AnHardt/save_delay

Introduce save_delay()
Scott Lahteine 9年前
コミット
948c467e16
1個のファイルの変更18行の追加5行の削除
  1. 18
    5
      Marlin/ultralcd_implementation_hitachi_HD44780.h

+ 18
- 5
Marlin/ultralcd_implementation_hitachi_HD44780.h ファイルの表示

@@ -443,6 +443,15 @@ unsigned lcd_print(char c) { return charset_mapper(c); }
443 443
     lcd.setCursor(indent, 2); lcd.print('\x02'); lcd_printPGM(PSTR( "------" ));  lcd.print('\x03');
444 444
   }
445 445
 
446
+  void safe_delay(uint16_t del){
447
+    while (del > 50) {
448
+      del -= 50;
449
+      delay(50);
450
+      thermalManager.manage_heater();
451
+    }
452
+    delay(del);
453
+  }
454
+
446 455
   void bootscreen() {
447 456
     byte top_left[8] = {
448 457
       B00000,
@@ -498,7 +507,7 @@ unsigned lcd_print(char c) { return charset_mapper(c); }
498 507
       if (strlen(STRING) <= LCD_WIDTH) { \
499 508
         lcd.setCursor((LCD_WIDTH - lcd_strlen_P(PSTR(STRING))) / 2, 3); \
500 509
         lcd_printPGM(PSTR(STRING)); \
501
-        delay(DELAY); \
510
+        safe_delay(DELAY); \
502 511
       } \
503 512
       else { \
504 513
         lcd_scroll(0, 3, PSTR(STRING), LCD_WIDTH, DELAY); \
@@ -516,7 +525,7 @@ unsigned lcd_print(char c) { return charset_mapper(c); }
516 525
         #ifdef STRING_SPLASH_LINE2
517 526
           CENTER_OR_SCROLL(STRING_SPLASH_LINE2, 2000);
518 527
         #else
519
-          delay(2000);
528
+          safe_delay(2000);
520 529
         #endif
521 530
       }
522 531
       else {
@@ -541,7 +550,7 @@ unsigned lcd_print(char c) { return charset_mapper(c); }
541 550
       //
542 551
       if (LCD_EXTRA_SPACE >= strlen(STRING_SPLASH_LINE2) + 1) {
543 552
         logo_lines(PSTR(" " STRING_SPLASH_LINE2));
544
-        delay(2000);
553
+        safe_delay(2000);
545 554
       }
546 555
       else {
547 556
         logo_lines(PSTR(""));
@@ -552,9 +561,13 @@ unsigned lcd_print(char c) { return charset_mapper(c); }
552 561
       // Show only the Marlin logo
553 562
       //
554 563
       logo_lines(PSTR(""));
555
-      delay(2000);
564
+      safe_delay(2000);
556 565
     #endif
557
-
566
+    lcd_set_custom_characters(
567
+    #if ENABLED(LCD_PROGRESS_BAR)
568
+      false
569
+    #endif
570
+    );
558 571
   }
559 572
 
560 573
 #endif // SHOW_BOOTSCREEN

読み込み中…
キャンセル
保存