86 lines
2.0 KiB
Plaintext
86 lines
2.0 KiB
Plaintext
#ifndef _CONFIG_H
|
|
#define _CONFIG_H
|
|
|
|
#include "arduino.h"
|
|
|
|
// controller index- bus is multidrop after all
|
|
#define THIS_CONTROLLER_NUM 0
|
|
|
|
//RS485 Interface pins
|
|
#define RX_ENABLE_PIN DIO4
|
|
#define TX_ENABLE_PIN AIO2
|
|
|
|
// Control pins for the A3949 chips
|
|
#define H1D DIO7
|
|
#define H1E DIO5
|
|
#define H2D DIO8
|
|
#define H2E DIO6
|
|
|
|
// PWM versions of the enable_pins
|
|
#define H1E_PWM OCR0B
|
|
#define H2E_PWM OCR0A
|
|
|
|
//Step/Dir Pins from motherboard to extruder
|
|
//IMPORTANT: Assumes that the step pin is on PCIE0
|
|
#define E_STEP_PIN DIO10
|
|
#define E_DIR_PIN DIO9
|
|
|
|
//Trimpot is on AIO0, pin 23
|
|
#define TRIM_POT AIO0
|
|
#define TRIM_POT_CHANNEL 0
|
|
|
|
//Read analog voltage from thermistor
|
|
#define TEMP_PIN AIO3
|
|
#define TEMP_PIN_CHANNEL 3
|
|
|
|
//Read analog voltage from thermistor
|
|
#define TEMP_BED_PIN AIO6
|
|
#define TEMP_BED_PIN_CHANNEL 6
|
|
|
|
|
|
#define REFERENCE REFERENCE_AVCC
|
|
|
|
#define ANALOG_MASK (MASK(TRIM_POT_CHANNEL) | MASK(TEMP_PIN_CHANNEL) | MASK(TEMP_BED_PIN_CHANNEL))
|
|
|
|
#define TEMP_THERMISTOR
|
|
|
|
#define HEATER_PIN DIO11
|
|
#define BED_PIN AIO1
|
|
#define FAN_PIN DIO12
|
|
|
|
// extruder settings
|
|
#define TEMP_HYSTERESIS 20
|
|
#define TEMP_RESIDENCY_TIME 60
|
|
|
|
#ifdef DEFINE_TEMP_SENSOR
|
|
DEFINE_TEMP_SENSOR(extruder, TT_THERMISTOR, TEMP_PIN_CHANNEL)
|
|
DEFINE_TEMP_SENSOR(bed, TT_THERMISTOR, TEMP_BED_PIN_CHANNEL)
|
|
#endif
|
|
|
|
#ifdef DEFINE_HEATER
|
|
DEFINE_HEATER(extruder, PORTD, HEATER_PIN, OCR0A)
|
|
DEFINE_HEATER(bed, PORTD, BED_PIN, OCR0B)
|
|
#endif
|
|
|
|
// list of PWM-able pins and corresponding timers
|
|
// timer1 is used for step timing so don't use OC1A/OC1B (DIO9/DIO10)
|
|
// OC0A DIO6
|
|
// OC0B DIO5
|
|
// OC1A DIO9
|
|
// OC1B DIO10
|
|
// OC2A DIO11
|
|
// OC2B DIO3
|
|
|
|
#define TH_COUNT 8
|
|
#define PID_SCALE 1024L
|
|
|
|
|
|
/*
|
|
Motors
|
|
*/
|
|
|
|
#define enable_motors() do { TCCR0A |= MASK(COM0A1) | MASK(COM0B1); } while (0)
|
|
#define disable_motors() do { TCCR0A &= ~MASK(COM0A1) & ~MASK(COM0B1); } while (0)
|
|
|
|
#endif /* _CONFIG_H */
|