Prusa MINI Firmware overview
Main Page
Modules
Classes
Files
File List
File Members
pins_BIGTREE_SKR_PRO_V1.1.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
#ifndef TARGET_STM32F4
25
#error "Oops! Select an STM32F4 board in 'Tools > Board.'"
26
#elif HOTENDS > 3 || E_STEPPERS > 3
27
#error "BIGTREE SKR Pro V1.1 supports up to 3 hotends / E-steppers."
28
#endif
29
30
#define BOARD_INFO_NAME "BIGTREE SKR Pro 1.1" // redefined?
31
32
// Use one of these or SDCard-based Emulation will be used
33
//#define SRAM_EEPROM_EMULATION // Use BackSRAM-based EEPROM emulation
34
//#define FLASH_EEPROM_EMULATION // Use Flash-based EEPROM emulation
35
36
//
37
// Servos
38
//
39
#define SERVO0_PIN PA1
40
41
//
42
// Limit Switches
43
//
44
#define X_MIN_PIN PB10
45
#define X_MAX_PIN PE15
46
#define Y_MIN_PIN PE12
47
#define Y_MAX_PIN PE10
48
#define Z_MIN_PIN PG8
49
#define Z_MAX_PIN PG5
50
51
//
52
// Z Probe must be this pins
53
//
54
#ifndef Z_MIN_PROBE_PIN
55
#define Z_MIN_PROBE_PIN PA2
56
#endif
57
58
//
59
// Steppers
60
//
61
#define X_STEP_PIN PE9
62
#define X_DIR_PIN PF1
63
#define X_ENABLE_PIN PF2
64
#ifndef X_CS_PIN
65
#define X_CS_PIN PA15
66
#endif
67
68
#define Y_STEP_PIN PE11
69
#define Y_DIR_PIN PE8
70
#define Y_ENABLE_PIN PD7
71
#ifndef Y_CS_PIN
72
#define Y_CS_PIN PB8
73
#endif
74
75
#define Z_STEP_PIN PE13
76
#define Z_DIR_PIN PC2
77
#define Z_ENABLE_PIN PC0
78
#ifndef Z_CS_PIN
79
#define Z_CS_PIN PB9
80
#endif
81
82
#define E0_STEP_PIN PE14
83
#define E0_DIR_PIN PA0
84
#define E0_ENABLE_PIN PC3
85
#ifndef E0_CS_PIN
86
#define E0_CS_PIN PB3
87
#endif
88
89
#define E1_STEP_PIN PD15
90
#define E1_DIR_PIN PE7
91
#define E1_ENABLE_PIN PA3
92
#ifndef E1_CS_PIN
93
#define E1_CS_PIN PG15
94
#endif
95
96
#define E2_STEP_PIN PD13
97
#define E2_DIR_PIN PG9
98
#define E2_ENABLE_PIN PF0
99
#ifndef E2_CS_PIN
100
#define E2_CS_PIN PG12
101
#endif
102
103
//
104
// Software SPI pins for TMC2130 stepper drivers
105
//
106
#if ENABLED(TMC_USE_SW_SPI)
107
#ifndef TMC_SW_MOSI
108
#define TMC_SW_MOSI PC12
109
#endif
110
#ifndef TMC_SW_MISO
111
#define TMC_SW_MISO PC11
112
#endif
113
#ifndef TMC_SW_SCK
114
#define TMC_SW_SCK PC10
115
#endif
116
#endif
117
118
#if HAS_TMC220x
119
/**
120
* TMC2208/TMC2209 stepper drivers
121
*
122
* Hardware serial communication ports.
123
* If undefined software serial is used according to the pins below
124
*/
125
//#define X_HARDWARE_SERIAL Serial
126
//#define X2_HARDWARE_SERIAL Serial1
127
//#define Y_HARDWARE_SERIAL Serial1
128
//#define Y2_HARDWARE_SERIAL Serial1
129
//#define Z_HARDWARE_SERIAL Serial1
130
//#define Z2_HARDWARE_SERIAL Serial1
131
//#define E0_HARDWARE_SERIAL Serial1
132
//#define E1_HARDWARE_SERIAL Serial1
133
//#define E2_HARDWARE_SERIAL Serial1
134
//#define E3_HARDWARE_SERIAL Serial1
135
//#define E4_HARDWARE_SERIAL Serial1
136
137
//
138
// Software serial
139
//
140
#define X_SERIAL_TX_PIN PC13
141
#define X_SERIAL_RX_PIN PC13
142
143
#define Y_SERIAL_TX_PIN PE3
144
#define Y_SERIAL_RX_PIN PE3
145
146
#define Z_SERIAL_TX_PIN PE1
147
#define Z_SERIAL_RX_PIN PE1
148
149
#define E0_SERIAL_TX_PIN PD4
150
#define E0_SERIAL_RX_PIN PD4
151
152
#define E1_SERIAL_TX_PIN PD1
153
#define E1_SERIAL_RX_PIN PD1
154
155
#define E2_SERIAL_TX_PIN PD6
156
#define E2_SERIAL_RX_PIN PD6
157
#endif
158
159
//
160
// Temperature Sensors
161
//
162
#define TEMP_0_PIN PF4 // T1 <-> E0
163
#define TEMP_1_PIN PF5 // T2 <-> E1
164
#define TEMP_2_PIN PF6 // T3 <-> E2
165
#define TEMP_BED_PIN PF3 // T0 <-> Bed
166
167
//
168
// Heaters / Fans
169
//
170
#define HEATER_0_PIN PB1 // Heater0
171
#define HEATER_1_PIN PD14 // Heater1
172
#define HEATER_2_PIN PB0 // Heater1
173
#define HEATER_BED_PIN PD12 // Hotbed
174
#define FAN_PIN PC8 // Fan0
175
#define FAN1_PIN PE5 // Fan1
176
#define FAN2_PIN PE6 // Fan2
177
178
//
179
// Misc. Functions
180
//
181
#define SDSS PB12
182
183
/**
184
* _____ _____
185
* NC | · · | GND 5V | · · | GND
186
* RESET | · · | PF12(SD_DETECT) (LCD_D7) PG7 | · · | PG6 (LCD_D6)
187
* (MOSI)PB15 | · · | PF11(BTN_EN2) (LCD_D5) PG3 | · · | PG2 (LCD_D4)
188
* (SD_SS)PB12 | · · | PG10(BTN_EN1) (LCD_RS) PD10 | · · | PD11 (LCD_EN)
189
* (SCK)PB13 | · · | PB14(MISO) (BTN_ENC) PA8 | · · | PG4 (BEEPER)
190
*  ̄ ̄  ̄ ̄
191
* EXP2 EXP1
192
*/
193
194
//
195
// LCDs and Controllers
196
//
197
#if HAS_SPI_LCD
198
#define BEEPER_PIN PG4
199
#define BTN_ENC PA8
200
201
#if ENABLED(CR10_STOCKDISPLAY)
202
#define LCD_PINS_RS PG6
203
204
#define BTN_EN1 PD11
205
#define BTN_EN2 PG2
206
207
#define LCD_PINS_ENABLE PG7
208
#define LCD_PINS_D4 PG3
209
210
// CR10_Stock Display needs a different delay setting on SKR PRO v1.1, so undef it here.
211
// It will be defined again at the #HAS_GRAPHICAL_LCD section below.
212
#undef ST7920_DELAY_1
213
#undef ST7920_DELAY_2
214
#undef ST7920_DELAY_3
215
216
217
#else
218
219
#define LCD_PINS_RS PD10
220
221
#define BTN_EN1 PG10
222
#define BTN_EN2 PF11
223
#define SD_DETECT_PIN PF12
224
225
#define LCD_SDSS PB12
226
227
#define LCD_PINS_ENABLE PD11
228
#define LCD_PINS_D4 PG2
229
230
#if ENABLED(FYSETC_MINI_12864)
231
#define DOGLCD_CS PD11
232
#define DOGLCD_A0 PD10
233
//#define LCD_BACKLIGHT_PIN -1
234
#define LCD_RESET_PIN PG2 // Must be high or open for LCD to operate normally.
235
#if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0)
236
#ifndef RGB_LED_R_PIN
237
#define RGB_LED_R_PIN PG3
238
#endif
239
#ifndef RGB_LED_G_PIN
240
#define RGB_LED_G_PIN PG6
241
#endif
242
#ifndef RGB_LED_B_PIN
243
#define RGB_LED_B_PIN PG7
244
#endif
245
#elif ENABLED(FYSETC_MINI_12864_2_1)
246
#define NEOPIXEL_PIN PG3
247
#endif
248
#endif // !FYSETC_MINI_12864
249
250
#if ENABLED(ULTIPANEL)
251
#define LCD_PINS_D5 PG3
252
#define LCD_PINS_D6 PG6
253
#define LCD_PINS_D7 PG7
254
#endif
255
256
#endif
257
258
// Alter timing for graphical display
259
#if HAS_GRAPHICAL_LCD
260
#ifndef ST7920_DELAY_1
261
#define ST7920_DELAY_1 DELAY_NS(96)
262
#endif
263
#ifndef ST7920_DELAY_2
264
#define ST7920_DELAY_2 DELAY_NS(48)
265
#endif
266
#ifndef ST7920_DELAY_3
267
#define ST7920_DELAY_3 DELAY_NS(600)
268
#endif
269
#endif
270
271
#endif // HAS_SPI_LCD
Prusa-Firmware-Buddy-Private1
lib
Marlin
Marlin
src
pins
stm32
pins_BIGTREE_SKR_PRO_V1.1.h
Generated by
1.8.16