Kaynağa Gözat

Merge pull request #4594 from thinkyhead/rc_fix_serial_output

Fix serial output for MBL, M303
Scott Lahteine 8 yıl önce
ebeveyn
işleme
30afac64c4
4 değiştirilmiş dosya ile 25 ekleme ve 28 silme
  1. 1
    0
      Marlin/Marlin.h
  2. 3
    4
      Marlin/Marlin_main.cpp
  3. 3
    4
      Marlin/cardreader.cpp
  4. 18
    20
      Marlin/temperature.cpp

+ 1
- 0
Marlin/Marlin.h Dosyayı Görüntüle

71
 #define SERIAL_PROTOCOLLNPGM(x) do{ serialprintPGM(PSTR(x "\n")); }while(0)
71
 #define SERIAL_PROTOCOLLNPGM(x) do{ serialprintPGM(PSTR(x "\n")); }while(0)
72
 
72
 
73
 #define SERIAL_PROTOCOLPAIR(name, value) SERIAL_ECHOPAIR(name, value)
73
 #define SERIAL_PROTOCOLPAIR(name, value) SERIAL_ECHOPAIR(name, value)
74
+#define SERIAL_PROTOCOLLNPAIR(name, value) do{ SERIAL_ECHOPAIR(name, value); SERIAL_EOL; }while(0)
74
 
75
 
75
 extern const char errormagic[] PROGMEM;
76
 extern const char errormagic[] PROGMEM;
76
 extern const char echomagic[] PROGMEM;
77
 extern const char echomagic[] PROGMEM;

+ 3
- 4
Marlin/Marlin_main.cpp Dosyayı Görüntüle

3280
       case MeshReport:
3280
       case MeshReport:
3281
         if (mbl.has_mesh()) {
3281
         if (mbl.has_mesh()) {
3282
           SERIAL_PROTOCOLPAIR("State: ", mbl.active() ? "On" : "Off");
3282
           SERIAL_PROTOCOLPAIR("State: ", mbl.active() ? "On" : "Off");
3283
-          SERIAL_PROTOCOLPAIR("\nNum X,Y: ", MESH_NUM_X_POINTS);
3284
-          SERIAL_PROTOCOLCHAR(','); SERIAL_PROTOCOL(MESH_NUM_Y_POINTS);
3285
-          SERIAL_PROTOCOLPAIR("\nZ search height: ", MESH_HOME_SEARCH_Z);
3286
-          SERIAL_PROTOCOLPGM("\nZ offset: "); SERIAL_PROTOCOL_F(mbl.z_offset, 5);
3283
+          SERIAL_PROTOCOLLNPGM("\nNum X,Y: " STRINGIFY(MESH_NUM_X_POINTS) "," STRINGIFY(MESH_NUM_Y_POINTS));
3284
+          SERIAL_PROTOCOLLNPGM("Z search height: " STRINGIFY(MESH_HOME_SEARCH_Z));
3285
+          SERIAL_PROTOCOLPGM("Z offset: "); SERIAL_PROTOCOL_F(mbl.z_offset, 5);
3287
           SERIAL_PROTOCOLLNPGM("\nMeasured points:");
3286
           SERIAL_PROTOCOLLNPGM("\nMeasured points:");
3288
           for (py = 0; py < MESH_NUM_Y_POINTS; py++) {
3287
           for (py = 0; py < MESH_NUM_Y_POINTS; py++) {
3289
             for (px = 0; px < MESH_NUM_X_POINTS; px++) {
3288
             for (px = 0; px < MESH_NUM_X_POINTS; px++) {

+ 3
- 4
Marlin/cardreader.cpp Dosyayı Görüntüle

395
     if (file.open(curDir, fname, O_READ)) {
395
     if (file.open(curDir, fname, O_READ)) {
396
       filesize = file.fileSize();
396
       filesize = file.fileSize();
397
       SERIAL_PROTOCOLPAIR(MSG_SD_FILE_OPENED, fname);
397
       SERIAL_PROTOCOLPAIR(MSG_SD_FILE_OPENED, fname);
398
-      SERIAL_PROTOCOLPAIR(MSG_SD_SIZE, filesize);
399
-      SERIAL_EOL;
398
+      SERIAL_PROTOCOLLNPAIR(MSG_SD_SIZE, filesize);
400
       sdpos = 0;
399
       sdpos = 0;
401
 
400
 
402
       SERIAL_PROTOCOLLNPGM(MSG_SD_FILE_SELECTED);
401
       SERIAL_PROTOCOLLNPGM(MSG_SD_FILE_SELECTED);
417
     }
416
     }
418
     else {
417
     else {
419
       saving = true;
418
       saving = true;
420
-      SERIAL_PROTOCOLPAIR(MSG_SD_WRITE_TO_FILE, name);
421
-      SERIAL_EOL;
419
+      SERIAL_PROTOCOLLNPAIR(MSG_SD_WRITE_TO_FILE, name);
422
       lcd_setstatus(fname);
420
       lcd_setstatus(fname);
423
     }
421
     }
424
   }
422
   }
449
         if (!myDir.open(curDir, subdirname, O_READ)) {
447
         if (!myDir.open(curDir, subdirname, O_READ)) {
450
           SERIAL_PROTOCOLPAIR("open failed, File: ", subdirname);
448
           SERIAL_PROTOCOLPAIR("open failed, File: ", subdirname);
451
           SERIAL_PROTOCOLCHAR('.');
449
           SERIAL_PROTOCOLCHAR('.');
450
+          SERIAL_EOL;
452
           return;
451
           return;
453
         }
452
         }
454
         else {
453
         else {

+ 18
- 20
Marlin/temperature.cpp Dosyayı Görüntüle

322
               SERIAL_PROTOCOLPAIR(MSG_T_MIN, min);
322
               SERIAL_PROTOCOLPAIR(MSG_T_MIN, min);
323
               SERIAL_PROTOCOLPAIR(MSG_T_MAX, max);
323
               SERIAL_PROTOCOLPAIR(MSG_T_MAX, max);
324
               if (cycles > 2) {
324
               if (cycles > 2) {
325
-                Ku = (4.0 * d) / (3.14159265 * (max - min) * 0.5);
325
+                Ku = (4.0 * d) / (M_PI * (max - min) * 0.5);
326
                 Tu = ((float)(t_low + t_high) * 0.001);
326
                 Tu = ((float)(t_low + t_high) * 0.001);
327
                 SERIAL_PROTOCOLPAIR(MSG_KU, Ku);
327
                 SERIAL_PROTOCOLPAIR(MSG_KU, Ku);
328
                 SERIAL_PROTOCOLPAIR(MSG_TU, Tu);
328
                 SERIAL_PROTOCOLPAIR(MSG_TU, Tu);
329
                 workKp = 0.6 * Ku;
329
                 workKp = 0.6 * Ku;
330
                 workKi = 2 * workKp / Tu;
330
                 workKi = 2 * workKp / Tu;
331
                 workKd = workKp * Tu * 0.125;
331
                 workKd = workKp * Tu * 0.125;
332
-                SERIAL_PROTOCOLLNPGM(MSG_CLASSIC_PID);
332
+                SERIAL_PROTOCOLLNPGM("\n" MSG_CLASSIC_PID);
333
                 SERIAL_PROTOCOLPAIR(MSG_KP, workKp);
333
                 SERIAL_PROTOCOLPAIR(MSG_KP, workKp);
334
                 SERIAL_PROTOCOLPAIR(MSG_KI, workKi);
334
                 SERIAL_PROTOCOLPAIR(MSG_KI, workKi);
335
-                SERIAL_PROTOCOLPAIR(MSG_KD, workKd);
335
+                SERIAL_PROTOCOLLNPAIR(MSG_KD, workKd);
336
                 /**
336
                 /**
337
                 workKp = 0.33*Ku;
337
                 workKp = 0.33*Ku;
338
                 workKi = workKp/Tu;
338
                 workKi = workKp/Tu;
390
 
390
 
391
         #if HAS_PID_FOR_BOTH
391
         #if HAS_PID_FOR_BOTH
392
           const char* estring = hotend < 0 ? "bed" : "";
392
           const char* estring = hotend < 0 ? "bed" : "";
393
-          SERIAL_PROTOCOLPAIR("#define  DEFAULT_", estring); SERIAL_PROTOCOLPAIR("Kp ", workKp);
394
-          SERIAL_PROTOCOLPAIR("#define  DEFAULT_", estring); SERIAL_PROTOCOLPAIR("Ki ", workKi);
395
-          SERIAL_PROTOCOLPAIR("#define  DEFAULT_", estring); SERIAL_PROTOCOLPAIR("Kd ", workKd);
393
+          SERIAL_PROTOCOLPAIR("#define  DEFAULT_", estring); SERIAL_PROTOCOLPAIR("Kp ", workKp); SERIAL_EOL;
394
+          SERIAL_PROTOCOLPAIR("#define  DEFAULT_", estring); SERIAL_PROTOCOLPAIR("Ki ", workKi); SERIAL_EOL;
395
+          SERIAL_PROTOCOLPAIR("#define  DEFAULT_", estring); SERIAL_PROTOCOLPAIR("Kd ", workKd); SERIAL_EOL;
396
         #elif ENABLED(PIDTEMP)
396
         #elif ENABLED(PIDTEMP)
397
-          SERIAL_PROTOCOLPAIR("#define  DEFAULT_Kp ", workKp);
398
-          SERIAL_PROTOCOLPAIR("#define  DEFAULT_Ki ", workKi);
399
-          SERIAL_PROTOCOLPAIR("#define  DEFAULT_Kd ", workKd);
397
+          SERIAL_PROTOCOLPAIR("#define  DEFAULT_Kp ", workKp); SERIAL_EOL;
398
+          SERIAL_PROTOCOLPAIR("#define  DEFAULT_Ki ", workKi); SERIAL_EOL;
399
+          SERIAL_PROTOCOLPAIR("#define  DEFAULT_Kd ", workKd); SERIAL_EOL;
400
         #else
400
         #else
401
-          SERIAL_PROTOCOLPAIR("#define  DEFAULT_bedKp ", workKp);
402
-          SERIAL_PROTOCOLPAIR("#define  DEFAULT_bedKi ", workKi);
403
-          SERIAL_PROTOCOLPAIR("#define  DEFAULT_bedKd ", workKd);
401
+          SERIAL_PROTOCOLPAIR("#define  DEFAULT_bedKp ", workKp); SERIAL_EOL;
402
+          SERIAL_PROTOCOLPAIR("#define  DEFAULT_bedKi ", workKi); SERIAL_EOL;
403
+          SERIAL_PROTOCOLPAIR("#define  DEFAULT_bedKd ", workKd); SERIAL_EOL;
404
         #endif
404
         #endif
405
 
405
 
406
-        #define _SET_BED_PID() \
406
+        #define _SET_BED_PID() do { \
407
           bedKp = workKp; \
407
           bedKp = workKp; \
408
           bedKi = scalePID_i(workKi); \
408
           bedKi = scalePID_i(workKi); \
409
           bedKd = scalePID_d(workKd); \
409
           bedKd = scalePID_d(workKd); \
410
-          updatePID()
410
+          updatePID(); } while(0)
411
 
411
 
412
-        #define _SET_EXTRUDER_PID() \
412
+        #define _SET_EXTRUDER_PID() do { \
413
           PID_PARAM(Kp, hotend) = workKp; \
413
           PID_PARAM(Kp, hotend) = workKp; \
414
           PID_PARAM(Ki, hotend) = scalePID_i(workKi); \
414
           PID_PARAM(Ki, hotend) = scalePID_i(workKi); \
415
           PID_PARAM(Kd, hotend) = scalePID_d(workKd); \
415
           PID_PARAM(Kd, hotend) = scalePID_d(workKd); \
416
-          updatePID()
416
+          updatePID(); } while(0)
417
 
417
 
418
         // Use the result? (As with "M303 U1")
418
         // Use the result? (As with "M303 U1")
419
         if (set_result) {
419
         if (set_result) {
420
           #if HAS_PID_FOR_BOTH
420
           #if HAS_PID_FOR_BOTH
421
-            if (hotend < 0) {
421
+            if (hotend < 0)
422
               _SET_BED_PID();
422
               _SET_BED_PID();
423
-            }
424
-            else {
423
+            else
425
               _SET_EXTRUDER_PID();
424
               _SET_EXTRUDER_PID();
426
-            }
427
           #elif ENABLED(PIDTEMP)
425
           #elif ENABLED(PIDTEMP)
428
             _SET_EXTRUDER_PID();
426
             _SET_EXTRUDER_PID();
429
           #else
427
           #else

Loading…
İptal
Kaydet