Added #ifdef BARICUDA around the BariCUDA changes

This commit is contained in:
Erik van der Zalm 2013-05-14 23:56:32 +02:00
parent 37f3199df3
commit bd2cd4903e
6 changed files with 53 additions and 32 deletions

View file

@ -403,6 +403,9 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th
// SF send wrong arc g-codes when using Arc Point as fillet procedure // SF send wrong arc g-codes when using Arc Point as fillet procedure
//#define SF_ARC_FIX //#define SF_ARC_FIX
// Support for the BariCUDA Paste Extruder.
//#define BARICUDA
#include "Configuration_adv.h" #include "Configuration_adv.h"
#include "thermistortables.h" #include "thermistortables.h"

View file

@ -186,8 +186,10 @@ extern float add_homeing[3];
extern float min_pos[3]; extern float min_pos[3];
extern float max_pos[3]; extern float max_pos[3];
extern int fanSpeed; extern int fanSpeed;
#ifdef BARICUDA
extern int ValvePressure; extern int ValvePressure;
extern int EtoPPressure; extern int EtoPPressure;
#endif
#ifdef FWRETRACT #ifdef FWRETRACT
extern bool autoretract_enabled; extern bool autoretract_enabled;

View file

@ -172,8 +172,10 @@ float extruder_offset[2][EXTRUDERS] = {
#endif #endif
uint8_t active_extruder = 0; uint8_t active_extruder = 0;
int fanSpeed=0; int fanSpeed=0;
#ifdef BARICUDA
int ValvePressure=0; int ValvePressure=0;
int EtoPPressure=0; int EtoPPressure=0;
#endif
#ifdef FWRETRACT #ifdef FWRETRACT
bool autoretract_enabled=true; bool autoretract_enabled=true;
@ -1174,37 +1176,37 @@ void process_commands()
fanSpeed = 0; fanSpeed = 0;
break; break;
#endif //FAN_PIN #endif //FAN_PIN
#ifdef BARICUDA
// PWM for HEATER_1_PIN // PWM for HEATER_1_PIN
#if HEATER_1_PIN > -1 #if HEATER_1_PIN > -1
case 126: //M126 valve open case 126: //M126 valve open
if (code_seen('S')){ if (code_seen('S')){
ValvePressure=constrain(code_value(),0,255); ValvePressure=constrain(code_value(),0,255);
} }
else { else {
ValvePressure=255; ValvePressure=255;
} }
break; break;
case 127: //M127 valve closed case 127: //M127 valve closed
ValvePressure = 0; ValvePressure = 0;
break; break;
#endif //HEATER_1_PIN #endif //HEATER_1_PIN
// PWM for HEATER_2_PIN
#if HEATER_2_PIN > -1
case 128: //M128 valve open
if (code_seen('S')){
EtoPPressure=constrain(code_value(),0,255);
}
else {
EtoPPressure=255;
}
break;
case 129: //M129 valve closed
EtoPPressure = 0;
break;
#endif //HEATER_2_PIN
// PWM for HEATER_2_PIN
#if HEATER_2_PIN > -1
case 128: //M128 valve open
if (code_seen('S')){
EtoPPressure=constrain(code_value(),0,255);
}
else {
EtoPPressure=255;
}
break;
case 129: //M129 valve closed
EtoPPressure = 0;
break;
#endif //HEATER_2_PIN
#endif
#if (PS_ON_PIN > -1) #if (PS_ON_PIN > -1)
case 80: // M80 - ATX Power On case 80: // M80 - ATX Power On

View file

@ -1474,7 +1474,11 @@
#define HEATER_1_PIN 7 #define HEATER_1_PIN 7
#define TEMP_1_PIN 1 #define TEMP_1_PIN 1
#ifdef BARICUDA
#define HEATER_2_PIN 6 #define HEATER_2_PIN 6
#else
#define HEATER_2_PIN -1
#endif
#define TEMP_2_PIN -1 #define TEMP_2_PIN -1
#define E0_STEP_PIN 34 #define E0_STEP_PIN 34

View file

@ -439,18 +439,22 @@ void check_axes_activity()
unsigned char z_active = 0; unsigned char z_active = 0;
unsigned char e_active = 0; unsigned char e_active = 0;
unsigned char tail_fan_speed = fanSpeed; unsigned char tail_fan_speed = fanSpeed;
#ifdef BARICUDA
unsigned char valve_pressure = 0; unsigned char valve_pressure = 0;
unsigned char e_to_p_pressure = 0; unsigned char e_to_p_pressure = 0;
unsigned char tail_valve_pressure = 0; unsigned char tail_valve_pressure = 0;
unsigned char tail_e_to_p_pressure = 0; unsigned char tail_e_to_p_pressure = 0;
#endif
block_t *block; block_t *block;
if(block_buffer_tail != block_buffer_head) if(block_buffer_tail != block_buffer_head)
{ {
uint8_t block_index = block_buffer_tail; uint8_t block_index = block_buffer_tail;
tail_fan_speed = block_buffer[block_index].fan_speed; tail_fan_speed = block_buffer[block_index].fan_speed;
#ifdef BARICUDA
tail_valve_pressure = block_buffer[block_index].valve_pressure; tail_valve_pressure = block_buffer[block_index].valve_pressure;
tail_e_to_p_pressure = block_buffer[block_index].e_to_p_pressure; tail_e_to_p_pressure = block_buffer[block_index].e_to_p_pressure;
#endif
while(block_index != block_buffer_head) while(block_index != block_buffer_head)
{ {
block = &block_buffer[block_index]; block = &block_buffer[block_index];
@ -493,7 +497,8 @@ void check_axes_activity()
getHighESpeed(); getHighESpeed();
#endif #endif
#if HEATER_1_PIN > -1 #ifdef BARICUDA
#if HEATER_1_PIN > -1
if (ValvePressure != 0){ if (ValvePressure != 0){
analogWrite(HEATER_1_PIN,ValvePressure); // If buffer is empty use current valve pressure analogWrite(HEATER_1_PIN,ValvePressure); // If buffer is empty use current valve pressure
} }
@ -505,9 +510,9 @@ void check_axes_activity()
if (ValvePressure != 0 && tail_valve_pressure !=0) { if (ValvePressure != 0 && tail_valve_pressure !=0) {
analogWrite(HEATER_1_PIN,tail_valve_pressure); analogWrite(HEATER_1_PIN,tail_valve_pressure);
} }
#endif #endif
#if HEATER_2_PIN > -1 #if HEATER_2_PIN > -1
if (EtoPPressure != 0){ if (EtoPPressure != 0){
analogWrite(HEATER_2_PIN,EtoPPressure); // If buffer is empty use current EtoP pressure analogWrite(HEATER_2_PIN,EtoPPressure); // If buffer is empty use current EtoP pressure
} }
@ -519,6 +524,7 @@ void check_axes_activity()
if (EtoPPressure != 0 && tail_e_to_p_pressure !=0) { if (EtoPPressure != 0 && tail_e_to_p_pressure !=0) {
analogWrite(HEATER_2_PIN,tail_e_to_p_pressure); analogWrite(HEATER_2_PIN,tail_e_to_p_pressure);
} }
#endif
#endif #endif
} }
@ -593,8 +599,10 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa
} }
block->fan_speed = fanSpeed; block->fan_speed = fanSpeed;
#ifdef BARICUDA
block->valve_pressure = ValvePressure; block->valve_pressure = ValvePressure;
block->e_to_p_pressure = EtoPPressure; block->e_to_p_pressure = EtoPPressure;
#endif
// Compute direction bits for this block // Compute direction bits for this block
block->direction_bits = 0; block->direction_bits = 0;

View file

@ -60,8 +60,10 @@ typedef struct {
unsigned long final_rate; // The minimal rate at exit unsigned long final_rate; // The minimal rate at exit
unsigned long acceleration_st; // acceleration steps/sec^2 unsigned long acceleration_st; // acceleration steps/sec^2
unsigned long fan_speed; unsigned long fan_speed;
#ifdef BARICUDA
unsigned long valve_pressure; unsigned long valve_pressure;
unsigned long e_to_p_pressure; unsigned long e_to_p_pressure;
#endif
volatile char busy; volatile char busy;
} block_t; } block_t;