浏览代码

Extended Preheat options

Preheat LCD menus base on code by D-Base
Dim3nsioneer 11 年前
父节点
当前提交
944ced87c5
共有 2 个文件被更改,包括 275 次插入41 次删除
  1. 118
    8
      Marlin/language.h
  2. 157
    33
      Marlin/ultralcd.cpp

+ 118
- 8
Marlin/language.h 查看文件

@@ -77,9 +77,19 @@
77 77
 	#define MSG_AUTO_HOME "Auto home"
78 78
 	#define MSG_SET_ORIGIN "Set origin"
79 79
 	#define MSG_PREHEAT_PLA "Preheat PLA"
80
-	#define MSG_PREHEAT_PLA_SETTINGS "Preheat PLA conf"
80
+	#define MSG_PREHEAT_PLA0 "Preheat PLA 1"
81
+	#define MSG_PREHEAT_PLA1 "Preheat PLA 2"
82
+	#define MSG_PREHEAT_PLA2 "Preheat PLA 3"
83
+	#define MSG_PREHEAT_PLA012 "Preheat PLA All"
84
+	#define MSG_PREHEAT_PLA_BEDONLY "Preheat PLA Bed"
85
+	#define MSG_PREHEAT_PLA_SETTINGS "Preheat PLA Conf"
81 86
 	#define MSG_PREHEAT_ABS "Preheat ABS"
82
-	#define MSG_PREHEAT_ABS_SETTINGS "Preheat ABS conf"
87
+	#define MSG_PREHEAT_ABS0 "Preheat ABS 1"
88
+	#define MSG_PREHEAT_ABS1 "Preheat ABS 2"
89
+	#define MSG_PREHEAT_ABS2 "Preheat ABS 3"
90
+	#define MSG_PREHEAT_ABS012 "Preheat ABS All"
91
+	#define MSG_PREHEAT_ABS_BEDONLY "Preheat ABS Bed"
92
+	#define MSG_PREHEAT_ABS_SETTINGS "Preheat ABS Conf"
83 93
 	#define MSG_COOLDOWN "Cooldown"
84 94
 	#define MSG_SWITCH_PS_ON "Switch power on"
85 95
 	#define MSG_SWITCH_PS_OFF "Switch power off"
@@ -264,9 +274,19 @@
264 274
 	#define MSG_AUTO_HOME "Auto. poz. zerowa"
265 275
 	#define MSG_SET_ORIGIN "Ustaw punkt zero"
266 276
 	#define MSG_PREHEAT_PLA "Rozgrzej PLA"
267
-	#define MSG_PREHEAT_PLA_SETTINGS "Ustaw. rozg. PLA"
277
+	#define MSG_PREHEAT_PLA0 "Rozgrzej PLA 1"
278
+	#define MSG_PREHEAT_PLA1 "Rozgrzej PLA 2"
279
+	#define MSG_PREHEAT_PLA2 "Rozgrzej PLA 3"
280
+	#define MSG_PREHEAT_PLA012 "Rozgrzej PLA Wszystko"
281
+	#define MSG_PREHEAT_PLA_BEDONLY "Rozgrzej PLA Loze"
282
+	#define MSG_PREHEAT_PLA_SETTINGS "Ustawienia roz. PLA"
268 283
 	#define MSG_PREHEAT_ABS "Rozgrzej ABS"
269
-	#define MSG_PREHEAT_ABS_SETTINGS "Ustaw. rozg. ABS"
284
+	#define MSG_PREHEAT_ABS0 "Rozgrzej ABS 1"
285
+	#define MSG_PREHEAT_ABS1 "Rozgrzej ABS 2"
286
+	#define MSG_PREHEAT_ABS2 "Rozgrzej ABS 3"
287
+	#define MSG_PREHEAT_ABS012 "Rozgrzej ABS Wszystko"
288
+	#define MSG_PREHEAT_ABS_BEDONLY "Rozgrzej ABS Loze"
289
+	#define MSG_PREHEAT_ABS_SETTINGS "Ustawienia roz. ABS"
270 290
 	#define MSG_COOLDOWN "Chlodzenie"
271 291
 	#define MSG_SWITCH_PS_ON "Wlacz zasilacz"
272 292
 	#define MSG_SWITCH_PS_OFF "Wylacz zasilacz"
@@ -453,9 +473,19 @@
453 473
 	#define MSG_AUTO_HOME "Home auto."
