Subversion Repositories Tronxy-X3A-Marlin

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 ron 1
/**
2
 * Marlin 3D Printer Firmware
3
 * Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
4
 *
5
 * Based on Sprinter and grbl.
6
 * Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
7
 *
8
 * This program is free software: you can redistribute it and/or modify
9
 * it under the terms of the GNU General Public License as published by
10
 * the Free Software Foundation, either version 3 of the License, or
11
 * (at your option) any later version.
12
 *
13
 * This program is distributed in the hope that it will be useful,
14
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
 * GNU General Public License for more details.
17
 *
18
 * You should have received a copy of the GNU General Public License
19
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
20
 *
21
 */
22
 
23
/**
24
 * Minitronics v1.0/1.1 pin assignments
25
 */
26
 
27
/**
28
 * Rev B   2 JAN 2017
29
 *
30
 *  Added pin definitions for M3, M4 & M5 spindle control commands
31
 *
32
 */
33
 
34
#ifndef __AVR_ATmega1281__
35
  #error "Oops!  Make sure you have 'Minitronics' selected from the 'Tools -> Boards' menu."
36
#endif
37
 
38
#if HOTENDS > 2 || E_STEPPERS > 2
39
  #error "Minitronics supports up to 2 hotends / E-steppers. Comment out this line to continue."
40
#endif
41
 
42
#define BOARD_NAME         "Minitronics v1.0 / v1.1"
43
//
44
// Limit Switches
45
//
46
#define X_MIN_PIN           5
47
#define X_MAX_PIN           2
48
#define Y_MIN_PIN           2
49
#define Y_MAX_PIN          15
50
#define Z_MIN_PIN           6
51
#define Z_MAX_PIN          -1
52
 
53
//
54
// Steppers
55
//
56
#define X_STEP_PIN         48
57
#define X_DIR_PIN          47
58
#define X_ENABLE_PIN       49
59
 
60
#define Y_STEP_PIN         39   // A6
61
#define Y_DIR_PIN          40   // A0
62
#define Y_ENABLE_PIN       38
63
 
64
#define Z_STEP_PIN         42   // A2
65
#define Z_DIR_PIN          43   // A6
66
#define Z_ENABLE_PIN       41   // A1
67
 
68
#define E0_STEP_PIN        45
69
#define E0_DIR_PIN         44
70
#define E0_ENABLE_PIN      27
71
 
72
#define E1_STEP_PIN        36
73
#define E1_DIR_PIN         35
74
#define E1_ENABLE_PIN      37
75
 
76
//
77
// Temperature Sensors
78
//
79
#define TEMP_0_PIN          7   // Analog Input
80
#define TEMP_1_PIN          6   // Analog Input
81
#define TEMP_BED_PIN        6   // Analog Input
82
 
83
//
84
// Heaters / Fans
85
//
86
#define HEATER_0_PIN        7   // EXTRUDER 1
87
#define HEATER_1_PIN        8   // EXTRUDER 2
88
#define HEATER_BED_PIN      3   // BED
89
 
90
#ifndef FAN_PIN
91
  #define FAN_PIN           9
92
#endif
93
 
94
//
95
// Misc. Functions
96
//
97
#define SDSS               16
98
#define LED_PIN            46
99
 
100
//
101
// LCD / Controller
102
//
103
#define BEEPER_PIN         -1
104
 
105
#if ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
106
 
107
  #define LCD_PINS_RS      15   // CS chip select /SS chip slave select
108
  #define LCD_PINS_ENABLE  11   // SID (MOSI)
109
  #define LCD_PINS_D4      10   // SCK (CLK) clock
110
 
111
  #define BTN_EN1          18
112
  #define BTN_EN2          17
113
  #define BTN_ENC          25
114
 
115
  #define SD_DETECT_PIN    30
116
 
117
#else
118
 
119
  #define LCD_PINS_RS      -1
120
  #define LCD_PINS_ENABLE  -1
121
 
122
  // Buttons are directly attached using keypad
123
  #define BTN_EN1          -1
124
  #define BTN_EN2          -1
125
  #define BTN_ENC          -1
126
 
127
  #define SD_DETECT_PIN    -1   // Minitronics doesn't use this
128
#endif
129
 
130
//
131
// M3/M4/M5 - Spindle/Laser Control
132
//
133
#if ENABLED(SPINDLE_LASER_ENABLE)  // assumes we're only doing CNC work (no 3D printing)
134
  #undef HEATER_BED_PIN
135
  #undef TEMP_BED_PIN             // need to free up some pins but also need to
136
  #undef TEMP_0_PIN               // re-assign them (to unused pins) because Marlin
137
  #undef TEMP_1_PIN               // requires the presence of certain pins or else it
138
  #define HEATER_BED_PIN      4   // won't compile
139
  #define TEMP_BED_PIN       50
140
  #define TEMP_0_PIN         51
141
  #define SPINDLE_LASER_ENABLE_PIN      52   // using A6 because it already has a pullup
142
  #define SPINDLE_LASER_PWM_PIN          3   // WARNING - LED & resistor pull up to +12/+24V stepper voltage
143
  #define SPINDLE_DIR_PIN               53
144
#endif