This commit is contained in:
PavelSindler 2017-09-01 14:06:54 +02:00
parent 33168bedbd
commit 6eeea402e4
3 changed files with 18 additions and 7 deletions

View File

@ -4775,8 +4775,12 @@ Sigma_Exit:
{ {
if(code_seen('S')) if(code_seen('S'))
{ {
saved_feedmultiply = feedmultiply;
feedmultiply = code_value() ; feedmultiply = code_value() ;
} }
if (code_seen('R')) { //restore
feedmultiply = saved_feedmultiply;
}
} }
break; break;
case 221: // M221 S<factor in percent>- set extrude factor override percentage case 221: // M221 S<factor in percent>- set extrude factor override percentage
@ -5659,6 +5663,7 @@ case 404: //M404 Enter the nominal filament width (3mm, 1.75mm ) N<3.0> or disp
pinMode(E_MUX0_PIN, OUTPUT); pinMode(E_MUX0_PIN, OUTPUT);
pinMode(E_MUX1_PIN, OUTPUT); pinMode(E_MUX1_PIN, OUTPUT);
pinMode(E_MUX2_PIN, OUTPUT);
delay(100); delay(100);
SERIAL_ECHO_START; SERIAL_ECHO_START;
@ -5668,22 +5673,22 @@ case 404: //M404 Enter the nominal filament width (3mm, 1.75mm ) N<3.0> or disp
case 1: case 1:
WRITE(E_MUX0_PIN, HIGH); WRITE(E_MUX0_PIN, HIGH);
WRITE(E_MUX1_PIN, LOW); WRITE(E_MUX1_PIN, LOW);
WRITE(E_MUX2_PIN, LOW);
break; break;
case 2: case 2:
WRITE(E_MUX0_PIN, LOW); WRITE(E_MUX0_PIN, LOW);
WRITE(E_MUX1_PIN, HIGH); WRITE(E_MUX1_PIN, HIGH);
WRITE(E_MUX2_PIN, LOW);
break; break;
case 3: case 3:
WRITE(E_MUX0_PIN, HIGH); WRITE(E_MUX0_PIN, HIGH);
WRITE(E_MUX1_PIN, HIGH); WRITE(E_MUX1_PIN, HIGH);
WRITE(E_MUX2_PIN, LOW);
break; break;
default: default:
WRITE(E_MUX0_PIN, LOW); WRITE(E_MUX0_PIN, LOW);
WRITE(E_MUX1_PIN, LOW); WRITE(E_MUX1_PIN, LOW);
WRITE(E_MUX2_PIN, LOW);
break; break;
} }
delay(100); delay(100);

View File

@ -67,6 +67,7 @@
#define E_MUX0_PIN 17 #define E_MUX0_PIN 17
#define E_MUX1_PIN 16 #define E_MUX1_PIN 16
#define E_MUX2_PIN 84
#endif #endif
@ -228,6 +229,7 @@
#define E_MUX0_PIN 17 #define E_MUX0_PIN 17
#define E_MUX1_PIN 16 #define E_MUX1_PIN 16
#define E_MUX2_PIN 84
#endif #endif

View File

@ -3264,26 +3264,29 @@ void change_extr(int extr) { //switches multiplexer for extruders
pinMode(E_MUX0_PIN, OUTPUT); pinMode(E_MUX0_PIN, OUTPUT);
pinMode(E_MUX1_PIN, OUTPUT); pinMode(E_MUX1_PIN, OUTPUT);
pinMode(E_MUX2_PIN, OUTPUT);
switch (extr) { switch (extr) {
case 1: case 1:
WRITE(E_MUX0_PIN, HIGH); WRITE(E_MUX0_PIN, HIGH);
WRITE(E_MUX1_PIN, LOW); WRITE(E_MUX1_PIN, LOW);
WRITE(E_MUX2_PIN, LOW);
break; break;
case 2: case 2:
WRITE(E_MUX0_PIN, LOW); WRITE(E_MUX0_PIN, LOW);
WRITE(E_MUX1_PIN, HIGH); WRITE(E_MUX1_PIN, HIGH);
WRITE(E_MUX2_PIN, LOW);
break; break;
case 3: case 3:
WRITE(E_MUX0_PIN, HIGH); WRITE(E_MUX0_PIN, HIGH);
WRITE(E_MUX1_PIN, HIGH); WRITE(E_MUX1_PIN, HIGH);
WRITE(E_MUX2_PIN, LOW);
break; break;
default: default:
WRITE(E_MUX0_PIN, LOW); WRITE(E_MUX0_PIN, LOW);
WRITE(E_MUX1_PIN, LOW); WRITE(E_MUX1_PIN, LOW);
WRITE(E_MUX2_PIN, LOW);
break; break;
} }
@ -3291,7 +3294,8 @@ void change_extr(int extr) { //switches multiplexer for extruders
} }
static int get_ext_nr() { //reads multiplexer input pins and return current extruder number (counted from 0) static int get_ext_nr() { //reads multiplexer input pins and return current extruder number (counted from 0)
return(2 * READ(E_MUX1_PIN) + READ(E_MUX0_PIN)); return(4 * READ(E_MUX2_PIN) + 2 * READ(E_MUX1_PIN) + READ(E_MUX0_PIN));
//return(2 * READ(E_MUX1_PIN) + READ(E_MUX0_PIN));
} }