Sprinter/Sprinter/Sprinter.h

76 lines
2 KiB
C
Raw Normal View History

// Tonokip RepRap firmware rewrite based off of Hydra-mmm firmware.
// Licence: GPL
2011-05-11 12:24:17 +00:00
#include <WProgram.h>
2011-07-09 11:12:11 +00:00
#include "fastio.h"
2011-07-07 13:44:08 +00:00
extern "C" void __cxa_pure_virtual();
void __cxa_pure_virtual(){};
void get_command();
void process_commands();
void manage_inactivity(byte debug);
void manage_heater();
int temp2analogu(int celsius, const short table[][2], int numtemps, int source);
int analog2tempu(int raw, const short table[][2], int numtemps, int source);
#ifdef HEATER_USES_THERMISTOR
#define HEATERSOURCE 1
#endif
#ifdef HEATER_USES_AD595
#define HEATERSOURCE 2
#endif
#ifdef HEATER_USES_MAX6675
#define HEATERSOURCE 3
#endif
#ifdef BED_USES_THERMISTOR
#define BEDSOURCE 1
#endif
#ifdef BED_USES_AD595
#define BEDSOURCE 2
#endif
#ifdef BED_USES_MAX6675
#define BEDSOURCE 3
#endif
#define temp2analogh( c ) temp2analogu((c),temptable,NUMTEMPS,HEATERSOURCE)
#define temp2analogBed( c ) temp2analogu((c),bedtemptable,BNUMTEMPS,BEDSOURCE)
#define analog2temp( c ) analog2tempu((c),temptable,NUMTEMPS,HEATERSOURCE)
#define analog2tempBed( c ) analog2tempu((c),bedtemptable,BNUMTEMPS,BEDSOURCE)
#if X_ENABLE_PIN > -1
2011-07-09 11:12:11 +00:00
#define enable_x() WRITE(X_ENABLE_PIN, X_ENABLE_ON)
#define disable_x() WRITE(X_ENABLE_PIN,!X_ENABLE_ON)
#else
#define enable_x() ;
#define disable_x() ;
#endif
#if Y_ENABLE_PIN > -1
2011-07-09 11:12:11 +00:00
#define enable_y() WRITE(Y_ENABLE_PIN, Y_ENABLE_ON)
#define disable_y() WRITE(Y_ENABLE_PIN,!Y_ENABLE_ON)
#else
#define enable_y() ;
#define disable_y() ;
#endif
#if Z_ENABLE_PIN > -1
2011-07-09 11:12:11 +00:00
#define enable_z() WRITE(Z_ENABLE_PIN, Z_ENABLE_ON)
#define disable_z() WRITE(Z_ENABLE_PIN,!Z_ENABLE_ON)
#else
#define enable_z() ;
#define disable_z() ;
#endif
#if E_ENABLE_PIN > -1
2011-07-09 11:12:11 +00:00
#define enable_e() WRITE(E_ENABLE_PIN, E_ENABLE_ON)
#define disable_e() WRITE(E_ENABLE_PIN,!E_ENABLE_ON)
#else
#define enable_e() ;
#define disable_e() ;
#endif
void FlushSerialRequestResend();
void ClearToSend();
void get_coordinates();
void prepare_move();
void linear_move(unsigned long steps_remaining[]);
void do_step(int axis);
void kill(byte debug);