454 474
 	#define MSG_SET_ORIGIN "Regler origine"
455 475
 	#define MSG_PREHEAT_PLA " Prechauffage PLA"
456
-	#define MSG_PREHEAT_PLA_SETTINGS " Regl. prech. PLA"
476
+	#define MSG_PREHEAT_PLA0 "Prechauffage PLA 1"
477
+	#define MSG_PREHEAT_PLA1 "Prechauffage PLA 2"
478
+	#define MSG_PREHEAT_PLA2 "Prechauffage PLA 3"
479
+	#define MSG_PREHEAT_PLA012 "Prechauffage PLA Tout"
480
+	#define MSG_PREHEAT_PLA_BEDONLY "Prechauffage PLA Plateau"
481
+	#define MSG_PREHEAT_PLA_SETTINGS " Regl. prechauffe PLA"
457 482
 	#define MSG_PREHEAT_ABS "Prechauffage ABS"
458
-	#define MSG_PREHEAT_ABS_SETTINGS "Regl. prech. ABS"
483
+	#define MSG_PREHEAT_ABS0 "Prechauffage ABS 1"
484
+	#define MSG_PREHEAT_ABS1 "Prechauffage ABS 2"
485
+	#define MSG_PREHEAT_ABS2 "Prechauffage ABS 3"
486
+	#define MSG_PREHEAT_ABS012 "Prechauffage ABS Tout"
487
+	#define MSG_PREHEAT_ABS_BEDONLY "Prechauffage ABS Plateau"
488
+	#define MSG_PREHEAT_ABS_SETTINGS "Regl. prechauffe ABS"
459 489
 	#define MSG_COOLDOWN "Refroidir"
460 490
 	#define MSG_SWITCH_PS_ON "Allumer alim."
461 491
 	#define MSG_SWITCH_PS_OFF "Eteindre alim."
@@ -643,9 +673,19 @@
643 673
 	#define MSG_AUTO_HOME        "Auto Nullpunkt"
644 674
 	#define MSG_SET_ORIGIN       "Setze Nullpunkt"
645 675
 	#define MSG_PREHEAT_PLA      "Vorwärmen PLA"
646
-	#define MSG_PREHEAT_PLA_SETTINGS "Vorwärm. PLA Ein."
676
+	#define MSG_PREHEAT_PLA0     "Vorwärmen PLA 1"
677
+	#define MSG_PREHEAT_PLA1     "Vorwärmen PLA 2"
678
+	#define MSG_PREHEAT_PLA2     "Vorwärmen PLA 3"
679
+	#define MSG_PREHEAT_PLA012   "Vorwärmen PLA Alle"
680
+	#define MSG_PREHEAT_PLA_BEDONLY "Vorwärmen PLA Bett"
681
+	#define MSG_PREHEAT_PLA_SETTINGS "Vorwärmen PLA Einstellungen"
647 682
 	#define MSG_PREHEAT_ABS      "Vorwärmen ABS"
648
-	#define MSG_PREHEAT_ABS_SETTINGS "Vorwärm. ABS Ein."
683
+	#define MSG_PREHEAT_ABS0     "Vorwärmen ABS 1"
684
+	#define MSG_PREHEAT_ABS1     "Vorwärmen ABS 2"
685
+	#define MSG_PREHEAT_ABS2     "Vorwärmen ABS 3"
686
+	#define MSG_PREHEAT_ABS012   "Vorwärmen ABS Alle"
687
+	#define MSG_PREHEAT_ABS_BEDONLY "Vorwärmen ABS Bett"
688
+	#define MSG_PREHEAT_ABS_SETTINGS "Vorwärmen ABS Einstellungen"
649 689
 	#define MSG_COOLDOWN         "Abkühlen"
650 690
 	#define MSG_SWITCH_PS_ON     "Switch Power On"
651 691
 	#define MSG_SWITCH_PS_OFF    "Switch Power Off"
@@ -832,8 +872,18 @@
832 872
 	#define MSG_AUTO_HOME "Llevar al origen"
833 873
 	#define MSG_SET_ORIGIN "Establecer cero"
834 874
 	#define MSG_PREHEAT_PLA "Precalentar PLA"
