Pārlūkot izejas kodu

FilamentAutoload setting by shipping preparation

MRprusa3d 5 gadi atpakaļ
vecāks
revīzija
4b295c4091
4 mainītis faili ar 12 papildinājumiem un 2 dzēšanām
  1. 1 0
      Firmware/Marlin_main.cpp
  2. 6 0
      Firmware/fsensor.cpp
  3. 3 0
      Firmware/fsensor.h
  4. 2 2
      Firmware/ultralcd.cpp

+ 1 - 0
Firmware/Marlin_main.cpp

@@ -858,6 +858,7 @@ void factory_reset(char level, bool quiet)
             eeprom_update_word((uint16_t *)EEPROM_POWER_COUNT_TOT, 0);
 
             fsensor_enable();
+            fautoload_set(true);
                        
             WRITE(BEEPER, HIGH);
             _delay_ms(100);

+ 6 - 0
Firmware/fsensor.cpp

@@ -86,6 +86,12 @@ void fsensor_disable()
 	FSensorStateMenu = 0;
 }
 
+void fautoload_set(bool State)
+{
+	filament_autoload_enabled = State;
+	eeprom_update_byte((unsigned char *)EEPROM_FSENS_AUTOLOAD_ENABLED, filament_autoload_enabled);
+}
+
 void pciSetup(byte pin)
 {
 	*digitalPinToPCMSK(pin) |= bit (digitalPinToPCMSKbit(pin)); // enable pin

+ 3 - 0
Firmware/fsensor.h

@@ -15,6 +15,9 @@ extern void fsensor_unblock();
 extern bool fsensor_enable();
 extern void fsensor_disable();
 
+extern bool filament_autoload_enabled;
+extern void fautoload_set(bool State);
+
 //update (perform M600 on filament runout)
 extern void fsensor_update();
 

+ 2 - 2
Firmware/ultralcd.cpp

@@ -1,5 +1,6 @@
 #include "temperature.h"
 #include "ultralcd.h"
+#include "fsensor.h"
 #ifdef ULTRA_LCD
 #include "MenuStack.h"
 #include "Marlin.h"
@@ -2042,8 +2043,7 @@ void lcd_set_fan_check() {
 }
 
 void lcd_set_filament_autoload() {
-	filament_autoload_enabled = !filament_autoload_enabled;
-	eeprom_update_byte((unsigned char *)EEPROM_FSENS_AUTOLOAD_ENABLED, filament_autoload_enabled);
+     fautoload_set(!filament_autoload_enabled);
 }
 
 void lcd_unLoadFilament()