Bläddra i källkod

Pretty up TMC current write

Scott Lahteine 7 år sedan
förälder
incheckning
3ea6745b36
1 ändrade filer med 62 tillägg och 70 borttagningar
  1. 62
    70
      Marlin/src/module/configuration_store.cpp

+ 62
- 70
Marlin/src/module/configuration_store.cpp Visa fil

@@ -562,79 +562,71 @@ void MarlinSettings::postprocess() {
562 562
 
563 563
     #endif
564 564
 
565
+    //
565 566
     // Save TMC2130 or TMC2208 Configuration, and placeholder values
566
-    uint16_t val;
567
-    #if HAS_TRINAMIC
568
-      #if X_IS_TRINAMIC
569
-        val = stepperX.getCurrent();
570
-      #else
571
-        val = 0;
572
-      #endif
573
-      EEPROM_WRITE(val);
574
-      #if Y_IS_TRINAMIC
575
-        val = stepperY.getCurrent();
576
-      #else
577
-        val = 0;
578
-      #endif
579
-      EEPROM_WRITE(val);
580
-      #if Z_IS_TRINAMIC
581
-        val = stepperZ.getCurrent();
582
-      #else
583
-        val = 0;
584
-      #endif
585
-      EEPROM_WRITE(val);
586
-      #if X2_IS_TRINAMIC
587
-        val = stepperX2.getCurrent();
588
-      #else
589
-        val = 0;
590
-      #endif
591
-      EEPROM_WRITE(val);
592
-      #if Y2_IS_TRINAMIC
593
-        val = stepperY2.getCurrent();
594
-      #else
595
-        val = 0;
596
-      #endif
597
-      EEPROM_WRITE(val);
598
-      #if Z2_IS_TRINAMIC
599
-        val = stepperZ2.getCurrent();
600
-      #else
601
-        val = 0;
602
-      #endif
603
-      EEPROM_WRITE(val);
604
-      #if E0_IS_TRINAMIC
605
-        val = stepperE0.getCurrent();
606
-      #else
607
-        val = 0;
608
-      #endif
609
-      EEPROM_WRITE(val);
610
-      #if E1_IS_TRINAMIC
611
-        val = stepperE1.getCurrent();
612
-      #else
613
-        val = 0;
614
-      #endif
615
-      EEPROM_WRITE(val);
616
-      #if E2_IS_TRINAMIC
617
-        val = stepperE2.getCurrent();
618
-      #else
619
-        val = 0;
620
-      #endif
621
-      EEPROM_WRITE(val);
622
-      #if E3_IS_TRINAMIC
623
-        val = stepperE3.getCurrent();
624
-      #else
625
-        val = 0;
626
-      #endif
627
-      EEPROM_WRITE(val);
628
-      #if E4_IS_TRINAMIC
629
-        val = stepperE4.getCurrent();
567
+    //
568
+    uint16_t currents[11] = {
569
+      #if HAS_TRINAMIC
570
+        #if X_IS_TRINAMIC
571
+          stepperX.getCurrent(),
572
+        #else
573
+          0,
574
+        #endif
575
+        #if Y_IS_TRINAMIC
576
+          stepperY.getCurrent(),
577
+        #else
578
+          0,
579
+        #endif
580
+        #if Z_IS_TRINAMIC
581
+          stepperZ.getCurrent(),
582
+        #else
583
+          0,
584
+        #endif
585
+        #if X2_IS_TRINAMIC
586
+          stepperX2.getCurrent(),
587
+        #else
588
+          0,
589
+        #endif
590
+        #if Y2_IS_TRINAMIC
591
+          stepperY2.getCurrent(),
592
+        #else
593
+          0,
594
+        #endif
595
+        #if Z2_IS_TRINAMIC
596
+          stepperZ2.getCurrent(),
597
+        #else
598
+          0,
599
+        #endif
600
+        #if E0_IS_TRINAMIC
601
+          stepperE0.getCurrent(),
602
+        #else
603
+          0,
604
+        #endif
605
+        #if E1_IS_TRINAMIC
606
+          stepperE1.getCurrent(),
607
+        #else
608
+          0,
609
+        #endif
610
+        #if E2_IS_TRINAMIC
611
+          stepperE2.getCurrent(),
612
+        #else
613
+          0,
614
+        #endif
615
+        #if E3_IS_TRINAMIC
616
+          stepperE3.getCurrent(),
617
+        #else
618
+          0,
619
+        #endif
620
+        #if E4_IS_TRINAMIC
621
+          stepperE4.getCurrent()
622
+        #else
623
+          0
624
+        #endif
630 625
       #else
631
-        val = 0;
626
+        0
632 627
       #endif
633
-      EEPROM_WRITE(val);
634
-    #else
635
-      val = 0;
636
-      for (uint8_t q = 11; q--;) EEPROM_WRITE(val);
637
-    #endif
628
+    };
629
+    EEPROM_WRITE(currents);
638 630
 
639 631
     //
640 632
     // TMC2130 Sensorless homing threshold

Laddar…
Avbryt
Spara