875
+	#define MSG_PREHEAT_PLA0 "Precalentar PLA 1"
876
+	#define MSG_PREHEAT_PLA1 "Precalentar PLA 2"
877
+	#define MSG_PREHEAT_PLA2 "Precalentar PLA 3"
878
+	#define MSG_PREHEAT_PLA012 "Precalentar PLA Todo"
879
+	#define MSG_PREHEAT_PLA_BEDONLY "Precalentar PLA Base"
835 880
 	#define MSG_PREHEAT_PLA_SETTINGS "Ajustar temp. PLA"
836 881
 	#define MSG_PREHEAT_ABS "Precalentar ABS"
882
+	#define MSG_PREHEAT_ABS0 "Precalentar ABS 1"
883
+	#define MSG_PREHEAT_ABS1 "Precalentar ABS 2"
884
+	#define MSG_PREHEAT_ABS2 "Precalentar ABS 3"
885
+	#define MSG_PREHEAT_ABS012 "Precalentar ABS Todo"
886
+	#define MSG_PREHEAT_ABS_BEDONLY "Precalentar ABS Base"
837 887
 	#define MSG_PREHEAT_ABS_SETTINGS "Ajustar temp. ABS"
838 888
 	#define MSG_COOLDOWN "Enfriar"
839 889
 	#define MSG_SWITCH_PS_ON "Switch Power On"
@@ -1026,8 +1076,18 @@
1026 1076
 	#define MSG_AUTO_HOME						"Парковка"
1027 1077
 	#define MSG_SET_ORIGIN						"Запомнить ноль"
1028 1078
 	#define MSG_PREHEAT_PLA 					"Преднагрев PLA"
1079
+	#define MSG_PREHEAT_PLA0					"Преднагрев PLA0"
1080
+	#define MSG_PREHEAT_PLA1					"Преднагрев PLA1"
1081
+	#define MSG_PREHEAT_PLA2					"Преднагрев PLA2"
1082
+	#define MSG_PREHEAT_PLA012 					"Преднагрев PLA все "
1083
+	#define MSG_PREHEAT_PLA_BEDONLY 			"Преднагрев PLA  \002 Кровать"
1029 1084
 	#define MSG_PREHEAT_PLA_SETTINGS  			"Настройки PLA"
1030 1085
 	#define MSG_PREHEAT_ABS						"Преднагрев ABS"
1086
+	#define MSG_PREHEAT_ABS0					"Преднагрев ABS0"
1087
+	#define MSG_PREHEAT_ABS1					"Преднагрев ABS1"
1088
+	#define MSG_PREHEAT_ABS2					"Преднагрев ABS2"
1089
+	#define MSG_PREHEAT_ABS012 					"Преднагрев ABS все "
1090
+	#define MSG_PREHEAT_ABS_BEDONLY 			"Преднагрев ABS  \002 Кровать"
1031 1091
 	#define MSG_PREHEAT_ABS_SETTINGS  			"Настройки ABS"
1032 1092
 	#define MSG_COOLDOWN						"Охлаждение"
1033 1093
 	#define MSG_SWITCH_PS_ON					"Switch Power On"
@@ -1211,8 +1271,18 @@
1211 1271
 	#define MSG_AUTO_HOME            "Auto Home"
1212 1272
 	#define MSG_SET_ORIGIN           "Imposta Origine"
1213 1273
 	#define MSG_PREHEAT_PLA          "Preriscalda PLA"
1274
+	#define MSG_PREHEAT_PLA0         "Preriscalda PLA 1"
1275
+	#define MSG_PREHEAT_PLA1         "Preriscalda PLA 2"
1276
+	#define MSG_PREHEAT_PLA2         "Preriscalda PLA 3"
1277
+	#define MSG_PREHEAT_PLA012       "Preriscalda PLA Tutto"
1278
+	#define MSG_PREHEAT_PLA_BEDONLY  "Preriscalda PLA Piatto"
1214 1279
 	#define MSG_PREHEAT_PLA_SETTINGS "Preris. PLA Conf"
1215 1280
 	#define MSG_PREHEAT_ABS          "Preriscalda ABS"
1281
+	#define MSG_PREHEAT_ABS0         "Preriscalda ABS 1"
1282
+	#define MSG_PREHEAT_ABS1         "Preriscalda ABS 2"
1283
+	#define MSG_PREHEAT_ABS2         "Preriscalda ABS 3"
1284
+	#define MSG_PREHEAT_ABS012       "Preriscalda ABS Tutto"
1285
+	#define MSG_PREHEAT_ABS_BEDONLY  "Preriscalda ABS Piatto"
1216 1286
 	#define MSG_PREHEAT_ABS_SETTINGS "Preris. ABS Conf"
