Merge branch 'Marlin_v1' of https://github.com/ErikZalm/Marlin into Marlin_v1

This commit is contained in:
neildarlow
2014-05-24 13:08:58 +01:00
4 changed files with 29 additions and 9 deletions

View File

@ -119,6 +119,7 @@
// M109 - Sxxx Wait for extruder current temp to reach target temp. Waits only when heating
// Rxxx Wait for extruder current temp to reach target temp. Waits when heating and cooling
// IF AUTOTEMP is enabled, S<mintemp> B<maxtemp> F<factor>. Exit autotemp by any M109 without F
// M112 - Emergency stop
// M114 - Output current position to serial port
// M115 - Capabilities string
// M117 - display message
@ -673,6 +674,11 @@ void get_command()
}
}
//If command was e-stop process now
if(strcmp(cmdbuffer[bufindw], "M112") == 0)
kill();
bufindw = (bufindw + 1)%BUFSIZE;
buflen += 1;
}
@ -1177,19 +1183,21 @@ void process_commands()
//ClearToSend();
return;
}
//break;
break;
case 2: // G2 - CW ARC
if(Stopped == false) {
get_arc_coordinates();
prepare_arc_move(true);
return;
}
break;
case 3: // G3 - CCW ARC
if(Stopped == false) {
get_arc_coordinates();
prepare_arc_move(false);
return;
}
break;
case 4: // G4 dwell
LCD_MESSAGEPGM(MSG_DWELL);
codenum = 0;
@ -1799,7 +1807,7 @@ void process_commands()
int pin_number = LED_PIN;
if (code_seen('P') && pin_status >= 0 && pin_status <= 255)
pin_number = code_value();
for(int8_t i = 0; i < (int8_t)sizeof(sensitive_pins); i++)
for(int8_t i = 0; i < (int8_t)(sizeof(sensitive_pins)/sizeof(int)); i++)
{
if (sensitive_pins[i] == pin_number)
{
@ -1830,6 +1838,9 @@ void process_commands()
#endif
setWatch();
break;
case 112: // M112 -Emergency Stop
kill();
break;
case 140: // M140 set bed temp
if (code_seen('S')) setTargetBed(code_value());
break;
@ -2153,8 +2164,9 @@ void process_commands()
}
break;
case 85: // M85
code_seen('S');
max_inactive_time = code_value() * 1000;
if(code_seen('S')) {
max_inactive_time = code_value() * 1000;
}
break;
case 92: // M92
for(int8_t i=0; i < NUM_AXIS; i++)
@ -2275,6 +2287,7 @@ void process_commands()
if(tmp_extruder >= EXTRUDERS) {
SERIAL_ECHO_START;
SERIAL_ECHO(MSG_M200_INVALID_EXTRUDER);
break;
}
}
volumetric_multiplier[tmp_extruder] = 1 / area;
@ -2466,7 +2479,7 @@ void process_commands()
if(pin_state >= -1 && pin_state <= 1){
for(int8_t i = 0; i < (int8_t)sizeof(sensitive_pins); i++)
for(int8_t i = 0; i < (int8_t)(sizeof(sensitive_pins)/sizeof(int)); i++)
{
if (sensitive_pins[i] == pin_number)
{
@ -3424,6 +3437,9 @@ void handle_status_leds(void) {
void manage_inactivity()
{
if(buflen < (BUFSIZE-1))
get_command();
if( (millis() - previous_millis_cmd) > max_inactive_time )
if(max_inactive_time)
kill();