Prusa MINI Firmware overview
pins_ULTRATRONICS_PRO.h
Go to the documentation of this file.
1 /**
2  * Marlin 3D Printer Firmware
3  * Copyright (c) 2019 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 #pragma once
23 
24 /**
25  * ReprapWorld ULTRATRONICS v1.0
26  */
27 
28 #ifndef ARDUINO_ARCH_SAM
29  #error "Oops! Select 'Arduino Due' in 'Tools > Board.'"
30 #endif
31 
32 #define BOARD_INFO_NAME "Ultratronics v1.0"
33 
34 //
35 // Servos
36 //
37 #if NUM_SERVOS > 0
38  #define SERVO0_PIN 11
39  #if NUM_SERVOS > 1
40  #define SERVO1_PIN 12
41  #endif
42 #endif
43 
44 //
45 // Limit Switches
46 //
47 #define X_MIN_PIN 31
48 #define X_MAX_PIN 30
49 #define Y_MIN_PIN 12
50 #define Y_MAX_PIN 11
51 #define Z_MIN_PIN 29
52 #define Z_MAX_PIN 28
53 
54 //
55 // Steppers
56 //
57 #define X_STEP_PIN 35
58 #define X_DIR_PIN 34
59 #define X_ENABLE_PIN 37
60 #ifndef X_CS_PIN
61  #define X_CS_PIN 18
62 #endif
63 
64 #define Y_STEP_PIN 22
65 #define Y_DIR_PIN 23
66 #define Y_ENABLE_PIN 33
67 #ifndef Y_CS_PIN
68  #define Y_CS_PIN 19
69 #endif
70 
71 #define Z_STEP_PIN 25
72 #define Z_DIR_PIN 26
73 #define Z_ENABLE_PIN 24
74 #ifndef Z_CS_PIN
75  #define Z_CS_PIN 16
76 #endif
77 
78 #define E0_STEP_PIN 47
79 #define E0_DIR_PIN 46
80 #define E0_ENABLE_PIN 48
81 #ifndef E0_CS_PIN
82  #define E0_CS_PIN 17
83 #endif
84 
85 #define E1_STEP_PIN 44
86 #define E1_DIR_PIN 36
87 #define E1_ENABLE_PIN 45
88 #ifndef E1_CS_PIN
89  #define E1_CS_PIN -1
90 #endif
91 
92 #define E2_STEP_PIN 42
93 #define E2_DIR_PIN 41
94 #define E2_ENABLE_PIN 43
95 #ifndef E2_CS_PIN
96  #define E2_CS_PIN -1
97 #endif
98 
99 #define E3_STEP_PIN 39
100 #define E3_DIR_PIN 38
101 #define E3_ENABLE_PIN 40
102 #ifndef E3_CS_PIN
103  #define E3_CS_PIN -1
104 #endif
105 
106 //
107 // Temperature Sensors
108 //
109 #define TEMP_0_PIN 0 // Analog Input
110 #define TEMP_1_PIN 2 // Analog Input
111 #define TEMP_2_PIN 3 // Analog Input
112 #define TEMP_3_PIN 4 // Analog Input
113 #define TEMP_BED_PIN 1 // Analog Input
114 
115 //
116 // Heaters / Fans
117 //
118 #define HEATER_0_PIN 3
119 #define HEATER_1_PIN 8
120 #define HEATER_2_PIN 7
121 #define HEATER_3_PIN 9
122 #define HEATER_BED_PIN 2
123 
124 #ifndef FAN_PIN
125  #define FAN_PIN 6
126 #endif
127 #define FAN2_PIN 5
128 
129 //
130 // Misc. Functions
131 //
132 #define SDSS 59
133 #define SD_DETECT_PIN 60
134 #define LED_PIN 13
135 #define PS_ON_PIN 32
136 
137 //
138 // SPI Buses
139 //
140 
141 #define DAC0_SYNC 53 // PB14
142 #define SPI_CHAN_DAC 1
143 
144 #define SPI_CHAN_EEPROM1 -1
145 #define SPI_EEPROM1_CS -1
146 #define SPI_EEPROM2_CS -1
147 #define SPI_FLASH_CS -1
148 
149 // SPI for Max6675 or Max31855 Thermocouple
150 #define MAX6675_SS_PIN 65
151 #define MAX31855_SS0 65
152 #define MAX31855_SS1 52
153 #define MAX31855_SS2 50
154 #define MAX31855_SS3 51
155 
156 #define ENC424_SS 61
157 
158 //
159 // LCD / Controller
160 //
161 
162 #define BEEPER_PIN 27
163 
164 #if ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
165 
166  #define LCD_PINS_RS A8 // CS chip select / SS chip slave select
167  #define LCD_PINS_ENABLE MOSI // SID (MOSI)
168  #define LCD_PINS_D4 SCK // SCK (CLK) clock
169 
170  #define BTN_EN1 20
171  #define BTN_EN2 21
172  #define BTN_ENC 64
173 
174 #endif // REPRAPWORLD_GRAPHICAL_LCD