1217 1287
 	#define MSG_COOLDOWN             "Raffredda"
1218 1288
 	#define MSG_SWITCH_PS_ON         "Switch Power On"
@@ -1398,8 +1468,18 @@
1398 1468
 	#define MSG_AUTO_HOME "Ir para origen"
1399 1469
 	#define MSG_SET_ORIGIN "Estabelecer orig."
1400 1470
 	#define MSG_PREHEAT_PLA "Pre-aquecer PLA"
1471
+	#define MSG_PREHEAT_PLA0 " pre-aquecer PLA 1"
1472
+	#define MSG_PREHEAT_PLA1 " pre-aquecer PLA 2"
1473
+	#define MSG_PREHEAT_PLA2 " pre-aquecer PLA 3"
1474
+	#define MSG_PREHEAT_PLA012 " pre-aquecer PLA Tudo"
1475
+	#define MSG_PREHEAT_PLA_BEDONLY  " pre-aquecer PLA \002Base"
1401 1476
 	#define MSG_PREHEAT_PLA_SETTINGS "PLA setting"
1402 1477
 	#define MSG_PREHEAT_ABS "Pre-aquecer ABS"
1478
+	#define MSG_PREHEAT_ABS0 " pre-aquecer ABS 1"
1479
+	#define MSG_PREHEAT_ABS1 " pre-aquecer ABS 2"
1480
+	#define MSG_PREHEAT_ABS2 " pre-aquecer ABS 3"
1481
+	#define MSG_PREHEAT_ABS012 " pre-aquecer ABS Tudo"
1482
+	#define MSG_PREHEAT_ABS_BEDONLY  " pre-aquecer ABS \002Base"
1403 1483
 	#define MSG_PREHEAT_ABS_SETTINGS "ABS setting"
1404 1484
 	#define MSG_COOLDOWN "Esfriar"
1405 1485
 	#define MSG_SWITCH_PS_ON "Switch Power On"
@@ -1592,8 +1672,18 @@
1592 1672
 	#define MSG_AUTO_HOME "Aja referenssiin"
1593 1673
 	#define MSG_SET_ORIGIN "Aseta origo"
1594 1674
 	#define MSG_PREHEAT_PLA "Esilammita PLA"
1675
+	#define MSG_PREHEAT_PLA0 "Esilammita PLA 1"
1676
+	#define MSG_PREHEAT_PLA1 "Esilammita PLA 2"
1677
+	#define MSG_PREHEAT_PLA2 "Esilammita PLA 3"
1678
+	#define MSG_PREHEAT_PLA012 "Esilammita PLA Kaikki"
1679
+	#define MSG_PREHEAT_PLA_BEDONLY  "Esilammita PLA Alusta"
1595 1680
 	#define MSG_PREHEAT_PLA_SETTINGS "Esilamm. PLA konf"
1596 1681
 	#define MSG_PREHEAT_ABS "Esilammita ABS"
1682
+	#define MSG_PREHEAT_ABS0 "Esilammita ABS 1"
1683
+	#define MSG_PREHEAT_ABS1 "Esilammita ABS 2"
1684
+	#define MSG_PREHEAT_ABS2 "Esilammita ABS 3"
1685
+	#define MSG_PREHEAT_ABS012 "Esilammita ABS Kaikki"
1686
+	#define MSG_PREHEAT_ABS_BEDONLY  "Esilammita ABS Alusta"
1597 1687
 	#define MSG_PREHEAT_ABS_SETTINGS "Esilamm. ABS konf"
1598 1688
 	#define MSG_COOLDOWN "Jaahdyta"
1599 1689
 	#define MSG_SWITCH_PS_ON "Virta paalle"
@@ -1779,8 +1869,18 @@
1779 1869
 	#define MSG_AUTO_HOME "Levar a l'orichen"
1780 1870
 	#define MSG_SET_ORIGIN "Establir zero"
1781 1871
 	#define MSG_PREHEAT_PLA "Precalentar PLA"
1872
+	#define MSG_PREHEAT_PLA0 "Precalentar PLA0"
1873
+	#define MSG_PREHEAT_PLA1 "Precalentar PLA1"
1874
+	#define MSG_PREHEAT_PLA2 "Precalentar PLA2"
1875
+	#define MSG_PREHEAT_PLA012 "Precalentar PLA a"
1876
+	#define MSG_PREHEAT_PLA_BEDONLY  "Prec. PLA Base"
1782 1877
 	#define MSG_PREHEAT_PLA_SETTINGS "Achustar tem. PLA"
