This repository was archived by the owner on Jan 26, 2024. It is now read-only.
forked from MarlinFirmware/Marlin
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpins_CREALITY_ENDER2P_V24S4.h
222 lines (189 loc) · 6.03 KB
/
pins_CREALITY_ENDER2P_V24S4.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2024 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
*
* Based on Sprinter and grbl.
* Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
//
// Creality Ender 2 Pro v2.4.S4_170 (HC32f460kcta)
// Derived from https://github.com/Klipper3d/klipper/blob/master/config/printer-creality-ender2pro-hc32-2022.cfg
//
#include "env_validate.h"
#if HAS_MULTI_HOTEND || E_STEPPERS > 1
#error "Creality v2.4.S4 only supports one hotend and E-stepper"
#endif
#ifndef BOARD_INFO_NAME
#define BOARD_INFO_NAME "Creality v2.4.S4"
#endif
#ifndef DEFAULT_MACHINE_NAME
#define DEFAULT_MACHINE_NAME "Ender 2 Pro"
#endif
//
// Onboard crystal oscillator
//
#ifndef BOARD_XTAL_FREQUENCY
#define BOARD_XTAL_FREQUENCY 8000000 // 8 MHz XTAL
#endif
//
// Release PB4 (Y_ENABLE_PIN) from JTAG NRST role
//
//#define DISABLE_DEBUG
//#define DISABLE_JTAG
//
// EEPROM
//
#if NO_EEPROM_SELECTED
#define IIC_BL24CXX_EEPROM
//#define SDCARD_EEPROM_EMULATION
#undef NO_EEPROM_SELECTED
#endif
#if ENABLED(IIC_BL24CXX_EEPROM)
#define IIC_EEPROM_SDA PA12
#define IIC_EEPROM_SCL PA11
#define MARLIN_EEPROM_SIZE 0x800 // 2K (24C16)
#elif ENABLED(SDCARD_EEPROM_EMULATION)
#define MARLIN_EEPROM_SIZE 0x800 // 2K
#endif
//
// Servos
//
#ifndef SERVO0_PIN
#define SERVO0_PIN PB0 // BLTouch OUT *
#endif
//
// Limit Switches
//
#define X_STOP_PIN PA5
#define Y_STOP_PIN PA6
#define Z_STOP_PIN PB0 // BLTOUCH *
#ifndef Z_MIN_PROBE_PIN
#define Z_MIN_PROBE_PIN PB1 // BLTouch IN *
#endif
//
// Filament Runout Sensor
//
#ifndef FIL_RUNOUT_PIN
#define FIL_RUNOUT_PIN PC15 // "Pulled-high" *
#endif
//
// Steppers
//
#define X_ENABLE_PIN PC2
#define X_STEP_PIN PC1
#define X_DIR_PIN PC0
#define Y_ENABLE_PIN PH2
#define Y_STEP_PIN PB9
#define Y_DIR_PIN PB8
#define Z_ENABLE_PIN PB7
#define Z_STEP_PIN PB6
#define Z_DIR_PIN PB5
#define E0_ENABLE_PIN PB4
#define E0_STEP_PIN PB3
#define E0_DIR_PIN PA15
//
// Temperature Sensors
//
#define TEMP_0_PIN PC5 // HEATER1 ADC1_IN15
#define TEMP_BED_PIN PC4 // HOT BED ADC1_IN14
//
// Heaters / Fans
//
#define HEATER_0_PIN PA1 // HEATER1
#define HEATER_BED_PIN PB10 // HOT BED
#define FAN0_PIN PA0 // FAN0
//
// SD Card
//
#define SD_DETECT_PIN PA10
#define ONBOARD_SPI_DEVICE 1
#define ONBOARD_SD_CS_PIN PC3 // SDSS
#define ONBOARD_SDIO
#define NO_SD_HOST_DRIVE // This board's SD is only seen by the printer
#ifndef LCD_SERIAL_PORT
#define LCD_SERIAL_PORT 1
#endif
//
// SDIO Pins
//
#define BOARD_SDIO_D0 PC8
#define BOARD_SDIO_D1 PC9
#define BOARD_SDIO_D2 PC10
#define BOARD_SDIO_D3 PC11
#define BOARD_SDIO_CLK PC12
#define BOARD_SDIO_CMD PD2
#define BOARD_SDIO_DET PA10
//
// USART Pins
//
// Display
#define BOARD_USART1_TX_PIN PA2 // LCD
#define BOARD_USART1_RX_PIN PA3
// Host
#define BOARD_USART2_TX_PIN PA8 // USB
#define BOARD_USART2_RX_PIN PA7
// Onboard LED (HIGH = off, LOW = on)
#ifndef LED_BUILTIN
#define LED_BUILTIN PC3
#endif
#define BOARD_NO_NATIVE_USB
//
// SPI3 Pins (LCD)
//
#define SPI_NSS PB15 // SPI3_NSS
#define SPI_SCK PB14 // SPI3_CLK
#define SPI_MISO PB13 // SPI3_MISO
#define SPI_MOSI PB12 // SPI3_MOSI
//
// LCD / Controller
//
/** ------
* PC6 | 1 2 | PC7
* PA2 | 3 4 | PC1
* PB13 5 6 | PB14
* PB15 | 7 8 | PB12
* GND | 9 10 | 5V
* ------
* EXP1
*/
#define EXP1_01_PIN PC6
#define EXP1_02_PIN PC7
#define EXP1_03_PIN PA2
#define EXP1_04_PIN PC1
#define EXP1_05_PIN PB13
#define EXP1_06_PIN PB14
#define EXP1_07_PIN PB15
#define EXP1_08_PIN PB12
#if ENABLED(CR10_STOCKDISPLAY) // LCD used for C2
/** ------
* BEEPER | 1 2 | ENC
* EN1 | 3 4 | KILL
* EN2 5 6 | LCD_D4
* LCD_RS | 7 8 | LCD_EN
* GND | 9 10 | 5V
* ------
*/
#define BEEPER_PIN EXP1_01_PIN
#define BTN_ENC EXP1_02_PIN
#define BTN_EN1 EXP1_03_PIN
#define BTN_EN2 EXP1_05_PIN
#define LCD_PINS_RS EXP1_07_PIN
#define LCD_PINS_EN EXP1_08_PIN
#define LCD_PINS_D4 EXP1_06_PIN
#define KILL_PIN EXP1_04_PIN
#endif