commit
						6903eb1c5b
					
				| @ -455,6 +455,7 @@ | |||||||
| // @section extras
 | // @section extras
 | ||||||
| 
 | 
 | ||||||
| // Arc interpretation settings:
 | // Arc interpretation settings:
 | ||||||
|  | #define ARC_SUPPORT  // Disabling this saves ~2660bytes
 | ||||||
| #define MM_PER_ARC_SEGMENT 1 | #define MM_PER_ARC_SEGMENT 1 | ||||||
| #define N_ARC_CORRECTION 25 | #define N_ARC_CORRECTION 25 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -506,7 +506,9 @@ void stop(); | |||||||
| void get_available_commands(); | void get_available_commands(); | ||||||
| void process_next_command(); | void process_next_command(); | ||||||
| 
 | 
 | ||||||
|  | #if ENABLED(ARC_SUPPORT) | ||||||
|   void plan_arc(float target[NUM_AXIS], float* offset, uint8_t clockwise); |   void plan_arc(float target[NUM_AXIS], float* offset, uint8_t clockwise); | ||||||
|  | #endif | ||||||
| 
 | 
 | ||||||
| void serial_echopair_P(const char* s_P, int v)           { serialprintPGM(s_P); SERIAL_ECHO(v); } | void serial_echopair_P(const char* s_P, int v)           { serialprintPGM(s_P); SERIAL_ECHO(v); } | ||||||
| void serial_echopair_P(const char* s_P, long v)          { serialprintPGM(s_P); SERIAL_ECHO(v); } | void serial_echopair_P(const char* s_P, long v)          { serialprintPGM(s_P); SERIAL_ECHO(v); } | ||||||
| @ -2461,6 +2463,7 @@ inline void gcode_G0_G1() { | |||||||
|  * G2: Clockwise Arc |  * G2: Clockwise Arc | ||||||
|  * G3: Counterclockwise Arc |  * G3: Counterclockwise Arc | ||||||
|  */ |  */ | ||||||
|  | #if ENABLED(ARC_SUPPORT) | ||||||
|   inline void gcode_G2_G3(bool clockwise) { |   inline void gcode_G2_G3(bool clockwise) { | ||||||
|     if (IsRunning()) { |     if (IsRunning()) { | ||||||
| 
 | 
 | ||||||
| @ -2487,6 +2490,7 @@ inline void gcode_G2_G3(bool clockwise) { | |||||||
|       refresh_cmd_timeout(); |       refresh_cmd_timeout(); | ||||||
|     } |     } | ||||||
|   } |   } | ||||||
|  | #endif | ||||||
| 
 | 
 | ||||||
| /**
 | /**
 | ||||||
|  * G4: Dwell S<seconds> or P<milliseconds> |  * G4: Dwell S<seconds> or P<milliseconds> | ||||||
| @ -6484,7 +6488,7 @@ void process_next_command() { | |||||||
|         break; |         break; | ||||||
| 
 | 
 | ||||||
|       // G2, G3
 |       // G2, G3
 | ||||||
|       #if DISABLED(SCARA) |       #if ENABLED(ARC_SUPPORT) && DISABLED(SCARA) | ||||||
|         case 2: // G2  - CW ARC
 |         case 2: // G2  - CW ARC
 | ||||||
|         case 3: // G3  - CCW ARC
 |         case 3: // G3  - CCW ARC
 | ||||||
|           gcode_G2_G3(codenum == 2); |           gcode_G2_G3(codenum == 2); | ||||||
| @ -7423,6 +7427,7 @@ void prepare_move() { | |||||||
|   set_current_to_destination(); |   set_current_to_destination(); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | #if ENABLED(ARC_SUPPORT) | ||||||
|   /**
 |   /**
 | ||||||
|    * Plan an arc in 2 dimensions |    * Plan an arc in 2 dimensions | ||||||
|    * |    * | ||||||
| @ -7509,8 +7514,16 @@ void plan_arc( | |||||||
| 
 | 
 | ||||||
|     float feed_rate = feedrate * feedrate_multiplier / 60 / 100.0; |     float feed_rate = feedrate * feedrate_multiplier / 60 / 100.0; | ||||||
| 
 | 
 | ||||||
|  |     millis_t previous_ms = millis(); | ||||||
|  | 
 | ||||||
|     for (i = 1; i < segments; i++) { // Iterate (segments-1) times
 |     for (i = 1; i < segments; i++) { // Iterate (segments-1) times
 | ||||||
| 
 | 
 | ||||||
|  |       millis_t now = millis(); | ||||||
|  |       if (now - previous_ms > 200UL) { | ||||||
|  |         previous_ms = now; | ||||||
|  |         idle(); | ||||||
|  |       } | ||||||
|  | 
 | ||||||
|       if (++count < N_ARC_CORRECTION) { |       if (++count < N_ARC_CORRECTION) { | ||||||
|         // Apply vector rotation matrix to previous r_X / 1
 |         // Apply vector rotation matrix to previous r_X / 1
 | ||||||
|         r_new_Y = r_X * sin_T + r_Y * cos_T; |         r_new_Y = r_X * sin_T + r_Y * cos_T; | ||||||
| @ -7564,6 +7577,7 @@ void plan_arc( | |||||||
|     // in any intermediate location.
 |     // in any intermediate location.
 | ||||||
|     set_current_to_destination(); |     set_current_to_destination(); | ||||||
|   } |   } | ||||||
|  | #endif | ||||||
| 
 | 
 | ||||||
| #if HAS_CONTROLLERFAN | #if HAS_CONTROLLERFAN | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -455,6 +455,7 @@ | |||||||
| // @section extras
 | // @section extras
 | ||||||
| 
 | 
 | ||||||
| // Arc interpretation settings:
 | // Arc interpretation settings:
 | ||||||
|  | #define ARC_SUPPORT  // Disabling this saves ~2660bytes
 | ||||||
| #define MM_PER_ARC_SEGMENT 1 | #define MM_PER_ARC_SEGMENT 1 | ||||||
| #define N_ARC_CORRECTION 25 | #define N_ARC_CORRECTION 25 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -455,6 +455,7 @@ | |||||||
| // @section extras
 | // @section extras
 | ||||||
| 
 | 
 | ||||||
| // Arc interpretation settings:
 | // Arc interpretation settings:
 | ||||||
|  | #define ARC_SUPPORT  // Disabling this saves ~2660bytes
 | ||||||
| #define MM_PER_ARC_SEGMENT 1 | #define MM_PER_ARC_SEGMENT 1 | ||||||
| #define N_ARC_CORRECTION 25 | #define N_ARC_CORRECTION 25 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -455,6 +455,7 @@ | |||||||
| // @section extras
 | // @section extras
 | ||||||
| 
 | 
 | ||||||
| // Arc interpretation settings:
 | // Arc interpretation settings:
 | ||||||
|  | #define ARC_SUPPORT  // Disabling this saves ~2660bytes
 | ||||||
| #define MM_PER_ARC_SEGMENT 1 | #define MM_PER_ARC_SEGMENT 1 | ||||||
| #define N_ARC_CORRECTION 25 | #define N_ARC_CORRECTION 25 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -461,6 +461,7 @@ | |||||||
| // @section extras
 | // @section extras
 | ||||||
| 
 | 
 | ||||||
| // Arc interpretation settings:
 | // Arc interpretation settings:
 | ||||||
|  | #define ARC_SUPPORT  // Disabling this saves ~2660bytes
 | ||||||
| #define MM_PER_ARC_SEGMENT 1 | #define MM_PER_ARC_SEGMENT 1 | ||||||
| #define N_ARC_CORRECTION 25 | #define N_ARC_CORRECTION 25 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -455,6 +455,7 @@ | |||||||
| // @section extras
 | // @section extras
 | ||||||
| 
 | 
 | ||||||
| // Arc interpretation settings:
 | // Arc interpretation settings:
 | ||||||
|  | #define ARC_SUPPORT  // Disabling this saves ~2660bytes
 | ||||||
| #define MM_PER_ARC_SEGMENT 1 | #define MM_PER_ARC_SEGMENT 1 | ||||||
| #define N_ARC_CORRECTION 25 | #define N_ARC_CORRECTION 25 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -455,6 +455,7 @@ | |||||||
| // @section extras
 | // @section extras
 | ||||||
| 
 | 
 | ||||||
| // Arc interpretation settings:
 | // Arc interpretation settings:
 | ||||||
|  | #define ARC_SUPPORT  // Disabling this saves ~2660bytes
 | ||||||
| #define MM_PER_ARC_SEGMENT 1 | #define MM_PER_ARC_SEGMENT 1 | ||||||
| #define N_ARC_CORRECTION 25 | #define N_ARC_CORRECTION 25 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -463,6 +463,7 @@ | |||||||
| // @section extras
 | // @section extras
 | ||||||
| 
 | 
 | ||||||
| // Arc interpretation settings:
 | // Arc interpretation settings:
 | ||||||
|  | #define ARC_SUPPORT  // Disabling this saves ~2660bytes
 | ||||||
| #define MM_PER_ARC_SEGMENT 1 | #define MM_PER_ARC_SEGMENT 1 | ||||||
| #define N_ARC_CORRECTION 25 | #define N_ARC_CORRECTION 25 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -455,6 +455,7 @@ | |||||||
| // @section extras
 | // @section extras
 | ||||||
| 
 | 
 | ||||||
| // Arc interpretation settings:
 | // Arc interpretation settings:
 | ||||||
|  | #define ARC_SUPPORT  // Disabling this saves ~2660bytes
 | ||||||
| #define MM_PER_ARC_SEGMENT 1 | #define MM_PER_ARC_SEGMENT 1 | ||||||
| #define N_ARC_CORRECTION 25 | #define N_ARC_CORRECTION 25 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -457,6 +457,7 @@ | |||||||
| // @section extras
 | // @section extras
 | ||||||
| 
 | 
 | ||||||
| // Arc interpretation settings:
 | // Arc interpretation settings:
 | ||||||
|  | #define ARC_SUPPORT  // Disabling this saves ~2660bytes
 | ||||||
| #define MM_PER_ARC_SEGMENT 1 | #define MM_PER_ARC_SEGMENT 1 | ||||||
| #define N_ARC_CORRECTION 25 | #define N_ARC_CORRECTION 25 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -457,6 +457,7 @@ | |||||||
| // @section extras
 | // @section extras
 | ||||||
| 
 | 
 | ||||||
| // Arc interpretation settings:
 | // Arc interpretation settings:
 | ||||||
|  | #define ARC_SUPPORT  // Disabling this saves ~2660bytes
 | ||||||
| #define MM_PER_ARC_SEGMENT 1 | #define MM_PER_ARC_SEGMENT 1 | ||||||
| #define N_ARC_CORRECTION 25 | #define N_ARC_CORRECTION 25 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -456,6 +456,7 @@ | |||||||
| // @section extras
 | // @section extras
 | ||||||
| 
 | 
 | ||||||
| // Arc interpretation settings:
 | // Arc interpretation settings:
 | ||||||
|  | #define ARC_SUPPORT  // Disabling this saves ~2660bytes
 | ||||||
| #define MM_PER_ARC_SEGMENT 1 | #define MM_PER_ARC_SEGMENT 1 | ||||||
| #define N_ARC_CORRECTION 25 | #define N_ARC_CORRECTION 25 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -461,6 +461,7 @@ | |||||||
| // @section extras
 | // @section extras
 | ||||||
| 
 | 
 | ||||||
| // Arc interpretation settings:
 | // Arc interpretation settings:
 | ||||||
|  | #define ARC_SUPPORT  // Disabling this saves ~2660bytes
 | ||||||
| #define MM_PER_ARC_SEGMENT 1 | #define MM_PER_ARC_SEGMENT 1 | ||||||
| #define N_ARC_CORRECTION 25 | #define N_ARC_CORRECTION 25 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -457,6 +457,7 @@ | |||||||
| // @section extras
 | // @section extras
 | ||||||
| 
 | 
 | ||||||
| // Arc interpretation settings:
 | // Arc interpretation settings:
 | ||||||
|  | #define ARC_SUPPORT  // Disabling this saves ~2660bytes
 | ||||||
| #define MM_PER_ARC_SEGMENT 1 | #define MM_PER_ARC_SEGMENT 1 | ||||||
| #define N_ARC_CORRECTION 25 | #define N_ARC_CORRECTION 25 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -455,6 +455,7 @@ | |||||||
| // @section extras
 | // @section extras
 | ||||||
| 
 | 
 | ||||||
| // Arc interpretation settings:
 | // Arc interpretation settings:
 | ||||||
|  | #define ARC_SUPPORT  // Disabling this saves ~2660bytes
 | ||||||
| #define MM_PER_ARC_SEGMENT 1 | #define MM_PER_ARC_SEGMENT 1 | ||||||
| #define N_ARC_CORRECTION 25 | #define N_ARC_CORRECTION 25 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -455,6 +455,7 @@ | |||||||
| // @section extras
 | // @section extras
 | ||||||
| 
 | 
 | ||||||
| // Arc interpretation settings:
 | // Arc interpretation settings:
 | ||||||
|  | #define ARC_SUPPORT  // Disabling this saves ~2660bytes
 | ||||||
| #define MM_PER_ARC_SEGMENT 1 | #define MM_PER_ARC_SEGMENT 1 | ||||||
| #define N_ARC_CORRECTION 25 | #define N_ARC_CORRECTION 25 | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user