1783 1878
 	#define MSG_PREHEAT_ABS "Precalentar ABS"
1879
+	#define MSG_PREHEAT_ABS0 "Precalentar ABS0"
1880
+	#define MSG_PREHEAT_ABS1 "Precalentar ABS1"
1881
+	#define MSG_PREHEAT_ABS2 "Precalentar ABS2"
1882
+	#define MSG_PREHEAT_ABS012 "Precalentar ABS a"
1883
+	#define MSG_PREHEAT_ABS_BEDONLY  "Prec. ABS Base"
1784 1884
 	#define MSG_PREHEAT_ABS_SETTINGS "Achustar tem. ABS"
1785 1885
 	#define MSG_COOLDOWN "Enfriar"
1786 1886
 	#define MSG_SWITCH_PS_ON "Enchegar Fuent"
@@ -1972,8 +2072,18 @@
1972 2072
 	#define MSG_AUTO_HOME "Auto home"
1973 2073
 	#define MSG_SET_ORIGIN "Nulpunt instellen"
1974 2074
 	#define MSG_PREHEAT_PLA "PLA voorverwarmen"
2075
+	#define MSG_PREHEAT_PLA0 "PLA voorverw. 0"
2076
+	#define MSG_PREHEAT_PLA1 "PLA voorverw. 1"
2077
+	#define MSG_PREHEAT_PLA2 "PLA voorverw. 2"
2078
+	#define MSG_PREHEAT_PLA012 "PLA voorverw. aan"
2079
+	#define MSG_PREHEAT_PLA_BEDONLY  "PLA voorverw. Bed"
1975 2080
 	#define MSG_PREHEAT_PLA_SETTINGS "PLA verw. conf"
1976 2081
 	#define MSG_PREHEAT_ABS "ABS voorverwarmen"
2082
+	#define MSG_PREHEAT_ABS0 "ABS voorverw. 0"
2083
+	#define MSG_PREHEAT_ABS1 "ABS voorverw. 1"
2084
+	#define MSG_PREHEAT_ABS2 "ABS voorverw. 2"
2085
+	#define MSG_PREHEAT_ABS012 "ABS voorverw. aan"
2086
+	#define MSG_PREHEAT_ABS_BEDONLY  "ABS voorverw. Bed"
1977 2087
 	#define MSG_PREHEAT_ABS_SETTINGS "ABS verw. conf"
1978 2088
 	#define MSG_COOLDOWN "Afkoelen"
1979 2089
 	#define MSG_SWITCH_PS_ON "Stroom aan"

+ 157
- 33
Marlin/ultralcd.cpp 查看文件

@@ -304,37 +304,6 @@ static void lcd_autostart_sd()
304 304
 }
305 305
 #endif
306 306
 
307
-void lcd_preheat_pla()
308
-{
309
-    setTargetHotend0(plaPreheatHotendTemp);
310
-    setTargetHotend1(plaPreheatHotendTemp);
311
-    setTargetHotend2(plaPreheatHotendTemp);
312
-    setTargetBed(plaPreheatHPBTemp);
313
-    fanSpeed = plaPreheatFanSpeed;
314
-    lcd_return_to_status();
315
-    setWatch(); // heater sanity check timer
316
-}
317
-
318
-void lcd_preheat_abs()
319
-{
320
-    setTargetHotend0(absPreheatHotendTemp);
321
-    setTargetHotend1(absPreheatHotendTemp);
322
-    setTargetHotend2(absPreheatHotendTemp);
323
-    setTargetBed(absPreheatHPBTemp);
324
-    fanSpeed = absPreheatFanSpeed;
325
-    lcd_return_to_status();
326
-    setWatch(); // heater sanity check timer
327
-}
328
-
329
-static void lcd_cooldown()
330
-{
331
-    setTargetHotend0(0);
332
-    setTargetHotend1(0);
333
-    setTargetHotend2(0);
334
-    setTargetBed(0);
335
-    lcd_return_to_status();
336
-}
337
-
338 307
 #ifdef BABYSTEPPING
339 308
 static void lcd_babystep_x()
