Browse Source

Add PICA shields support (#16891)

ellensp 4 years ago
parent
commit
9f53bbd791
No account linked to committer's email address

+ 2
- 0
Marlin/src/core/boards.h View File

@@ -141,6 +141,8 @@
141 141
 #define BOARD_EINSTART_S              1319  // Einstart retrofit
142 142
 #define BOARD_WANHAO_ONEPLUS          1320  // Wanhao 0ne+ i3 Mini
143 143
 #define BOARD_LEAPFROG_XEED2015       1321  // Leapfrog Xeed 2015
144
+#define BOARD_PICA_REVB               1322  // PICA Shield (original version)
145
+#define BOARD_PICA                    1323  // PICA Shield (rev C or later)
144 146
 
145 147
 //
146 148
 // ATmega1281, ATmega2561

+ 143
- 0
Marlin/src/pins/mega/pins_PICA.h View File

@@ -0,0 +1,143 @@
1
+/**
2
+ * Marlin 3D Printer Firmware
3
+ * Copyright (c) 2020 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
+ * Arduino Mega with PICA pin assignments
25
+ *
26
+ * PICA is Power, Interface, and Control Adapter and is open source hardware.
27
+ * See https://github.com/mjrice/PICA for schematics etc.
28
+ *
29
+ * Applies to PICA, PICA_REVB
30
+ */
31
+
32
+#ifndef BOARD_NAME
33
+  #define BOARD_NAME "PICA"
34
+#endif
35
+
36
+/*
37
+// Note that these are the "pins" that correspond to the analog inputs on the arduino mega.
38
+// These are not the same as the physical pin numbers
39
+  AD0 = 54;   AD1 = 55;   AD2 = 56;   AD3 = 57;   
40
+  AD4 = 58;   AD5 = 59;   AD6 = 60;   AD7 = 61;   
41
+  AD8 = 62;   AD9 = 63;   AD10 = 64;  AD11 = 65;
42
+  AD12 = 66;  AD13 = 67;  AD14 = 68;  AD15 = 69;
43
+*/
44
+
45
+#if !defined(__AVR_ATmega1280__) && !defined(__AVR_ATmega2560__)
46
+  #error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
47
+#endif
48
+
49
+//
50
+// Limit Switches
51
+//
52
+#define X_MIN_PIN          14
53
+#define X_MAX_PIN          15
54
+#define Y_MIN_PIN          16
55
+#define Y_MAX_PIN          17
56
+#define Z_MIN_PIN          23
57
+#define Z_MAX_PIN          22
58
+
59
+//
60
+// Steppers
61
+//
62
+#define X_STEP_PIN         55
63
+#define X_DIR_PIN          54
64
+#define X_ENABLE_PIN       60     
65
+
66
+#define Y_STEP_PIN         57
67
+#define Y_DIR_PIN          56
68
+#define Y_ENABLE_PIN       61
69
+
70
+#define Z_STEP_PIN         59
71
+#define Z_DIR_PIN          58
72
+#define Z_ENABLE_PIN       62
73
+
74
+#define E0_STEP_PIN        67 
75
+#define E0_DIR_PIN         24
76
+#define E0_ENABLE_PIN      26
77
+
78
+//
79
+// Temperature Sensors
80
+//
81
+#define TEMP_0_PIN          9   // Analog Input
82
+#define TEMP_1_PIN         10
83
+#define TEMP_BED_PIN       10
84
+#define TEMP_2_PIN         11
85
+#define TEMP_3_PIN         12
86
+
87
+//
88
+// Heaters / Fans
89
+//
90
+#ifndef HEATER_0_PIN
91
+  #define HEATER_0_PIN     10   // E0
92
+#endif
93
+#ifndef HEATER_1_PIN
94
+  #define HEATER_1_PIN      2   // E1
95
+#endif
96
+#define HEATER_BED_PIN      8   // HEAT-BED
97
+
98
+#ifndef FAN_PIN
99
+  #define FAN_PIN           9
100
+#endif
101
+#ifndef FAN_2_PIN
102
+  #define FAN_2_PIN         7
103
+#endif
104
+
105
+#define SDPOWER_PIN        -1
106
+#define LED_PIN            -1 
107
+#define PS_ON_PIN          -1
108
+#define KILL_PIN           -1
109
+      
110
+#define SSR_PIN             6
111
+
112
+// SPI for Max6675 or Max31855 Thermocouple
113
+#if DISABLED(SDSUPPORT)
114
+  #define MAX6675_SS_PIN   66   // Don't use 53 if using Display/SD card
115
+#else
116
+  #define MAX6675_SS_PIN   66   // Don't use 49 (SD_DETECT_PIN)
117
+#endif
118
+
119
+//
120
+// SD Support
121
+//
122
+#define SD_DETECT_PIN      49 
123
+#define SDSS               53
124
+
125
+//
126
+// LCD / Controller
127
+//
128
+#define BEEPER_PIN         29
129
+
130
+#if HAS_SPI_LCD
131
+  #define LCD_PINS_RS      33
132
+  #define LCD_PINS_ENABLE  30
133
+  #define LCD_PINS_D4      35
134
+  #define LCD_PINS_D5      32
135
+  #define LCD_PINS_D6      37
136
+  #define LCD_PINS_D7      36
137
+
138
+  #define BTN_EN1          47
139
+  #define BTN_EN2          48
140
+  #define BTN_ENC          31
141
+
142
+  #define LCD_SDSS         53
143
+#endif

+ 28
- 0
Marlin/src/pins/mega/pins_PICAOLD.h View File

@@ -0,0 +1,28 @@
1
+/**
2
+ * Marlin 3D Printer Firmware
3
+ * Copyright (c) 2020 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
+#define HEATER_0_PIN        9   // E0
24
+#define HEATER_1_PIN       10   // E1
25
+#define FAN_PIN            11
26
+#define FAN2_PIN           12
27
+
28
+#include "pins_PICA.h"

+ 4
- 0
Marlin/src/pins/pins.h View File

@@ -252,6 +252,10 @@
252 252
   #include "mega/pins_HJC2560C_REV2.h"          // ATmega2560                             env:megaatmega2560
253 253
 #elif MB(LEAPFROG_XEED2015)
254 254
   #include "mega/pins_LEAPFROG_XEED2015.h"      // ATmega2560                             env:megaatmega2560
255
+#elif MB(PICA)
256
+  #include "mega/pins_PICA.h"                   // ATmega2560                             env:megaatmega2560
257
+#elif MB(PICA_REVB)
258
+  #include "mega/pins_PICAOLD.h"                // ATmega2560                             env:megaatmega2560
255 259
 
256 260
 //
257 261
 // ATmega1281, ATmega2561

Loading…
Cancel
Save