fix a few typos and correct english usage

This commit is contained in:
Felipe Corrêa da Silva Sanches 2012-06-15 11:56:38 -03:00
parent 866449371b
commit 1d4bc83291

View file

@ -1,6 +1,6 @@
/*
Reprap firmware based on Sprinter
Optimize for Sanguinololu 1.2 and above, RAMPS
Optimized for Sanguinololu 1.2 and above / RAMPS
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -16,7 +16,7 @@
along with this program. If not, see <http://www.gnu.org/licenses/>. */
/*
This firmware is a mashup between Sprinter,grbl and parts from marlin.
This firmware is a mashup between Sprinter, grbl and parts from marlin.
(https://github.com/kliment/Sprinter)
Changes by Doppler Michael (midopple)
@ -30,9 +30,9 @@
Sprinter Changelog
- Look forward function --> calculate 16 Steps forward, get from Firmaware Marlin and Grbl
- Stepper control with Timer 1 (Interrupt)
- Extruder heating with PID use a Softpwm (Timer 2) with 500 hz to free Timer1 für Steppercontrol
- Extruder heating with PID use a Softpwm (Timer 2) with 500 hz to free Timer1 for Steppercontrol
- command M220 Sxxx --> tune Printing speed online (+/- 50 %)
- G2 / G3 command --> circle funktion
- G2 / G3 command --> circle function
- Baudrate set to 250 kbaud
- Testet on Sanguinololu Board
- M30 Command can delete files on SD Card
@ -42,7 +42,7 @@
Version 1.3.04T
- Implement Plannercode from Marlin V1 big thanks to Erik
- Stepper interrupt with Step loops
- Stepperfrequenz 30 Khz
- Stepperfrequency 30 Khz
- New Command
* M202 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec
* M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2
@ -50,7 +50,7 @@
- Remove unused Variables
- Check Uart Puffer while circle processing (CMD: G2 / G3)
- Fast Xfer Function --> move Text to Flash
- Option to deaktivate ARC (G2/G3) function (save flash)
- Option to deactivate ARC (G2/G3) function (save flash)
- Removed modulo (%) operator, which uses an expensive divide
Version 1.3.05T
@ -77,7 +77,7 @@
A ';' inside a line ignores just the portion following the ';' character.
The beginning of the line is still interpreted.
- Same fix for SD Card, testet and work
- Same fix for SD Card, tested and work
Version 1.3.09T
- Move SLOWDOWN Function up
@ -94,14 +94,13 @@
- Make fastio & Arduino pin numbering consistent for AT90USB128x. --> Thanks to lincomatic
- Select Speedtable with F_CPU
- Use same Values for Speedtables as Marlin
-
Version 1.3.12T
- Fixed arc offset.
Version 1.3.13T
- Extrudmultiply with code M221 Sxxx (S100 original Extrude value)
- use Feedratefaktor only when Extrude > 0
- Extrudemultiply with code M221 Sxxx (S100 original Extrude value)
- use Feedratefactor only when Extrude > 0
- M106 / M107 can drive the FAN with PWM + Port check for not using Timer 1
- Added M93 command. Sends current steps for all axis.
- New Option --> FAN_SOFT_PWM, with this option the FAN PWM can use every digital I/O
@ -110,8 +109,8 @@
- When endstop is hit count the virtual steps, so the print lose no position when endstop is hit
Version 1.3.15T
- M206 - set additional homeing offset
- Option for minimum FAN start speed --> #define MINIMUM_FAN_START_SPEED 50 (set it to zero to deaktivate)
- M206 - set additional homing offset
- Option for minimum FAN start speed --> #define MINIMUM_FAN_START_SPEED 50 (set it to zero to deactivate)
Version 1.3.16T
- Extra Max Feedrate for Retract (MAX_RETRACT_FEEDRATE)
@ -121,10 +120,10 @@
- G4 Wait until last move is done
Version 1.3.18T
- Problem with Thermistor 3 table when sensor is brocken and temp is -20 °C
- Problem with Thermistor 3 table when sensor is broken and temp is -20 °C
Version 1.3.19T
- Set maximum acceleration. If "steps per unit" is Change the acc were not recalculatet
- Set maximum acceleration. If "steps per unit" is Change the acc were not recalculated
- Extra Parameter for Max Extruder Jerk
- New Parameter (max_e_jerk) in EEPROM --> Default settings after update !
@ -213,11 +212,11 @@ void __cxa_pure_virtual(){};
// M201 - Set maximum acceleration in units/s^2 for print moves (M201 X1000 Y1000)
// M202 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec
// M203 - Set temperture monitor to Sx
// M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2
// M205 - advanced settings: minimum travel speed S=while printing T=travel only, X= maximum xy jerk, Z=maximum Z jerk
// M206 - set additional homeing offset
// M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) in mm/sec^2
// M205 - advanced settings: minimum travel speed S=while printing T=travel only, X=maximum xy jerk, Z=maximum Z jerk
// M206 - set additional homing offset
// M220 - set speed factor override percentage S:factor in percent
// M220 - set speed factor override percentage S=factor in percent
// M221 - set extruder multiply factor S100 --> original Extrude Speed
// M303 - PID relay autotune S<temperature> sets the target temperature. (default target temperature = 150C)
@ -225,13 +224,13 @@ void __cxa_pure_virtual(){};
// M400 - Finish all moves
// M500 - stores paramters in EEPROM
// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily).
// M501 - reads parameters from EEPROM (if you need to reset them after you changed them temporarily).
// M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to.
// M503 - Print settings
// Debug feature / Testing the PID for Hotend
// M601 - Show Temp jitter from Extruder (min / max value from Hotend Temperatur while printing)
// M602 - Reset Temp jitter from Extruder (min / max val) --> Dont use it while Printing
// M601 - Show Temp jitter from Extruder (min / max value from Hotend Temperature while printing)
// M602 - Reset Temp jitter from Extruder (min / max val) --> Don't use it while Printing
// M603 - Show Free Ram
@ -268,8 +267,8 @@ unsigned long plateau_steps;
//unsigned long steps_per_sqr_second;
//adjustable feed faktor for online tuning printerspeed
volatile int feedmultiply=100; //100->original / 200-> Faktor 2 / 50 -> Faktor 0.5
//adjustable feed factor for online tuning printer speed
volatile int feedmultiply=100; //100->original / 200 -> Factor 2 / 50 -> Factor 0.5
int saved_feedmultiply;
volatile bool feedmultiplychanged=false;
volatile int extrudemultiply=100; //100->1 200->2
@ -278,7 +277,7 @@ volatile int extrudemultiply=100; //100->1 200->2
//unsigned long interval;
float destination[NUM_AXIS] = {0.0, 0.0, 0.0, 0.0};
float current_position[NUM_AXIS] = {0.0, 0.0, 0.0, 0.0};
float add_homeing[3]={0,0,0};
float add_homing[3]={0,0,0};
static unsigned short virtual_steps_x = 0;
static unsigned short virtual_steps_y = 0;
@ -305,7 +304,7 @@ bool is_homing = false;
#ifdef USE_ARC_FUNCTION
//For arc centerpont, send bei Command G2/G3
//For arc center point coordinates, sent by commands G2/G3
float offset[3] = {0.0, 0.0, 0.0};
#endif
@ -356,7 +355,7 @@ unsigned long previous_millis_cmd = 0;
unsigned long max_inactive_time = 0;
unsigned long stepper_inactive_time = 0;
//Temp Montor for repetier
//Temp Monitor for repetier
unsigned char manage_monitor = 255;
@ -613,8 +612,8 @@ int FreeRam1(void)
void analogWrite_check(uint8_t check_pin, int val)
{
#if defined(__AVR_ATmega168__) || defined(__AVR_ATmega328P__)
//Atmega168 / 328 can not useed OCR1A and OCR1B
//This are PINS PB1 / PB2 or on Ardurino D9 / D10
//Atmega168/328 can't use OCR1A and OCR1B
//These are pins PB1/PB2 or on Arduino D9/D10
if((check_pin != 9) && (check_pin != 10))
{
analogWrite(check_pin, val);
@ -622,8 +621,8 @@ void analogWrite_check(uint8_t check_pin, int val)
#endif
#if defined(__AVR_ATmega644P__) || defined(__AVR_ATmega1284P__)
//Atmega664P / 1284P can not useed OCR1A and OCR1B
//This are PINS PD4 / PD5 or on Ardurino D12 / D13
//Atmega664P/1284P can't use OCR1A and OCR1B
//These are pins PD4/PD5 or on Arduino D12/D13
if((check_pin != 12) && (check_pin != 13))
{
analogWrite(check_pin, val);
@ -631,8 +630,8 @@ void analogWrite_check(uint8_t check_pin, int val)
#endif
#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)
//Atmega1280 / 2560 can not useed OCR1A, OCR1B and OCR1C
//This are PINS PB5,PB6,PB7 or on Ardurino D11,D12,and D13
//Atmega1280/2560 can't use OCR1A, OCR1B and OCR1C
//These are pins PB5,PB6,PB7 or on Arduino D11,D12 and D13
if((check_pin != 11) && (check_pin != 12) && (check_pin != 13))
{
analogWrite(check_pin, val);
@ -1195,7 +1194,7 @@ FORCE_INLINE void process_commands()
st_synchronize();
current_position[X_AXIS] = (X_HOME_DIR == -1) ? 0 : X_MAX_LENGTH;
current_position[X_AXIS] += add_homeing[0];
current_position[X_AXIS] += add_homing[0];
plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);
destination[X_AXIS] = current_position[X_AXIS];
feedrate = 0;
@ -1228,7 +1227,7 @@ FORCE_INLINE void process_commands()
st_synchronize();
current_position[Y_AXIS] = (Y_HOME_DIR == -1) ? 0 : Y_MAX_LENGTH;
current_position[Y_AXIS] += add_homeing[1];
current_position[Y_AXIS] += add_homing[1];
plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);
destination[Y_AXIS] = current_position[Y_AXIS];
feedrate = 0;
@ -1261,7 +1260,7 @@ FORCE_INLINE void process_commands()
st_synchronize();
current_position[Z_AXIS] = (Z_HOME_DIR == -1) ? 0 : Z_MAX_LENGTH;
current_position[Z_AXIS] += add_homeing[2];
current_position[Z_AXIS] += add_homing[2];
plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);
destination[Z_AXIS] = current_position[Z_AXIS];
feedrate = 0;
@ -1579,7 +1578,7 @@ FORCE_INLINE void process_commands()
}
}
break;
case 190: // M190 - Wait bed for heater to reach target.
case 190: // M190 - Wait for bed heater to reach target temperature.
#if TEMP_1_PIN > -1
if (code_seen('S')) target_bed_raw = temp2analogBed(code_value());
codenum = millis();
@ -1789,7 +1788,7 @@ FORCE_INLINE void process_commands()
if(code_seen('S')) manage_monitor = code_value();
if(manage_monitor==100) manage_monitor=1; // Set 100 to heated bed
break;
case 204: // M204 acclereration S normal moves T filmanent only moves
case 204: // M204 acceleration S normal moves T filmanent only moves
if(code_seen('S')) move_acceleration = code_value() ;
if(code_seen('T')) retract_acceleration = code_value() ;
break;
@ -1801,10 +1800,10 @@ FORCE_INLINE void process_commands()
if(code_seen('Z')) max_z_jerk = code_value() ;
if(code_seen('E')) max_e_jerk = code_value() ;
break;
case 206: // M206 additional homeing offset
case 206: // M206 additional homing offset
for(int8_t cnt_i=0; cnt_i < 3; cnt_i++)
{
if(code_seen(axis_codes[cnt_i])) add_homeing[cnt_i] = code_value();
if(code_seen(axis_codes[cnt_i])) add_homing[cnt_i] = code_value();
}
break;
case 220: // M220 S<factor in percent>- set speed factor override percentage
@ -2210,7 +2209,7 @@ void calculate_trapezoid_for_block(block_t *block, float entry_factor, float exi
int32_t plateau_steps = block->step_event_count-accelerate_steps-decelerate_steps;
// Is the Plateau of Nominal Rate smaller than nothing? That means no cruising, and we will
// have to use intersection_distance() to calculate when to abort acceleration and start braking
// have to use intersection_distance() to calculate when to abort acceleration and start breaking
// in order to reach the final_rate exactly at the end of this block.
if (plateau_steps < 0) {
accelerate_steps = ceil(
@ -2571,7 +2570,7 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate)
if(feed_rate<minimumfeedrate) feed_rate=minimumfeedrate;
}
// slow down when de buffer starts to empty, rather than wait at the corner for a buffer refill
// slow down when the buffer starts to empty, rather than wait at the corner for a buffer refill
int moves_queued=(block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1);
#ifdef SLOWDOWN
if(moves_queued < (BLOCK_BUFFER_SIZE * 0.5) && moves_queued > 1) feed_rate = feed_rate*moves_queued / (BLOCK_BUFFER_SIZE * 0.5);
@ -2961,7 +2960,7 @@ static unsigned long step_events_completed; // The number of step events execute
static short e_steps;
static unsigned char busy = false; // TRUE when SIG_OUTPUT_COMPARE1A is being serviced. Used to avoid retriggering that handler.
static long acceleration_time, deceleration_time;
static unsigned short acc_step_rate; // needed for deccelaration start point
static unsigned short acc_step_rate; // needed for deceleration start point
static char step_loops;
static unsigned short OCR1A_nominal;
@ -2989,7 +2988,7 @@ static bool old_z_max_endstop=false;
//
// time ----->
//
// The trapezoid is the shape the speed curve over time. It starts at block->initial_rate, accelerates
// The trapezoid is the shape of the speed curve over time. It starts at block->initial_rate, accelerates
// first block->accelerate_until step_events_completed, then keeps going at constant speed until
// step_events_completed reaches block->decelerate_after after which it decelerates until the trapezoid generator is reset.
// The slope of acceleration is calculated with the leib ramp alghorithm.
@ -3090,7 +3089,7 @@ ISR(TIMER1_COMPA_vect)
// Set directions TO DO This should be done once during init of trapezoid. Endstops -> interrupt
out_bits = current_block->direction_bits;
// Set direction en check limit switches
// Set direction and check limit switches
if ((out_bits & (1<<X_AXIS)) != 0) { // -direction
WRITE(X_DIR_PIN, INVERT_X_DIR);
CHECK_ENDSTOPS