340 309
 {
@@ -435,6 +404,154 @@ static void lcd_tune_menu()
435 404
     END_MENU();
436 405
 }
437 406
 
407
+void lcd_preheat_pla0()
408
+{
409
+    setTargetHotend0(plaPreheatHotendTemp);
410
+    setTargetBed(plaPreheatHPBTemp);
411
+    fanSpeed = plaPreheatFanSpeed;
412
+    lcd_return_to_status();
413
+    setWatch(); // heater sanity check timer
414
+}
415
+
416
+void lcd_preheat_abs0()
417
+{
418
+    setTargetHotend0(absPreheatHotendTemp);
419
+    setTargetBed(absPreheatHPBTemp);
420
+    fanSpeed = absPreheatFanSpeed;
421
+    lcd_return_to_status();
422
+    setWatch(); // heater sanity check timer
423
+}
424
+
425
+#if TEMP_SENSOR_1 != 0 //2nd extruder preheat
426
+void lcd_preheat_pla1()
427
+{
428
+    setTargetHotend1(plaPreheatHotendTemp);
429
+    setTargetBed(plaPreheatHPBTemp);
430
+    fanSpeed = plaPreheatFanSpeed;
431
+    lcd_return_to_status();
432
+    setWatch(); // heater sanity check timer
433
+}
434
+
435
+void lcd_preheat_abs1()
436
+{
437
+    setTargetHotend1(absPreheatHotendTemp);
438
+    setTargetBed(absPreheatHPBTemp);
439
+    fanSpeed = absPreheatFanSpeed;
440
+    lcd_return_to_status();
441
+    setWatch(); // heater sanity check timer
442
+}
443
+#endif //2nd extruder preheat
444
+
445
+#if TEMP_SENSOR_2 != 0 //3 extruder preheat
446
+void lcd_preheat_pla2()
447
+{
448
+    setTargetHotend2(plaPreheatHotendTemp);
449
+    setTargetBed(plaPreheatHPBTemp);
450
+    fanSpeed = plaPreheatFanSpeed;
451
+    lcd_return_to_status();
452
+    setWatch(); // heater sanity check timer
453
+}
454
+
455
+void lcd_preheat_abs2()
456
+{
457
+    setTargetHotend2(absPreheatHotendTemp);
458
+    setTargetBed(absPreheatHPBTemp);
459
+    fanSpeed = absPreheatFanSpeed;
460
+    lcd_return_to_status();
461
+    setWatch(); // heater sanity check timer
462
+}
463
+#endif //3 extruder preheat
464
+
465
+#if TEMP_SENSOR_1 != 0 || TEMP_SENSOR_2 != 0 //more than one extruder present
466
+void lcd_preheat_pla012()
467
+{
468
+    setTargetHotend0(plaPreheatHotendTemp);
469
+    setTargetHotend1(plaPreheatHotendTemp);
470
+    setTargetHotend2(plaPreheatHotendTemp);
471
+    setTargetBed(plaPreheatHPBTemp);
472
+    fanSpeed = plaPreheatFanSpeed;
473
+    lcd_return_to_status();
474
+    setWatch(); // heater sanity check timer
475
+}
476
+
477
+void lcd_preheat_abs012()
478
+{
479
+    setTargetHotend0(absPreheatHotendTemp);
480
+    setTargetHotend1(absPreheatHotendTemp);
481
+    setTargetHotend2(absPreheatHotendTemp);
482
+    setTargetBed(absPreheatHPBTemp);
483
+    fanSpeed = absPreheatFanSpeed;
484
+    lcd_return_to_status();
485
+    setWatch(); // heater sanity check timer
486
+}
487
+#endif //more than one extruder present
488
+
489
+void lcd_preheat_pla_bedonly()
490
+{
491
+    setTargetBed(plaPreheatHPBTemp);
492
+    fanSpeed = plaPreheatFanSpeed;
493
+    lcd_return_to_status();
494
+    setWatch(); // heater sanity check timer
495
+}
496
+
497
+void lcd_preheat_abs_bedonly()
498
+{
499
+    setTargetBed(absPreheatHPBTemp);
500
+    fanSpeed = absPreheatFanSpeed;
501
+    lcd_return_to_status();
502
+    setWatch(); // heater sanity check timer
503
+}
504
+
505
+static void lcd_preheat_pla_menu()
506
+{
507
+    START_MENU();
508
+    MENU_ITEM(back, MSG_PREPARE, lcd_prepare_menu);
509
+    MENU_ITEM(function, MSG_PREHEAT_PLA0, lcd_preheat_pla0);
510
+#if TEMP_SENSOR_1 != 0 //2 extruder preheat
511
+    MENU_ITEM(function, MSG_PREHEAT_PLA1, lcd_preheat_pla1);
512
+#endif //2 extruder preheat
513
+#if TEMP_SENSOR_2 != 0 //3 extruder preheat
514
+    MENU_ITEM(function, MSG_PREHEAT_PLA2, lcd_preheat_pla2);
515
+#endif //3 extruder preheat
516
+#if TEMP_SENSOR_1 != 0 || TEMP_SENSOR_2 != 0 //all extruder preheat
517
+    MENU_ITEM(function, MSG_PREHEAT_PLA012, lcd_preheat_pla012);
518
+#endif //2 extruder preheat
519
+#if TEMP_SENSOR_BED != 0
520
+    MENU_ITEM(function, MSG_PREHEAT_PLA_BEDONLY, lcd_preheat_pla_bedonly);
521
+#endif
522
+    END_MENU();
523
+}
524
+
525
+static void lcd_preheat_abs_menu()
526
+{
527
+    START_MENU();
528
+    MENU_ITEM(back, MSG_PREPARE, lcd_prepare_menu);
529
+    MENU_ITEM(function, MSG_PREHEAT_ABS0, lcd_preheat_abs0);
530
+#if TEMP_SENSOR_1 != 0 //2 extruder preheat
531
+    MENU_ITEM(function, MSG_PREHEAT_ABS1, lcd_preheat_abs1);
532
+#endif //2 extruder preheat
533
+#if TEMP_SENSOR_2 != 0 //3 extruder preheat
534
+    MENU_ITEM(function, MSG_PREHEAT_ABS2, lcd_preheat_abs2);
535
+#endif //3 extruder preheat
536
+#if TEMP_SENSOR_1 != 0 || TEMP_SENSOR_2 != 0 //all extruder preheat
537
+    MENU_ITEM(function, MSG_PREHEAT_ABS012, lcd_preheat_abs012);
538
+#endif //2 extruder preheat
539
+#if TEMP_SENSOR_BED != 0
540
+    MENU_ITEM(function, MSG_PREHEAT_ABS_BEDONLY, lcd_preheat_abs_bedonly);
541
+#endif
542
+    END_MENU();
543
+}
544
+
545
+void lcd_cooldown()
546
+{
547
+    setTargetHotend0(0);
548
+    setTargetHotend1(0);
549
+    setTargetHotend2(0);
550
+    setTargetBed(0);
551
+    fanSpeed = 0;
552
+    lcd_return_to_status();
553
+}
554
+
438 555
 static void lcd_prepare_menu()
