Fix for microstepping pin mapping, not using Teensy pin mapping, but Arduino's default pin mapping so Arduino library can be used

2.0.x
Cameron Lai 11 years ago
parent d85411f13a
commit 97ead2eccb

@ -79,14 +79,16 @@
#endif #endif
// Microstepping pins // Microstepping pins
#define X_MS1_PIN 13 // Note that the pin mapping is not from fastio.h
#define X_MS2_PIN 14 // See Sd2PinMap.h for the pin configurations
#define Y_MS1_PIN 33 #define X_MS1_PIN 25
#define Y_MS2_PIN 32 #define X_MS2_PIN 26
#define Z_MS1_PIN 31 #define Y_MS1_PIN 9
#define Z_MS2_PIN 30 #define Y_MS2_PIN 8
#define E0_MS1_PIN 29 #define Z_MS1_PIN 7
#define E0_MS2_PIN 28 #define Z_MS2_PIN 6
#define E0_MS1_PIN 5
#define E0_MS2_PIN 4
#endif /* 88 */ #endif /* 88 */

@ -1228,13 +1228,22 @@ void digipot_current(uint8_t driver, int current)
void microstep_init() void microstep_init()
{ {
#if defined(X_MS1_PIN) && X_MS1_PIN > -1
const uint8_t microstep_modes[] = MICROSTEP_MODES; const uint8_t microstep_modes[] = MICROSTEP_MODES;
pinMode(X_MS2_PIN,OUTPUT);
#if defined(E1_MS1_PIN) && E1_MS1_PIN > -1
pinMode(E1_MS1_PIN,OUTPUT);
pinMode(E1_MS2_PIN,OUTPUT);
#endif
#if defined(X_MS1_PIN) && X_MS1_PIN > -1
pinMode(X_MS1_PIN,OUTPUT);
pinMode(X_MS2_PIN,OUTPUT);
pinMode(Y_MS1_PIN,OUTPUT);
pinMode(Y_MS2_PIN,OUTPUT); pinMode(Y_MS2_PIN,OUTPUT);
pinMode(Z_MS2_PIN,OUTPUT); pinMode(Z_MS1_PIN,OUTPUT);
pinMode(Z_MS2_PIN,OUTPUT);
pinMode(E0_MS1_PIN,OUTPUT);
pinMode(E0_MS2_PIN,OUTPUT); pinMode(E0_MS2_PIN,OUTPUT);
pinMode(E1_MS2_PIN,OUTPUT);
for(int i=0;i<=4;i++) microstep_mode(i,microstep_modes[i]); for(int i=0;i<=4;i++) microstep_mode(i,microstep_modes[i]);
#endif #endif
} }
@ -1247,7 +1256,9 @@ void microstep_ms(uint8_t driver, int8_t ms1, int8_t ms2)
case 1: digitalWrite( Y_MS1_PIN,ms1); break; case 1: digitalWrite( Y_MS1_PIN,ms1); break;
case 2: digitalWrite( Z_MS1_PIN,ms1); break; case 2: digitalWrite( Z_MS1_PIN,ms1); break;
case 3: digitalWrite(E0_MS1_PIN,ms1); break; case 3: digitalWrite(E0_MS1_PIN,ms1); break;
#if defined(E1_MS1_PIN) && E1_MS1_PIN > -1
case 4: digitalWrite(E1_MS1_PIN,ms1); break; case 4: digitalWrite(E1_MS1_PIN,ms1); break;
#endif
} }
if(ms2 > -1) switch(driver) if(ms2 > -1) switch(driver)
{ {
@ -1255,7 +1266,9 @@ void microstep_ms(uint8_t driver, int8_t ms1, int8_t ms2)
case 1: digitalWrite( Y_MS2_PIN,ms2); break; case 1: digitalWrite( Y_MS2_PIN,ms2); break;
case 2: digitalWrite( Z_MS2_PIN,ms2); break; case 2: digitalWrite( Z_MS2_PIN,ms2); break;
case 3: digitalWrite(E0_MS2_PIN,ms2); break; case 3: digitalWrite(E0_MS2_PIN,ms2); break;
#if defined(E1_MS2_PIN) && E1_MS2_PIN > -1
case 4: digitalWrite(E1_MS2_PIN,ms2); break; case 4: digitalWrite(E1_MS2_PIN,ms2); break;
#endif
} }
} }
@ -1286,8 +1299,10 @@ void microstep_readings()
SERIAL_PROTOCOLPGM("E0: "); SERIAL_PROTOCOLPGM("E0: ");
SERIAL_PROTOCOL( digitalRead(E0_MS1_PIN)); SERIAL_PROTOCOL( digitalRead(E0_MS1_PIN));
SERIAL_PROTOCOLLN( digitalRead(E0_MS2_PIN)); SERIAL_PROTOCOLLN( digitalRead(E0_MS2_PIN));
#if defined(E1_MS1_PIN) && E1_MS1_PIN > -1
SERIAL_PROTOCOLPGM("E1: "); SERIAL_PROTOCOLPGM("E1: ");
SERIAL_PROTOCOL( digitalRead(E1_MS1_PIN)); SERIAL_PROTOCOL( digitalRead(E1_MS1_PIN));
SERIAL_PROTOCOLLN( digitalRead(E1_MS2_PIN)); SERIAL_PROTOCOLLN( digitalRead(E1_MS2_PIN));
#endif
} }

Loading…
Cancel
Save