439 556
 {
440 557
     START_MENU();
@@ -447,8 +564,15 @@ static void lcd_prepare_menu()
447 564
     MENU_ITEM(gcode, MSG_DISABLE_STEPPERS, PSTR("M84"));
448 565
     MENU_ITEM(gcode, MSG_AUTO_HOME, PSTR("G28"));
449 566
     //MENU_ITEM(gcode, MSG_SET_ORIGIN, PSTR("G92 X0 Y0 Z0"));
450
-    MENU_ITEM(function, MSG_PREHEAT_PLA, lcd_preheat_pla);
451
-    MENU_ITEM(function, MSG_PREHEAT_ABS, lcd_preheat_abs);
567
+#if TEMP_SENSOR_0 != 0
568
+  #if TEMP_SENSOR_1 != 0 || TEMP_SENSOR_2 != 0 || TEMP_SENSOR_BED != 0
569
+    MENU_ITEM(submenu, MSG_PREHEAT_PLA, lcd_preheat_pla_menu);
570
+    MENU_ITEM(submenu, MSG_PREHEAT_ABS, lcd_preheat_abs_menu);
571
+  #else
572
+    MENU_ITEM(function, MSG_PREHEAT_PLA, lcd_preheat_pla0);
573
+    MENU_ITEM(function, MSG_PREHEAT_ABS, lcd_preheat_abs0);
574
+  #endif
575
+#endif
452 576
     MENU_ITEM(function, MSG_COOLDOWN, lcd_cooldown);
453 577
 #if PS_ON_PIN > -1
454 578
     if (powersupply)

正在加载...
取消
保存