Move pins files to subfolders #14573

This commit is contained in:
Scott Lahteine
2019-07-11 02:32:24 -05:00
committed by GitHub
parent e5a5273edb
commit 7de605c5c3
169 changed files with 443 additions and 400 deletions

View File

@ -0,0 +1,165 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
#ifndef STM32F4
#error "Oops! Select an STM32F4 board in 'Tools > Board.'"
#endif
#define ARMED_V1_1
#define BOARD_NAME "Arm'ed"
#define DEFAULT_MACHINE_NAME BOARD_NAME
#define I2C_EEPROM
#define E2END 0xFFF // 4KB
#if HOTENDS > 2 || E_STEPPERS > 2
#error "Arm'ed supports up to 2 hotends / E-steppers."
#endif
//
// Limit Switches
//
#define X_MIN_PIN PE0
#define X_MAX_PIN -1
#define Y_MIN_PIN PE1
#define Y_MAX_PIN -1
#define Z_MIN_PIN PE14
#define Z_MAX_PIN -1
//
// Z Probe (when not Z_MIN_PIN)
//
// #ifndef Z_MIN_PROBE_PIN
// #define Z_MIN_PROBE_PIN PA4
// #endif
//
// Steppers
//
#ifdef ARMED_SWAP_X_E1
#define X_STEP_PIN PE4
#define X_DIR_PIN PE2
#define X_ENABLE_PIN PE3
#define X_CS_PIN PE5
#else
#define X_STEP_PIN PD3
#define X_DIR_PIN PD2
#define X_ENABLE_PIN PD0
#define X_CS_PIN PD1
#endif
#define Y_STEP_PIN PE11
#define Y_DIR_PIN PE10
#define Y_ENABLE_PIN PE13
#define Y_CS_PIN PE12
#define Z_STEP_PIN PD6
#define Z_DIR_PIN PD7
#define Z_ENABLE_PIN PD4
#define Z_CS_PIN PD5
#define E0_STEP_PIN PB5
#define E0_DIR_PIN PB6
#define E0_CS_PIN PB4
#ifdef ARMED_V1_1
#define E0_ENABLE_PIN PC12
#else
#define E0_ENABLE_PIN PB3
#endif
#ifdef ARMED_SWAP_X_E1
#define E1_STEP_PIN PD3
#define E1_DIR_PIN PD2
#define E1_ENABLE_PIN PD0
#define E1_CS_PIN PD1
#else
#define E1_STEP_PIN PE4
#define E1_DIR_PIN PE2
#define E1_ENABLE_PIN PE3
#define E1_CS_PIN PE5
#endif
//
// Temperature Sensors
//
#define TEMP_0_PIN PC0 // Analog Input
#define TEMP_1_PIN PC1 // Analog Input
#define TEMP_BED_PIN PC2 // Analog Input
//
// Heaters / Fans
//
#define HEATER_0_PIN PA1 // PWM pin
#define HEATER_1_PIN PA2 // PWM pin
#define HEATER_BED_PIN PA0 // PWM pin
#define FAN_PIN PC6 // PWM pin, Part cooling fan
#define FAN1_PIN PC7 // PWM pin, Extruder fan
#define FAN2_PIN PC8 // PWM pin, Controller fan
//
// Misc functions
//
#define SDSS PE7
#define LED_PIN PB7 // Heart beat
#define PS_ON_PIN PA10
#define KILL_PIN PA8
#define PWR_LOSS PA4 // Power loss / nAC_FAULT
//
// LCD / Controller
//
#define SD_DETECT_PIN PA15
#define BEEPER_PIN PC9
#define LCD_PINS_RS PE9
#define LCD_PINS_ENABLE PE8
#define LCD_PINS_D4 PB12
#define LCD_PINS_D5 PB13
#define LCD_PINS_D6 PB14
#define LCD_PINS_D7 PB15
#define BTN_EN1 PC4
#define BTN_EN2 PC5
#define BTN_ENC PC3
//
// Filament runout detection
//
#define FIL_RUNOUT_PIN PA3
//
// Extension pins
//
#define EXT0_PIN PB0
#define EXT1_PIN PB1
#define EXT2_PIN PB2
#define EXT3_PIN PD8
#define EXT4_PIN PD9
#define EXT5_PIN PD10
#define EXT6_PIN PD11
#define EXT7_PIN PD12
#define EXT8_PIN PB10
#define EXT9_PIN PB11

View File

@ -0,0 +1,290 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
#if !defined(__STM32F1__) && !defined(__STM32F4__)
#error "Oops! Select an STM32F1/4 board in 'Tools > Board.'"
#endif
/**
* 21017 Victor Perez Marlin for stm32f1 test
*/
#define BOARD_NAME "Beast STM32"
#define DEFAULT_MACHINE_NAME "STM32F103RET6"
// Enable I2C_EEPROM for testing
#define I2C_EEPROM
// Ignore temp readings during development.
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
//
// Steppers
//
#define X_STEP_PIN PE0
#define X_DIR_PIN PE1
#define X_ENABLE_PIN PC0
#define X_MIN_PIN PD5
#define X_MAX_PIN -1
#define Y_STEP_PIN PE2
#define Y_DIR_PIN PE3
#define Y_ENABLE_PIN PC1
#define Y_MIN_PIN PD6
#define Y_MAX_PIN
#define Z_STEP_PIN PE4
#define Z_DIR_PIN PE5
#define Z_ENABLE_PIN PC2
#define Z_MIN_PIN PD7
#define Z_MAX_PIN -1
#define Y2_STEP_PIN -1
#define Y2_DIR_PIN -1
#define Y2_ENABLE_PIN -1
#define Z2_STEP_PIN -1
#define Z2_DIR_PIN -1
#define Z2_ENABLE_PIN -1
#define E0_STEP_PIN PE6
#define E0_DIR_PIN PE7
#define E0_ENABLE_PIN PC3
/**
* TODO: Currently using same Enable pin to all steppers.
*/
#define E1_STEP_PIN PE8
#define E1_DIR_PIN PE9
#define E1_ENABLE_PIN PC4
#define E2_STEP_PIN PE10
#define E2_DIR_PIN PE11
#define E2_ENABLE_PIN PC5
//
// Misc. Functions
//
#define SDPOWER -1
#define SDSS PA15
#define LED_PIN PB2
#define PS_ON_PIN -1
#define KILL_PIN -1
//
// Heaters / Fans
//
#define HEATER_0_PIN PD12 // EXTRUDER 1
#define HEATER_1_PIN PD13
#define HEATER_2_PIN PD14
#define HEATER_BED_PIN PB9 // BED
#define HEATER_BED2_PIN -1 // BED2
#define HEATER_BED3_PIN -1 // BED3
#ifndef FAN_PIN
#define FAN_PIN PB10
#endif
#define FAN_SOFT_PWM
//
// Temperature Sensors
//
#define TEMP_BED_PIN PA0 // Analog Input
#define TEMP_0_PIN PA1 // Analog Input
#define TEMP_1_PIN PA2 // Analog Input
#define TEMP_2_PIN PA3 // Analog Input
//
// LCD Pins
//
#if HAS_SPI_LCD
#if ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
#define LCD_PINS_RS 49 // CS chip select /SS chip slave select
#define LCD_PINS_ENABLE 51 // SID (MOSI)
#define LCD_PINS_D4 52 // SCK (CLK) clock
#elif BOTH(NEWPANEL, PANEL_ONE)
#define LCD_PINS_RS PB8
#define LCD_PINS_ENABLE PD2
#define LCD_PINS_D4 PB12
#define LCD_PINS_D5 PB13
#define LCD_PINS_D6 PB14
#define LCD_PINS_D7 PB15
#else
#define LCD_PINS_RS PB8
#define LCD_PINS_ENABLE PD2
#define LCD_PINS_D4 PB12
#define LCD_PINS_D5 PB13
#define LCD_PINS_D6 PB14
#define LCD_PINS_D7 PB15
#if DISABLED(NEWPANEL)
#define BEEPER_PIN 33
// Buttons are attached to a shift register
// Not wired yet
//#define SHIFT_CLK 38
//#define SHIFT_LD 42
//#define SHIFT_OUT 40
//#define SHIFT_EN 17
#endif
#endif
#if ENABLED(NEWPANEL)
#if ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER)
#define BEEPER_PIN 37
#define BTN_EN1 31
#define BTN_EN2 33
#define BTN_ENC 35
#define SD_DETECT_PIN 49
#define KILL_PIN 41
#if ENABLED(BQ_LCD_SMART_CONTROLLER)
#define LCD_BACKLIGHT_PIN 39
#endif
#elif ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
#define BTN_EN1 64
#define BTN_EN2 59
#define BTN_ENC 63
#define SD_DETECT_PIN 42
#elif ENABLED(LCD_I2C_PANELOLU2)
#define BTN_EN1 47
#define BTN_EN2 43
#define BTN_ENC 32
#define LCD_SDSS 53
#define SD_DETECT_PIN -1
#define KILL_PIN 41
#elif ENABLED(LCD_I2C_VIKI)
#define BTN_EN1 22 // http://files.panucatt.com/datasheets/viki_wiring_diagram.pdf explains 40/42.
#define BTN_EN2 7 // 22/7 are unused on RAMPS_14. 22 is unused and 7 the SERVO0_PIN on RAMPS_13.
#define BTN_ENC -1
#define LCD_SDSS 53
#define SD_DETECT_PIN 49
#elif ANY(VIKI2, miniVIKI)
#define BEEPER_PIN 33
// Pins for DOGM SPI LCD Support
#define DOGLCD_A0 44
#define DOGLCD_CS 45
#define LCD_SCREEN_ROT_180
#define BTN_EN1 22
#define BTN_EN2 7
#define BTN_ENC 39
#define SDSS 53
#define SD_DETECT_PIN -1 // Pin 49 for display sd interface, 72 for easy adapter board
#define KILL_PIN 31
#define STAT_LED_RED_PIN 32
#define STAT_LED_BLUE_PIN 35
#elif ENABLED(ELB_FULL_GRAPHIC_CONTROLLER)
#define BTN_EN1 35
#define BTN_EN2 37
#define BTN_ENC 31
#define SD_DETECT_PIN 49
#define LCD_SDSS 53
#define KILL_PIN 41
#define BEEPER_PIN 23
#define DOGLCD_CS 29
#define DOGLCD_A0 27
#define LCD_BACKLIGHT_PIN 33
#elif ENABLED(MINIPANEL)
#define BEEPER_PIN 42
// Pins for DOGM SPI LCD Support
#define DOGLCD_A0 44
#define DOGLCD_CS 66
#define LCD_BACKLIGHT_PIN 65 // backlight LED on A11/D65
#define SDSS 53
#define KILL_PIN 64
// GLCD features
// Uncomment screen orientation
//#define LCD_SCREEN_ROT_90
//#define LCD_SCREEN_ROT_180
//#define LCD_SCREEN_ROT_270
// The encoder and click button
#define BTN_EN1 40
#define BTN_EN2 63
#define BTN_ENC 59
// not connected to a pin
#define SD_DETECT_PIN 49
#else
// Beeper on AUX-4
#define BEEPER_PIN 33
// buttons are directly attached using AUX-2
#if ENABLED(REPRAPWORLD_KEYPAD)
#define BTN_EN1 64
#define BTN_EN2 59
#define BTN_ENC 63
#define SHIFT_OUT 40
#define SHIFT_CLK 44
#define SHIFT_LD 42
#elif ENABLED(PANEL_ONE)
#define BTN_EN1 59 // AUX2 PIN 3
#define BTN_EN2 63 // AUX2 PIN 4
#define BTN_ENC 49 // AUX3 PIN 7
#else
#define BTN_EN1 37
#define BTN_EN2 35
#define BTN_ENC 31
#endif
#if ENABLED(G3D_PANEL)
#define SD_DETECT_PIN 49
#define KILL_PIN 41
#else
//#define SD_DETECT_PIN -1 // Ramps doesn't use this
#endif
#endif
#endif // NEWPANEL
#endif // HAS_SPI_LCD
#define U_MIN_PIN -1
#define V_MIN_PIN -1
#define W_MIN_PIN -1

View File

@ -0,0 +1,137 @@
/**
* Marlin 3D Printer Firmware
* Copyright (C) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#ifndef TARGET_STM32F1
#error "Oops! Select an STM32F1 board in 'Tools > Board.'"
#endif
#define BOARD_NAME "BIGTREE SKR Mini E3"
// Release PB3/PB4 (E0 STP/DIR) from JTAG pins
#define DISABLE_JTAG
// Ignore temp readings during development.
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
//
// Servos
//
#define SERVO0_PIN PA1
//
// Limit Switches
//
#define X_STOP_PIN PC0
#define Y_STOP_PIN PC1
#define Z_STOP_PIN PC2
//
// Z Probe must be this pins
//
#define Z_MIN_PROBE_PIN PC14
//
// Filament Runout Sensor
//
#ifndef FIL_RUNOUT_PIN
#define FIL_RUNOUT_PIN PC15
#endif
//
// Steppers
//
#define X_ENABLE_PIN PB14
#define X_STEP_PIN PB13
#define X_DIR_PIN PB12
#define Y_ENABLE_PIN PB11
#define Y_STEP_PIN PB10
#define Y_DIR_PIN PB2
#define Z_ENABLE_PIN PB1
#define Z_STEP_PIN PB0
#define Z_DIR_PIN PC5
#define E0_ENABLE_PIN PD2
#define E0_STEP_PIN PB3
#define E0_DIR_PIN PB4
#if HAS_DRIVER(TMC2209)
/**
* TMC2209 stepper drivers
* Hardware serial communication ports.
*/
#define X_HARDWARE_SERIAL Serial4
#define Y_HARDWARE_SERIAL Serial4
#define Z_HARDWARE_SERIAL Serial4
#define E0_HARDWARE_SERIAL Serial4
#endif
//
// Temperature Sensors
//
#define TEMP_0_PIN PA0 // Analog Input
#define TEMP_BED_PIN PC3 // Analog Input
//
// Heaters / Fans
//
#define HEATER_0_PIN PC8 // EXTRUDER
#define HEATER_BED_PIN PC9 // BED
#define FAN_PIN PA8
//
// USB connect control
//
#define USB_CONNECT PC13
#define USB_CONNECT_INVERTING false
#define SD_DETECT_PIN PC4
/**
* _____
* 5V | · · | GND
* (LCD_EN) PB7 | · · | PB8 (LCD_RS)
* (LCD_D4) PB9 | · · | PA10 (BTN_EN2)
* RESET | · · | PA9 (BTN_EN1)
* (BTN_ENC) PB6 | · · | PB5 (BEEPER)
* -----
* EXP1
*/
#if HAS_SPI_LCD
#define BEEPER_PIN PB5
#define BTN_ENC PB6
#if ENABLED(CR10_STOCKDISPLAY)
#define LCD_PINS_RS PB8
#define BTN_EN1 PA9
#define BTN_EN2 PA10
#define LCD_PINS_ENABLE PB7
#define LCD_PINS_D4 PB9
#else
#error "Only CR10_STOCKDISPLAY is currently supported on the BIGTREE_SKR_MINI_E3."
#endif
#endif // HAS_SPI_LCD

View File

@ -0,0 +1,193 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
#ifndef TARGET_STM32F1
#error "Oops! Select an STM32F1 board in 'Tools > Board.'"
#endif
#define BOARD_NAME "BIGTREE SKR Mini 1.1"
//#define DISABLE_DEBUG
#define DISABLE_JTAG
// Ignore temp readings during development.
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
//
// Limit Switches
//
#define X_MIN_PIN PC2
#define X_MAX_PIN PA2
#define Y_MIN_PIN PC1
#define Y_MAX_PIN PA1
#define Z_MIN_PIN PC0
#define Z_MAX_PIN PC3
//
// Steppers
//
#define X_STEP_PIN PC6
#define X_DIR_PIN PC7
#define X_ENABLE_PIN PB15
#define Y_STEP_PIN PB13
#define Y_DIR_PIN PB14
#define Y_ENABLE_PIN PB12
#define Z_STEP_PIN PB10
#define Z_DIR_PIN PB11
#define Z_ENABLE_PIN PB2
#define E0_STEP_PIN PC5
#define E0_DIR_PIN PB0
#define E0_ENABLE_PIN PC4
#if ENABLED(TMC_USE_SW_SPI)
#ifndef TMC_SW_MOSI
#define TMC_SW_SCK PB3
#endif
#ifndef TMC_SW_MISO
#define TMC_SW_MISO PB4
#endif
#ifndef TMC_SW_SCK
#define TMC_SW_MOSI PB5
#endif
#endif
//
// Heaters / Fans
//
#define HEATER_0_PIN PA8
#define FAN_PIN PC8
#define HEATER_BED_PIN PC9
//
// Temperature Sensors
//
#define TEMP_BED_PIN PB1 // Analog Input
#define TEMP_0_PIN PA0 // Analog Input
//
// LCD Pins
//
/**
* _____ _____
* NC | · · | GND 5V | · · | GND
* RESET | · · | PB9 (SD_DETECT) (LCD_D7) PC14 | · · | PC15 (LCD_D6)
* (MOSI) PB5 | · · | PB8 (BTN_EN2) (LCD_D5) PB7 | · · | PC13 (LCD_D4)
* (SD_SS) PA15 | · · | PD2 (BTN_EN1) (LCD_RS) PC12 | · · | PB6 (LCD_EN)
* (SCK) PB3 | · · | PB4 (MISO) (BTN_ENC) PC11 | · · | PC10 (BEEPER)
* ----- -----
* EXP2 EXP1
*/
#if HAS_SPI_LCD
#define BEEPER_PIN PC10
#define BTN_ENC PC11
#define LCD_PINS_RS PC12
#define BTN_EN1 PD2
#define BTN_EN2 PB8
#define LCD_PINS_ENABLE PB6
#if ENABLED(FYSETC_MINI_12864)
#define LCD_BACKLIGHT_PIN -1
#define LCD_RESET_PIN PC13
#define DOGLCD_A0 PC12
#define DOGLCD_CS PB6
#define DOGLCD_SCK PB3
#define DOGLCD_MOSI PB5
#define FORCE_SOFT_SPI // SPI MODE3
#define LED_PIN PB7 // red pwm
//#define LED_PIN PC15 // green
//#define LED_PIN PC14 // blue
//#if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0)
// #ifndef RGB_LED_R_PIN
// #define RGB_LED_R_PIN PB7
// #endif
// #ifndef RGB_LED_G_PIN
// #define RGB_LED_G_PIN PC15
// #endif
// #ifndef RGB_LED_B_PIN
// #define RGB_LED_B_PIN PC14
// #endif
//#elif ENABLED(FYSETC_MINI_12864_2_1)
// #define NEOPIXEL_PIN PB7
//#endif
#else // !FYSETC_MINI_12864
#define LCD_PINS_D4 PC13
#if ENABLED(ULTIPANEL)
#define LCD_PINS_D5 PB7
#define LCD_PINS_D6 PC15
#define LCD_PINS_D7 PC14
#endif
#endif // !FYSETC_MINI_12864
#endif // HAS_SPI_LCD
//
// SD Card
//
// By default the onboard SD is enabled.
// To disable it and use an external SD (connected to LCD)
// enable STM32_SD_LCD.
//#define STM32_SD_LCD
#if ENABLED(STM32_SD_LCD)
#define ENABLE_SPI3
#define SD_DETECT_PIN PB9
#define SCK_PIN PB3
#define MISO_PIN PB4
#define MOSI_PIN PB5
#define SS_PIN PA15
#else
#define SDCARD_CONNECTION ONBOARD
#define ENABLE_SPI1
#define SD_DETECT_PIN PA3
#define SCK_PIN PA5
#define MISO_PIN PA6
#define MOSI_PIN PA7
#define SS_PIN PA4
#endif
#ifndef ST7920_DELAY_1
#define ST7920_DELAY_1 DELAY_NS(125)
#endif
#ifndef ST7920_DELAY_2
#define ST7920_DELAY_2 DELAY_NS(125)
#endif
#ifndef ST7920_DELAY_3
#define ST7920_DELAY_3 DELAY_NS(125)
#endif

View File

@ -0,0 +1,244 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
#ifndef TARGET_STM32F4
#error "Oops! Select an STM32F4 board in 'Tools > Board.'"
#endif
#if HOTENDS > 3 || E_STEPPERS > 3
#error "BIGTREE SKR Pro V1.1 supports up to 3 hotends / E-steppers."
#endif
#define BOARD_NAME "BIGTREE SKR Pro 1.1"
#define SRAM_EEPROM_EMULATION
//
// Servos
//
#define SERVO0_PIN PA1
//
// Limit Switches
//
#define X_MIN_PIN PB10
#define X_MAX_PIN PE15
#define Y_MIN_PIN PE12
#define Y_MAX_PIN PE10
#define Z_MIN_PIN PG8
#define Z_MAX_PIN PG5
//
// Z Probe must be this pins
//
#ifndef Z_MIN_PROBE_PIN
#define Z_MIN_PROBE_PIN PA2
#endif
//
// Steppers
//
#define X_STEP_PIN PE9
#define X_DIR_PIN PF1
#define X_ENABLE_PIN PF2
#ifndef X_CS_PIN
#define X_CS_PIN PA15
#endif
#define Y_STEP_PIN PE11
#define Y_DIR_PIN PE8
#define Y_ENABLE_PIN PD7
#ifndef Y_CS_PIN
#define Y_CS_PIN PB8
#endif
#define Z_STEP_PIN PE13
#define Z_DIR_PIN PC2
#define Z_ENABLE_PIN PC0
#ifndef Z_CS_PIN
#define Z_CS_PIN PB9
#endif
#define E0_STEP_PIN PE14
#define E0_DIR_PIN PA0
#define E0_ENABLE_PIN PC3
#ifndef E0_CS_PIN
#define E0_CS_PIN PB3
#endif
#define E1_STEP_PIN PD15
#define E1_DIR_PIN PE7
#define E1_ENABLE_PIN PA3
#ifndef E1_CS_PIN
#define E1_CS_PIN PG15
#endif
#define E2_STEP_PIN PD13
#define E2_DIR_PIN PG9
#define E2_ENABLE_PIN PF0
#ifndef E2_CS_PIN
#define E2_CS_PIN PG12
#endif
//
// Software SPI pins for TMC2130 stepper drivers
//
#if ENABLED(TMC_USE_SW_SPI)
#ifndef TMC_SW_MOSI
#define TMC_SW_MOSI PC12
#endif
#ifndef TMC_SW_MISO
#define TMC_SW_MISO PC11
#endif
#ifndef TMC_SW_SCK
#define TMC_SW_SCK PC10
#endif
#endif
#if HAS_TMC220x
/**
* TMC2208/TMC2209 stepper drivers
*
* Hardware serial communication ports.
* If undefined software serial is used according to the pins below
*/
//#define X_HARDWARE_SERIAL Serial
//#define X2_HARDWARE_SERIAL Serial1
//#define Y_HARDWARE_SERIAL Serial1
//#define Y2_HARDWARE_SERIAL Serial1
//#define Z_HARDWARE_SERIAL Serial1
//#define Z2_HARDWARE_SERIAL Serial1
//#define E0_HARDWARE_SERIAL Serial1
//#define E1_HARDWARE_SERIAL Serial1
//#define E2_HARDWARE_SERIAL Serial1
//#define E3_HARDWARE_SERIAL Serial1
//#define E4_HARDWARE_SERIAL Serial1
//
// Software serial
//
#define X_SERIAL_TX_PIN PC13
#define X_SERIAL_RX_PIN PC13
#define Y_SERIAL_TX_PIN PE3
#define Y_SERIAL_RX_PIN PE3
#define Z_SERIAL_TX_PIN PE1
#define Z_SERIAL_RX_PIN PE1
#define E0_SERIAL_TX_PIN PD4
#define E0_SERIAL_RX_PIN PD4
#define E1_SERIAL_TX_PIN PD1
#define E1_SERIAL_RX_PIN PD1
#define E2_SERIAL_TX_PIN PD6
#define E2_SERIAL_RX_PIN PD6
#endif
//
// Temperature Sensors
//
#define TEMP_0_PIN PF4 // T1 <-> E0
#define TEMP_1_PIN PF5 // T2 <-> E1
#define TEMP_2_PIN PF6 // T3 <-> E2
#define TEMP_BED_PIN PF3 // T0 <-> Bed
//
// Heaters / Fans
//
#define HEATER_0_PIN PB1 // Heater0
#define HEATER_1_PIN PD14 // Heater1
#define HEATER_2_PIN PB0 // Heater1
#define HEATER_BED_PIN PD12 // Hotbed
#define FAN_PIN PC8 // Fan0
#define FAN1_PIN PE5 // Fan1
#define FAN2_PIN PE6 // Fan2
//
// Misc. Functions
//
#define SDSS PB12
/**
* _____ _____
* NC | · · | GND 5V | · · | GND
* RESET | · · | PF12(SD_DETECT) (LCD_D7) PG7 | · · | PG6 (LCD_D6)
* (MOSI)PB15 | · · | PF11(BTN_EN2) (LCD_D5) PG3 | · · | PG2 (LCD_D4)
* (SD_SS)PB12 | · · | PG10(BTN_EN1) (LCD_RS) PD10 | · · | PD11 (LCD_EN)
* (SCK)PB13 | · · | PB14(MISO) (BTN_ENC) PA8 | · · | PG4 (BEEPER)
*  ̄ ̄  ̄ ̄
* EXP2 EXP1
*/
//
// LCDs and Controllers
//
#if HAS_SPI_LCD
#define BEEPER_PIN PG4
#define BTN_ENC PA8
#if ENABLED(CR10_STOCKDISPLAY)
#define LCD_PINS_RS PG6
#define BTN_EN1 PD11
#define BTN_EN2 PG2
#define LCD_PINS_ENABLE PG7
#define LCD_PINS_D4 PG3
#else
#define LCD_PINS_RS PD10
#define BTN_EN1 PG10
#define BTN_EN2 PF11
#define SD_DETECT_PIN PF12
#define LCD_SDSS PB12
#define LCD_PINS_ENABLE PD11
#define LCD_PINS_D4 PG2
#if ENABLED(ULTIPANEL)
#define LCD_PINS_D5 PG3
#define LCD_PINS_D6 PG6
#define LCD_PINS_D7 PG7
#endif
#endif
// Alter timing for graphical display
#if HAS_GRAPHICAL_LCD
#ifndef ST7920_DELAY_1
#define ST7920_DELAY_1 DELAY_NS(96)
#endif
#ifndef ST7920_DELAY_2
#define ST7920_DELAY_2 DELAY_NS(48)
#endif
#ifndef ST7920_DELAY_3
#define ST7920_DELAY_3 DELAY_NS(600)
#endif
#endif
#endif // HAS_SPI_LCD

View File

@ -0,0 +1,135 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
/**
* STM32F407VET6 with RAMPS-like shield
* 'Black' STM32F407VET6 board - http://wiki.stm32duino.com/index.php?title=STM32F407
* Shield - https://github.com/jmz52/Hardware
*/
#pragma once
#if !defined(STM32F4) && !defined(STM32F4xx)
#error "Oops! Select an STM32F4 board in 'Tools > Board.'"
#endif
#ifndef BOARD_NAME
#define BOARD_NAME "Black STM32F4VET6"
#endif
#define DEFAULT_MACHINE_NAME "STM32F407VET6"
//#define I2C_EEPROM
//#define E2END 0x1FFF // 8KB
#define SRAM_EEPROM_EMULATION
#if HOTENDS > 2 || E_STEPPERS > 2
#error "Black STM32F4VET6 supports up to 2 hotends / E-steppers."
#endif
//
// Servos
//
#define SERVO0_PIN PC6
#define SERVO1_PIN PC7
//
// Limit Switches
//
#define X_MIN_PIN PC13
#define X_MAX_PIN PA15
#define Y_MIN_PIN PA5
#define Y_MAX_PIN PD12
#define Z_MIN_PIN PD14
#define Z_MAX_PIN PD15
//
// Steppers
//
#define X_STEP_PIN PC4
#define X_DIR_PIN PA4
#define X_ENABLE_PIN PE7
#define Y_STEP_PIN PE5
#define Y_DIR_PIN PE2
#define Y_ENABLE_PIN PE6
#define Z_STEP_PIN PD5
#define Z_DIR_PIN PD3
#define Z_ENABLE_PIN PD6
#define E0_STEP_PIN PD7
#define E0_DIR_PIN PD0
#define E0_ENABLE_PIN PB9
#define E1_STEP_PIN PE0
#define E1_DIR_PIN PE1
#define E1_ENABLE_PIN PB8
//
// Temperature Sensors
//
#define TEMP_0_PIN PC0 // T0
#define TEMP_1_PIN PC1 // T1
#define TEMP_BED_PIN PC2 // TB
#define TEMP_CHAMBER_PIN PC3 // TC
//
// Heaters / Fans
//
#define HEATER_0_PIN PA2 // Heater0
#define HEATER_1_PIN PA3 // Heater1
#define HEATER_BED_PIN PA1 // Hotbed
#define FAN_PIN PE9 // Fan0
#define FAN1_PIN PE11 // Fan1
#define FAN2_PIN PE13 // Fan2
#define FAN3_PIN PE14 // Fan3
//
// Misc. Functions
//
#define SDSS PB12
#define LED_PIN PA6
//#define LED_PIN PA7
#define KILL_PIN PB1
//
// LCD / Controller
//
#define SD_DETECT_PIN PC5
//#define SD_DETECT_PIN PA8 // SDIO SD_DETECT_PIN, external SDIO card reader only
#define BEEPER_PIN PD10
#define LCD_PINS_RS PE15
#define LCD_PINS_ENABLE PD8
#define LCD_PINS_D4 PE10
#define LCD_PINS_D5 PE12
#define LCD_PINS_D6 PD1
#define LCD_PINS_D7 PE8
#define BTN_ENC PD9
#define BTN_EN1 PD4
#define BTN_EN2 PD13
#define DOGLCD_CS LCD_PINS_D5
#define DOGLCD_A0 LCD_PINS_D6

View File

@ -0,0 +1,288 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
#if !defined(__STM32F1__) && !defined(__STM32F4__)
#error "Oops! Select an STM32F1/4 board in 'Tools > Board.'"
#endif
/**
* 2017 Victor Perez Marlin for stm32f1 test
*/
#define BOARD_NAME "Chitu3D"
#define DEFAULT_MACHINE_NAME "STM32F103RET6"
// Enable I2C_EEPROM for testing
//#define I2C_EEPROM
// Ignore temp readings during development.
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
//
// Steppers
//
#define X_STEP_PIN PE5
#define X_DIR_PIN PE6
#define X_ENABLE_PIN PC13
#define X_MIN_PIN PG10
#define X_MAX_PIN -1
#define Y_STEP_PIN PE2
#define Y_DIR_PIN PE3
#define Y_ENABLE_PIN PE4
#define Y_MIN_PIN PA12
#define Y_MAX_PIN
#define Z_STEP_PIN PB9
#define Z_DIR_PIN PE0
#define Z_ENABLE_PIN PE1
#define Z_MIN_PIN PA14
#define Z_MAX_PIN -1
#define Y2_STEP_PIN -1
#define Y2_DIR_PIN -1
#define Y2_ENABLE_PIN -1
#define Z2_STEP_PIN -1
#define Z2_DIR_PIN -1
#define Z2_ENABLE_PIN -1
#define E0_STEP_PIN PB4
#define E0_DIR_PIN PB5
#define E0_ENABLE_PIN PB8
#define E1_STEP_PIN -1
#define E1_DIR_PIN -1
#define E1_ENABLE_PIN -1
#define E2_STEP_PIN -1
#define E2_DIR_PIN -1
#define E2_ENABLE_PIN -1
//
// Misc. Functions
//
#define SDPOWER -1
#define SDSS -1
#define LED_PIN -1
#define CASE_LIGHT_PIN 8
#define PS_ON_PIN -1
#define KILL_PIN PD6 // LED strip 24v
//
// Heaters / Fans
//
#define HEATER_0_PIN PD12 // HOT-END
#define HEATER_1_PIN -1
#define HEATER_2_PIN -1
#define HEATER_BED_PIN PG11 // HOT-BED
#define HEATER_BED2_PIN -1 // BED2
#define HEATER_BED3_PIN -1 // BED3
#ifndef FAN_PIN
#define FAN_PIN PG14 // MAIN BOARD FAN
#endif
#define FAN_SOFT_PWM
//
// Temperature Sensors
//
#define TEMP_BED_PIN PA0 // Analog Input
#define TEMP_0_PIN PA1 // Analog Input
#define TEMP_1_PIN -1 // Analog Input
#define TEMP_2_PIN -1 // Analog Input
//
// LCD Pins
//
#if HAS_SPI_LCD
#if ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
#define LCD_PINS_RS 49 // CS chip select /SS chip slave select
#define LCD_PINS_ENABLE 51 // SID (MOSI)
#define LCD_PINS_D4 52 // SCK (CLK) clock
#elif BOTH(NEWPANEL, PANEL_ONE)
#define LCD_PINS_RS PB8
#define LCD_PINS_ENABLE PD2
#define LCD_PINS_D4 PB12
#define LCD_PINS_D5 PB13
#define LCD_PINS_D6 PB14
#define LCD_PINS_D7 PB15
#else
#define LCD_PINS_RS PB8
#define LCD_PINS_ENABLE PD2
#define LCD_PINS_D4 PB12
#define LCD_PINS_D5 PB13
#define LCD_PINS_D6 PB14
#define LCD_PINS_D7 PB15
#if DISABLED(NEWPANEL)
#define BEEPER_PIN 33
// Buttons are attached to a shift register
// Not wired yet
//#define SHIFT_CLK 38
//#define SHIFT_LD 42
//#define SHIFT_OUT 40
//#define SHIFT_EN 17
#endif
#endif
#if ENABLED(NEWPANEL)
#if ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER)
#define BEEPER_PIN 37
#define BTN_EN1 31
#define BTN_EN2 33
#define BTN_ENC 35
#define SD_DETECT_PIN 49
#define KILL_PIN 41
#if ENABLED(BQ_LCD_SMART_CONTROLLER)
#define LCD_BACKLIGHT_PIN 39
#endif
#elif ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
#define BTN_EN1 64
#define BTN_EN2 59
#define BTN_ENC 63
#define SD_DETECT_PIN 42
#elif ENABLED(LCD_I2C_PANELOLU2)
#define BTN_EN1 47
#define BTN_EN2 43
#define BTN_ENC 32
#define LCD_SDSS 53
#define SD_DETECT_PIN -1
#define KILL_PIN 41
#elif ENABLED(LCD_I2C_VIKI)
#define BTN_EN1 22 // http://files.panucatt.com/datasheets/viki_wiring_diagram.pdf explains 40/42.
#define BTN_EN2 7 // 22/7 are unused on RAMPS_14. 22 is unused and 7 the SERVO0_PIN on RAMPS_13.
#define BTN_ENC -1
#define LCD_SDSS 53
#define SD_DETECT_PIN 49
#elif ANY(VIKI2, miniVIKI)
#define BEEPER_PIN 33
// Pins for DOGM SPI LCD Support
#define DOGLCD_A0 44
#define DOGLCD_CS 45
#define LCD_SCREEN_ROT_180
#define BTN_EN1 22
#define BTN_EN2 7
#define BTN_ENC 39
#define SDSS 53
#define SD_DETECT_PIN -1 // Pin 49 for display sd interface, 72 for easy adapter board
#define KILL_PIN 31
#define STAT_LED_RED_PIN 32
#define STAT_LED_BLUE_PIN 35
#elif ENABLED(ELB_FULL_GRAPHIC_CONTROLLER)
#define BTN_EN1 35
#define BTN_EN2 37
#define BTN_ENC 31
#define SD_DETECT_PIN 49
#define LCD_SDSS 53
#define KILL_PIN 41
#define BEEPER_PIN 23
#define DOGLCD_CS 29
#define DOGLCD_A0 27
#define LCD_BACKLIGHT_PIN 33
#elif ENABLED(MINIPANEL)
#define BEEPER_PIN 42
// Pins for DOGM SPI LCD Support
#define DOGLCD_A0 44
#define DOGLCD_CS 66
#define LCD_BACKLIGHT_PIN 65 // backlight LED on A11/D65
#define SDSS 53
#define KILL_PIN 64
// GLCD features
// Uncomment screen orientation
//#define LCD_SCREEN_ROT_90
//#define LCD_SCREEN_ROT_180
//#define LCD_SCREEN_ROT_270
// The encoder and click button
#define BTN_EN1 40
#define BTN_EN2 63
#define BTN_ENC 59
// not connected to a pin
#define SD_DETECT_PIN 49
#else
// Beeper on AUX-4
#define BEEPER_PIN 33
// buttons are directly attached using AUX-2
#if ENABLED(REPRAPWORLD_KEYPAD)
#define BTN_EN1 64
#define BTN_EN2 59
#define BTN_ENC 63
#define SHIFT_OUT 40
#define SHIFT_CLK 44
#define SHIFT_LD 42
#elif ENABLED(PANEL_ONE)
#define BTN_EN1 59 // AUX2 PIN 3
#define BTN_EN2 63 // AUX2 PIN 4
#define BTN_ENC 49 // AUX3 PIN 7
#else
#define BTN_EN1 37
#define BTN_EN2 35
#define BTN_ENC 31
#endif
#if ENABLED(G3D_PANEL)
#define SD_DETECT_PIN 49
#define KILL_PIN 41
#else
//#define SD_DETECT_PIN -1 // Ramps doesn't use this
#endif
#endif
#endif // NEWPANEL
#endif // HAS_SPI_LCD
#define U_MIN_PIN -1
#define V_MIN_PIN -1
#define W_MIN_PIN -1

View File

@ -0,0 +1,179 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
#ifndef __STM32F1__
#error "Oops! Select an STM32F1 board in 'Tools > Board.'"
#endif
#define BOARD_NAME "FYSETC AIO II"
#define BOARD_WEBSITE_URL "https://fysetc.com"
#define pins_v2_20190128 // geo-f:add for new pins define
// Ignore temp readings during development.
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
//
// Limit Switches
//
#define X_STOP_PIN PA1
#define Y_STOP_PIN PA0
#define Z_STOP_PIN PB14
//
// Filament runout
//
#ifdef pins_v2_20190128
#define FIL_RUNOUT_PIN PB15
#else
#define FIL_RUNOUT_PIN PB5
#endif
//
// Steppers
//
#define X_STEP_PIN PB8
#define X_DIR_PIN PB9
#define X_ENABLE_PIN PA8
#define Y_STEP_PIN PB2
#ifdef pins_v2_20190128
#define Y_DIR_PIN PB3
#else
#define Y_DIR_PIN PB0
#endif
#define Y_ENABLE_PIN PB1
#define Z_STEP_PIN PC0
#define Z_DIR_PIN PC1
#define Z_ENABLE_PIN PC2
#define E0_STEP_PIN PC15
#define E0_DIR_PIN PC14
#define E0_ENABLE_PIN PC13
//
// Stepper current PWM
//
// X:PA2 Y:PA3 Z:PB12 E:PB13 // changed for test
#define MOTOR_CURRENT_PWM_XY_PIN PA3
#define MOTOR_CURRENT_PWM_Z_PIN PA2 // PB12
//#define MOTOR_CURRENT_PWM_XY_PIN PB6
//#define MOTOR_CURRENT_PWM_Z_PIN PB7 // PB12
#define MOTOR_CURRENT_PWM_E_PIN -1 // PB13
// Motor current PWM conversion, PWM value = MotorCurrentSetting * 255 / range
#ifndef MOTOR_CURRENT_PWM_RANGE
#define MOTOR_CURRENT_PWM_RANGE 1500 // geo-f:old 2000
#endif
#define DEFAULT_PWM_MOTOR_CURRENT {500, 500, 400} // geo-f:old 1300 1300 1250
// 采用 SDIO PCB从左到右数
// 1:PC10 - SDIO_D2
// 2:PC11 - SDIO_D3
// 3:PD2 - SDIO_CMD
// 4:VCC
// 5:PC12 - SDIO_CK
// 6:VDD
// 7:PC8 - SDIO_D0
// 8:PC9 - SDIO_D1
// 9:PA15 - SD_DETECT_PIN
//
// Heaters / Fans
//
#define HEATER_0_PIN PC7
#define HEATER_BED_PIN PC6
#ifndef FAN_PIN
#define FAN_PIN PC8
#endif
//
// Temperature Sensors
//
#define TEMP_BED_PIN PC5 // Analog Input
#define TEMP_0_PIN PC4 // Analog Input
//
// Misc. Functions
//
#define SDSS PA4
//
// LCD Pins
//
#if HAS_SPI_LCD
#define BEEPER_PIN PC9
#if HAS_GRAPHICAL_LCD
#define DOGLCD_A0 PA15
#ifdef pins_v2_20190128
#define DOGLCD_CS PB5
#else
#define DOGLCD_CS PB7
#endif
//#define LCD_CONTRAST 190
//#define LCD_SCREEN_ROT_90
//#define LCD_SCREEN_ROT_180
//#define LCD_SCREEN_ROT_270
#endif
// not connected to a pin
#define SD_DETECT_PIN PC3
#if ENABLED(NEWPANEL)
// The encoder and click button
#define BTN_EN1 PC10
#define BTN_EN2 PC11
#define BTN_ENC PC12
#endif
#ifdef pins_v2_20190128
#define LCD_RESET_PIN PB4
#ifndef RGB_LED_R_PIN
#define RGB_LED_R_PIN PB0
#endif
#ifndef RGB_LED_G_PIN
#define RGB_LED_G_PIN PB6
#endif
#ifndef RGB_LED_B_PIN
#define RGB_LED_B_PIN PB7
#endif
#else
#define LCD_RESET_PIN PB6
#ifndef RGB_LED_R_PIN
#define RGB_LED_R_PIN PB3
#endif
#ifndef RGB_LED_G_PIN
#define RGB_LED_G_PIN PB4
#endif
#ifndef RGB_LED_B_PIN
#define RGB_LED_B_PIN PB5
#endif
#endif
#endif

View File

@ -0,0 +1,143 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
#ifndef __STM32F1__
#error "Oops! Select an STM32F1 board in 'Tools > Board.'"
#endif
#define DEFAULT_MACHINE_NAME "3D Printer"
#define BOARD_NAME "FYSETC Cheetah"
#define BOARD_WEBSITE_URL "https://fysetc.com"
// Ignore temp readings during development.
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
//
// Servos
//
#define SERVO0_PIN PA0
//
// Limit Switches
//
#define X_STOP_PIN PA1
#define Y_STOP_PIN PB4
#define Z_STOP_PIN PA15
//
// Filament runout
//
#define FIL_RUNOUT_PIN PB5
//
// Steppers
//
#define X_STEP_PIN PB8
#define X_DIR_PIN PB9
#define X_ENABLE_PIN PA8
#define Y_STEP_PIN PB2
#define Y_DIR_PIN PB3
#define Y_ENABLE_PIN PB1
#define Z_STEP_PIN PC0
#define Z_DIR_PIN PC1
#define Z_ENABLE_PIN PC2
#define E0_STEP_PIN PC15
#define E0_DIR_PIN PC14
#define E0_ENABLE_PIN PC13
#define X_HARDWARE_SERIAL MSerial2 // Port correct?
#define Y_HARDWARE_SERIAL MSerial2
#define Z_HARDWARE_SERIAL MSerial2
#define E0_HARDWARE_SERIAL MSerial2
//
// Heaters / Fans
//
#define HEATER_0_PIN PC6
#define HEATER_BED_PIN PC7
#ifndef FAN_PIN
#define FAN_PIN PC8
#endif
//
// Temperature Sensors
//
#define TEMP_BED_PIN PC5 // Analog Input
#define TEMP_0_PIN PC4 // Analog Input
//
// Misc. Functions
//
#define SDSS PA4
//
// LCD Pins
//
#if HAS_SPI_LCD
#define BEEPER_PIN PC9
#if HAS_GRAPHICAL_LCD
#define DOGLCD_A0 PB14
#define DOGLCD_CS PB12
#define DOGLCD_SCK PB13
#define DOGLCD_MOSI PB15
//#define LCD_SCREEN_ROT_90
//#define LCD_SCREEN_ROT_180
//#define LCD_SCREEN_ROT_270
#if ENABLED(FYSETC_MINI_12864) || ENABLED(U8GLIB_ST7920)
#define FORCE_SOFT_SPI
#endif
#endif
#define LCD_PINS_RS PB12 // CS -- SOFT SPI for ENDER3 LCD
#define LCD_PINS_D4 PB13 // SCLK
#define LCD_PINS_ENABLE PB15 // DATA MOSI
// not connected to a pin
#define SD_DETECT_PIN PC3
#ifndef RGB_LED_R_PIN
#define RGB_LED_R_PIN PB0
#endif
#ifndef RGB_LED_G_PIN
#define RGB_LED_G_PIN PB7
#endif
#ifndef RGB_LED_B_PIN
#define RGB_LED_B_PIN PB6
#endif
//#define LCD_CONTRAST 190
#if ENABLED(NEWPANEL)
#define BTN_EN1 PC11
#define BTN_EN2 PC10
#define BTN_ENC PC12
#endif
#endif

View File

@ -0,0 +1,234 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
/**
* 24 May 2018 - @chepo for STM32F103VET6
* Schematic: https://github.com/chepo92/Smartto/blob/master/circuit_diagram/Rostock301/Hardware_GTM32_PRO_VB.pdf
*/
#ifndef __STM32F1__
#error "Oops! Select an STM32F1 board in 'Tools > Board.'"
#endif
#define BOARD_NAME "GTM32 Pro VB"
#define DEFAULT_MACHINE_NAME "STM32F103VET6"
//#define DISABLE_DEBUG
//
// It is required to disable JTAG function because its pins are
// used as GPIO to drive the Y axis stepper.
// DO NOT ENABLE!
//
#define DISABLE_JTAG
//
// If you don't need the SWDIO functionality (any more), you may
// disable SWD here to regain PA13/PA14 pins for other use.
//
//#define DISABLE_JTAGSWD
// Ignore temp readings during development.
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
// Enable EEPROM Emulation for this board as it doesn't have EEPROM
#define FLASH_EEPROM_EMULATION
#define E2END 0xFFF // 4KB
//
// Limit Switches
//
#define X_MIN_PIN PE5 // ENDSTOPS 15,17
#define X_MAX_PIN PE4 // ENDSTOPS 16,18
#define Y_MIN_PIN PE3 // ENDSTOPS 9,11
#define Y_MAX_PIN PE2 // ENDSTOPS 10,12
#define Z_MIN_PIN PE1 // ENDSTOPS 3,5
#define Z_MAX_PIN PE0 // ENDSTOPS 4,6
//
// Steppers
//
#define X_STEP_PIN PC6
#define X_DIR_PIN PD13
#define X_ENABLE_PIN PA8
#define Y_STEP_PIN PA12
#define Y_DIR_PIN PA11
#define Y_ENABLE_PIN PA15
#define Z_STEP_PIN PD6
#define Z_DIR_PIN PD3
#define Z_ENABLE_PIN PB3
// Extruder stepper pins
// NOTE: Numbering here is made according to EXT connector numbers,
// the FANx_PWM line numbering in the schematics is reverse.
// That is, E0_*_PIN are the E2_* lines connected to E2_A1 step
// stick that drives the EXT0 output on the board.
//
#define E0_STEP_PIN PC14
#define E0_DIR_PIN PC13
#define E0_ENABLE_PIN PC15
#define E1_STEP_PIN PA0
#define E1_DIR_PIN PB6
#define E1_ENABLE_PIN PA1
#define E2_STEP_PIN PB2
#define E2_DIR_PIN PB11
#define E2_ENABLE_PIN PC4
//
// Heaters / Fans
//
#define HEATER_0_PIN PB0 // EXT0 port
#define HEATER_1_PIN PB5 // EXT1 port
#define HEATER_2_PIN PB4 // EXT2 port
#define HEATER_BED_PIN PB1 // CON2X3 hotbed port
//
// These are FAN PWM pins on EXT0..EXT2 connectors.
//
//#define FAN_PIN PB9 // EXT0 port
#define ORIG_E0_AUTO_FAN_PIN PB9 // EXT0 port, used as main extruder fan
#define FAN1_PIN PB8 // EXT1 port
#define FAN2_PIN PB7 // EXT2 port
//
// Temperature Sensors
//
#define TEMP_0_PIN PC2 // EXT0 port
#define TEMP_1_PIN PC1 // EXT1 port
#define TEMP_2_PIN PC0 // EXT2 port
#define TEMP_BED_PIN PC3 // CON2X3 hotbed port
//
// Misc. Functions
//
#define LED_PWM PD12 // External LED, pin 2 on LED labeled connector
//
// LCD / Controller
//
#if HAS_SPI_LCD
#if ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER)
//
// LCD display on J2 FFC40
// Geeetech's LCD2004A Control Panel is very much like
// RepRapDiscount Smart Controller, but adds an FFC40 connector
//
#define LCD_PINS_RS PE6 // CS chip select /SS chip slave select
#define LCD_PINS_ENABLE PE14 // SID (MOSI)
#define LCD_PINS_D4 PD8 // SCK (CLK) clock
#define LCD_PINS_D5 PD9
#define LCD_PINS_D6 PD10
#define LCD_PINS_D7 PE15
#else
//
// Serial LCDs can be implemented in ExtUI
//
//#define LCD_UART_TX PD8
//#define LCD_UART_RX PD9
#endif
#ifndef ST7920_DELAY_1
#define ST7920_DELAY_1 DELAY_NS(96)
#endif
#ifndef ST7920_DELAY_2
#define ST7920_DELAY_2 DELAY_NS(48)
#endif
#ifndef ST7920_DELAY_3
#define ST7920_DELAY_3 DELAY_NS(715)
#endif
#endif // HAS_SPI_LCD
#if ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER)
//
// Geeetech's LCD2004A Control Panel is very much like
// RepRapDiscount Smart Controller, but adds an FFC40 connector
// connected with a flat wire to J2 connector on the board.
//
#define BTN_EN1 PE8
#define BTN_EN2 PE9
#define BTN_ENC PE13
#define GTM32_PRO_VB_USE_LCD_BEEPER
#define GTM32_PRO_VB_USE_EXT_SDCARD
#endif
//
// Beeper
//
#ifdef GTM32_PRO_VB_USE_LCD_BEEPER
// This is pin 32 on J2 FFC40 and pin, goes to the beeper
// on Geeetech's version of RepRapDiscount Smart Controller
// (e.g. on Rostock 301)
#define BEEPER_PIN PE12
#else
// This is the beeper on the board itself
#define BEEPER_PIN PB10
#endif
/**
* The on-board TF_CARD_SOCKET microSD card socket has no SD Detect pin wired.
*
* The FFC10 (SD_CARD) connector has the same pins as those routed to the FFC40 (J2)
* connector, which usually go to the SD Card slot on the Geeetech version of the
* RepRapDiscount Smart Controller. Both connectors have the card detect signal.
*
* The on-board SD card and the external card (on either SD_CARD or J2) are two
* separate devices and can work simultaneously. Unfortunately, Marlin only supports
* a single SPI Flash device (as of 2019-07-05) so only one is enabled here.
*/
#if ENABLED(GTM32_PRO_VB_USE_EXT_SDCARD)
//
// SD Card on RepRapDiscount Smart Controller (J2) or on SD_CARD connector
//
#define SS_PIN PC11
#define SCK_PIN PC12
#define MOSI_PIN PD2
#define MISO_PIN PC8
#define SD_DETECT_PIN PC7
#else
//
// Use the on-board card socket labeled TF_CARD_SOCKET
//
#define SS_PIN PA4
#define SCK_PIN PA5
#define MOSI_PIN PA7
#define MISO_PIN PA6
#define SD_DETECT_PIN -1 // Card detect is not connected
#endif
#define SDSS SS_PIN
//
// ESP WiFi can be soldered to J9 connector which is wired to USART2.
// Must define WIFISUPPORT in Configuration.h for the printer.
//
#define ESP_WIFI_MODULE_COM 2
#define ESP_WIFI_MODULE_BAUDRATE 115200
#define ESP_WIFI_MODULE_RESET_PIN -1

View File

@ -0,0 +1,126 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
/**
* 2017 Victor Perez Marlin for stm32f1 test
* 2018 Modified by Pablo Crespo for Morpheus Board (https://github.com/pscrespo/Morpheus-STM32)
* 2019 Modified by Roberto Mariani & Samuel Pinches for JGAurora A5S & A1 Board.
*/
/**
* JGAurora A5S A1 Board pin assignments
*/
#ifndef __STM32F1__
#error "Oops! Select an STM32F1 board in 'Tools > Board.'"
#endif
#define BOARD_NAME "JGAurora A5S A1 board"
// #define STM32_XL_DENSITY // required, but should be set by platformio flags, not here! (why? not sure.)
//#define MCU_STM32F103ZE // not yet required
// #define I2C_EEPROM // AT24C64
// #define E2END 0x7FFF // 64KB
// Enable EEPROM Emulation for this board
//#define FLASH_EEPROM_EMULATION 1
//#define E2END 0xFFF // 4KB
//#define E2END uint32(EEPROM_START_ADDRESS + (EEPROM_PAGE_SIZE * 2) - 1)
//#define EEPROM_CHITCHAT
//#define DEBUG_EEPROM_READWRITE
//
// Limit Switches
//
#define X_STOP_PIN PC6
#define Y_STOP_PIN PG8
#define Z_STOP_PIN PG7
//
// Steppers
//
#define X_STEP_PIN PD6
#define X_DIR_PIN PD3
#define X_ENABLE_PIN PG9
#define Y_STEP_PIN PG12
#define Y_DIR_PIN PG11
#define Y_ENABLE_PIN PG13
#define Z_STEP_PIN PG15
#define Z_DIR_PIN PG14
#define Z_ENABLE_PIN PB8
#define E0_STEP_PIN PE2
#define E0_DIR_PIN PB9
#define E0_ENABLE_PIN PE3
#define E1_STEP_PIN PE5
#define E1_DIR_PIN PE4
#define E1_ENABLE_PIN PE6
//
// Temperature Sensors
//
#define TEMP_0_PIN PC2
#define TEMP_BED_PIN PC1
//
// Heaters / Fans
//
#define HEATER_0_PIN PA2
#define HEATER_BED_PIN PA3
#define FAN_PIN PA1
#define PS_ON_PIN PA0
#define FIL_RUNOUT_PIN PC7
//
// LCD
//
#define LCD_BACKLIGHT_PIN PF11
#define FSMC_CS_PIN PD7
#define FSMC_RS_PIN PG0
//
// SD Card
//
#define SD_DETECT_PIN PF10
//
// Misc.
//
#define BEEPER_PIN PC3 // use PB7 to shut up if desired
#define LED_PIN PC13
// Touch support
#define BTN_ENC PA11 // Real pin is needed to enable encoder's push button functionality used by touch screen. PA11 gives stable value.
#define TOUCH_CS PA4
//#define TOUCH_INTERRUPT PC4 // Not yet implemented
#define NO_PAUSE_AFTER_PRINT

View File

@ -0,0 +1,98 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
/**
* MALYAN M200 pin assignments
*/
#if !defined(__STM32F1__) && !defined(STM32F1xx) && !defined(STM32F0xx)
#error "Oops! You must be compiling for STM32."
#endif
#define BOARD_NAME "Malyan M200"
// Enable EEPROM Emulation for this board
// This setting should probably be in configuration.h
// but it is literally the only board which uses it.
#define FLASH_EEPROM_EMULATION
#define SDSS SS_PIN
// Based on PWM timer usage, we have to use these timers and soft PWM for the fans
// On STM32F103:
// PB3, PB6, PB7, and PB8 can be used with pwm, which rules out TIM2 and TIM4.
// On STM32F070, 16 and 17 are in use, but 1 and 3 are available.
#define STEP_TIMER 1
#define TEMP_TIMER 3
//
// Limit Switches
//
#define X_MIN_PIN PB4
#define Y_MIN_PIN PA15
#define Z_MIN_PIN PB5
//
// Steppers
//
// X & Y enable are the same
#define X_STEP_PIN PB14
#define X_DIR_PIN PB15
#define X_ENABLE_PIN PA8
#define Y_STEP_PIN PB12
#define Y_DIR_PIN PB13
#define Y_ENABLE_PIN PA8
#define Z_STEP_PIN PB10
#define Z_DIR_PIN PB2
#define Z_ENABLE_PIN PB11
#define E0_STEP_PIN PB0
#define E0_DIR_PIN PC13
#define E0_ENABLE_PIN PB1
//
// Temperature Sensors
//
#define TEMP_0_PIN PA0 // Analog Input (HOTEND0 thermistor)
#define TEMP_BED_PIN PA1 // Analog Input (BED thermistor)
//
// Heaters / Fans
//
#define HEATER_0_PIN PB6 // HOTEND0 MOSFET
#define HEATER_BED_PIN PB7 // BED MOSFET
// FAN_PIN is commented out here because the M200 example
// Configuration_adv.h does NOT override E0_AUTO_FAN_PIN.
#ifndef FAN_PIN
//#define FAN_PIN PB8 // FAN1 header on board - PRINT FAN
#endif
#define FAN1_PIN PB3 // FAN2 header on board - CONTROLLER FAN
#define FAN2_PIN -1 // FAN3 header on board - EXTRUDER0 FAN
// This board has only the controller fan and the extruder fan
// If someone hacks to put a direct power fan on the controller, PB3 could
// be used as a separate print cooling fan.
#define ORIG_E0_AUTO_FAN_PIN PB8

View File

@ -0,0 +1,126 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
/**
* MKS Robin (STM32F130ZET6) board pin assignments
*/
#ifndef __STM32F1__
#error "Oops! Select an STM32F1 board in 'Tools > Board.'"
#endif
#if HOTENDS > 2 || E_STEPPERS > 2
#error "MKS Robin supports up to 2 hotends / E-steppers. Comment out this line to continue."
#endif
#define BOARD_NAME "MKS Robin"
//
// Release PB4 (Y_ENABLE_PIN) from JTAG NRST role
//
#define DISABLE_DEBUG
//
// Servos
//
#define SERVO0_PIN PC3 // XS1 - 5
#define SERVO1_PIN PA1 // XS1 - 6
#define SERVO2_PIN PF9 // XS2 - 5
#define SERVO3_PIN PF8 // XS2 - 6
//
// Limit Switches
//
#define X_MIN_PIN PB12
#define X_MAX_PIN PB0
#define Y_MIN_PIN PC5
#define Y_MAX_PIN PC4
#define Z_MIN_PIN PA4
#define Z_MAX_PIN PF7
//
// Steppers
//
#define X_ENABLE_PIN PB9
#define X_STEP_PIN PB8
#define X_DIR_PIN PB5
#define Y_ENABLE_PIN PB4
#define Y_STEP_PIN PG15
#define Y_DIR_PIN PG10
#define Z_ENABLE_PIN PD7
#define Z_STEP_PIN PD3
#define Z_DIR_PIN PG14
#define E0_ENABLE_PIN PG13
#define E0_STEP_PIN PG8
#define E0_DIR_PIN PA15
#define E1_ENABLE_PIN PA12
#define E1_STEP_PIN PA11
#define E1_DIR_PIN PA8
//
// Temperature Sensors
//
#define TEMP_0_PIN PC1 // TH1
#define TEMP_1_PIN PC2 // TH2
#define TEMP_BED_PIN PC0 // TB1
//
// Heaters / Fans
//
#define HEATER_0_PIN PC7 // HEATER1
#define HEATER_1_PIN PA6 // HEATER2
#define HEATER_BED_PIN PC6 // HOT BED
#define FAN_PIN PA7 // FAN
/**
* Note: MKS Robin board is using SPI2 interface. Make sure your stm32duino library is configured accordingly
*/
//#define MAX6675_SS_PIN PE5 // TC1 - CS1
//#define MAX6675_SS_PIN PE6 // TC2 - CS2
#define POWER_LOSS_PIN PA2 // PW_DET
#define PS_ON_PIN PA3 // PW_OFF
#define FIL_RUNOUT_PIN PF11 // MT_DET
#define BEEPER_PIN PC13
#define LED_PIN PB2
/**
* Note: MKS Robin TFT screens may have different TFT controllers
* If the screen stays white, disable 'LCD_RESET_PIN' to rely on the bootloader to do screen initialization.
*
* Enabling 'LCD_RESET_PIN' causes flickering when entering the LCD menu due to LCD controller reset.
* Reset feature was designed to "revive the LCD if static electricity killed it."
*/
//#define LCD_RESET_PIN PF6
#define LCD_BACKLIGHT_PIN PG11
#define FSMC_CS_PIN PG12 // NE4
#define FSMC_RS_PIN PF0 // A0
#define SD_DETECT_PIN PF12
#define SDSS -1

View File

@ -0,0 +1,134 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
/**
* MKS Robin MINI (STM32F130VET6) board pin assignments
*/
#ifndef __STM32F1__
#error "Oops! Select an STM32F1 board in 'Tools > Board.'"
#endif
#if HOTENDS > 1 || E_STEPPERS > 1
#error "MKS Robin mini supports up to 1 hotends / E-steppers. Comment out this line to continue."
#endif
#define BOARD_NAME "MKS Robin mini"
//
// Release PB4 (Y_ENABLE_PIN) from JTAG NRST role
//
#define DISABLE_DEBUG
//
// Note: MKS Robin mini board is using SPI2 interface.
//
#define SPI_MODULE 2
//
// Limit Switches
//
#define X_MIN_PIN PA15
#define X_MAX_PIN PA15
#define Y_MIN_PIN PA12
#define Y_MAX_PIN PA12
#define Z_MIN_PIN PA11
#define Z_MAX_PIN PC4
//
// Steppers
//
#define X_ENABLE_PIN PE4
#define X_STEP_PIN PE3
#define X_DIR_PIN PE2
#define Y_ENABLE_PIN PE1
#define Y_STEP_PIN PE0
#define Y_DIR_PIN PB9
#define Z_ENABLE_PIN PB8
#define Z_STEP_PIN PB5
#define Z_DIR_PIN PB4
#define E0_ENABLE_PIN PB3
#define E0_STEP_PIN PD6
#define E0_DIR_PIN PD3
//
// Temperature Sensors
//
#define TEMP_0_PIN PC1 // TH1
//#define TEMP_1_PIN PC2 // TH2
#define TEMP_BED_PIN PC0 // TB1
//
// Heaters / Fans
//
#define HEATER_0_PIN PC3 // HEATER1
//#define HEATER_1_PIN PA6 // HEATER2
#define HEATER_BED_PIN PA0 // HOT BED
#define FAN_PIN PB1 // FAN
#define BTN_ENC PB3 // Pin is not connected. Real pin is needed to enable encoder's push button functionality used by touch screen
//#define MAX6675_SS_PIN PE5 // TC1 - CS1
//#define MAX6675_SS_PIN PE6 // TC2 - CS2
#define POWER_LOSS_PIN PA2 // PW_DET
#define PS_ON_PIN PA3 // PW_OFF
#define FIL_RUNOUT_PIN PF11 // MT_DET
#define BEEPER_PIN PC5
//#define LED_PIN PB2
/**
* Note: MKS Robin TFT screens may have different TFT controllers
* If the screen stays white, disable 'LCD_RESET_PIN' to rely on the bootloader to do screen initialization.
*/
#define LCD_RESET_PIN PF6
#define NO_LCD_REINIT // Suppress LCD re-initialization
#define LCD_BACKLIGHT_PIN PD13
#define FSMC_CS_PIN PD7 // NE4
#define FSMC_RS_PIN PD11 // A0
#define TOUCH_CS PC2
#define SD_DETECT_PIN PD12
// Motor current PWM pins
#define MOTOR_CURRENT_PWM_XY_PIN PA6
#define MOTOR_CURRENT_PWM_Z_PIN PA7
#define MOTOR_CURRENT_PWM_E_PIN PB0
#define MOTOR_CURRENT_PWM_RANGE 65535 // (255 * (1000mA / 65535)) * 257 = 1000 is equal 1.6v Vref in turn equal 1Amp
#define DEFAULT_PWM_MOTOR_CURRENT { 1030, 1030, 1030 } // 1.05Amp per driver, here is XY, Z and E. This values determined empirically.
// This is a kind of workaround in case native marlin "digipot" interface won't work.
// Required to enable related code in STM32F1/HAL.cpp
//#ifndef MKS_ROBIN_MINI_VREF_PWM
// #define MKS_ROBIN_MINI_VREF_PWM
//#endif
//#define VREF_XY_PIN PA6
//#define VREF_Z_PIN PA7
//#define VREF_E1_PIN PB0

View File

@ -0,0 +1,119 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
/**
* MKS Robin nano (STM32F130VET6) board pin assignments
*/
#ifndef __STM32F1__
#error "Oops! Select an STM32F1 board in 'Tools > Board.'"
#endif
#if HOTENDS > 2 || E_STEPPERS > 2
#error "MKS Robin nano supports up to 2 hotends / E-steppers. Comment out this line to continue."
#endif
#define BOARD_NAME "MKS Robin nano"
//
// Release PB4 (Y_ENABLE_PIN) from JTAG NRST role
//
#define DISABLE_DEBUG
//
// Note: MKS Robin board is using SPI2 interface.
//
#define SPI_MODULE 2
//
// Limit Switches
//
#define X_STOP_PIN PA15
#define Y_STOP_PIN PA12
#define Z_MIN_PIN PA11
#define Z_MAX_PIN PC4
//
// Steppers
//
#define X_ENABLE_PIN PE4
#define X_STEP_PIN PE3
#define X_DIR_PIN PE2
#define Y_ENABLE_PIN PE1
#define Y_STEP_PIN PE0
#define Y_DIR_PIN PB9
#define Z_ENABLE_PIN PB8
#define Z_STEP_PIN PB5
#define Z_DIR_PIN PB4
#define E0_ENABLE_PIN PB3
#define E0_STEP_PIN PD6
#define E0_DIR_PIN PD3
#define E1_ENABLE_PIN PA3
#define E1_STEP_PIN PA6
#define E1_DIR_PIN PA1
//
// Temperature Sensors
//
#define TEMP_0_PIN PC1 // TH1
#define TEMP_1_PIN PC2 // TH2
#define TEMP_BED_PIN PC0 // TB1
//
// Heaters / Fans
//
#define HEATER_0_PIN PC3 // HEATER1
#define HEATER_1_PIN PB0 // HEATER2
#define HEATER_BED_PIN PA0 // HOT BED
#define FAN_PIN PB1 // FAN
#define BTN_ENC PC13 // Pin is not connected. Real pin is needed to enable encoder's push button functionality used by touch screen
//#define MAX6675_SS_PIN PE5 // TC1 - CS1
//#define MAX6675_SS_PIN PE6 // TC2 - CS2
#define POWER_LOSS_PIN PA2 // PW_DET
#define PS_ON_PIN PA3 // PW_OFF
#define FIL_RUNOUT_PIN PA4 // MT_DET
#define BEEPER_PIN PC5
#define LED_PIN PB2
/**
* Note: MKS Robin TFT screens may have different TFT controllers
* If the screen stays white, disable 'LCD_RESET_PIN' to rely on the bootloader to do screen initialization.
*/
#define LCD_RESET_PIN PF6
#define NO_LCD_REINIT // Suppress LCD re-initialization
#define LCD_BACKLIGHT_PIN PD13
#define FSMC_CS_PIN PD7 // NE4
#define FSMC_RS_PIN PD11 // A0
#define TOUCH_CS PA7
#define SD_DETECT_PIN PD12

View File

@ -0,0 +1,91 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
/**
* 2017 Victor Perez Marlin for stm32f1 test
* 2018 Modified by Pablo Crespo for Morpheus Board (https://github.com/pscrespo/Morpheus-STM32)
*/
/**
* MORPHEUS Board pin assignments
*/
#ifndef __STM32F1__
#error "Oops! Select an STM32F1 board in 'Tools > Board.'"
#endif
#define BOARD_NAME "Bluepill based board"
//
// Limit Switches
//
#define X_MIN_PIN PB14
#define Y_MIN_PIN PB13
#define Z_MIN_PIN PB12
//
// Z Probe (when not Z_MIN_PIN)
//
#ifndef Z_MIN_PROBE_PIN
#define Z_MIN_PROBE_PIN PB9
#endif
//
// Steppers
//
// X & Y enable are the same
#define X_STEP_PIN PB7
#define X_DIR_PIN PB6
#define X_ENABLE_PIN PB8
#define Y_STEP_PIN PB5
#define Y_DIR_PIN PB4
#define Y_ENABLE_PIN PB8
#define Z_STEP_PIN PA15
#define Z_DIR_PIN PA10
#define Z_ENABLE_PIN PB3
#define E0_STEP_PIN PA8
#define E0_DIR_PIN PB15
#define E0_ENABLE_PIN PA9
//
// Temperature Sensors
//
#define TEMP_0_PIN PB1 // Analog Input (HOTEND thermistor)
#define TEMP_BED_PIN PB0 // Analog Input (BED thermistor)
//
// Heaters / Fans
//
#define HEATER_0_PIN PA2 // HOTEND MOSFET
#define HEATER_BED_PIN PA0 // BED MOSFET
#define FAN_PIN PA1 // FAN1 header on board - PRINT FAN
//
// Misc.
//
#define LED_PIN PC13
#define SDSS PA3

View File

@ -0,0 +1,133 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
#ifndef STM32F7xx
#error "Oops! Select an STM32F7 board in 'Tools > Board.'"
#endif
#define BOARD_NAME "RemRam v1"
#define DEFAULT_MACHINE_NAME "RemRam"
#define SRAM_EEPROM_EMULATION // Emulate the EEPROM using Backup SRAM
#if HOTENDS > 1 || E_STEPPERS > 1
#error "RemRam supports only one hotend / E-stepper."
#endif
//
// Limit Switches
//
#if DISABLED(SENSORLESS_HOMING)
#define X_MIN_PIN 58
#define X_MAX_PIN 59
#define Y_MIN_PIN 60
#define Y_MAX_PIN 61
#define Z_MIN_PIN 62
#define Z_MAX_PIN 63
#else
#define X_STOP_PIN 36
#define Y_STOP_PIN 39
#define Z_MIN_PIN 62
#define Z_MAX_PIN 42
#endif
//
// Z Probe (when not Z_MIN_PIN)
//
#ifndef Z_MIN_PROBE_PIN
#define Z_MIN_PROBE_PIN 26 // EXT_D1
#endif
//
// Steppers
//
#define X_STEP_PIN 22
#define X_DIR_PIN 35
#define X_ENABLE_PIN 34
#define X_CS_PIN 14
#define Y_STEP_PIN 23
#define Y_DIR_PIN 38
#define Y_ENABLE_PIN 37
#define Y_CS_PIN 15
#define Z_STEP_PIN 24
#define Z_DIR_PIN 41
#define Z_ENABLE_PIN 40
#define Z_CS_PIN 16
#define E0_STEP_PIN 25
#define E0_DIR_PIN 44
#define E0_ENABLE_PIN 43
#define E0_CS_PIN 10
//
// Temperature Sensors
//
#define TEMP_0_PIN 64 // THERM_1
#define TEMP_1_PIN 65 // THERM_2
#define TEMP_BED_PIN 66 // THERM_3
//
// Heaters / Fans
//
#define HEATER_0_PIN 33
#define HEATER_BED_PIN 31
#ifndef FAN_PIN
#define FAN_PIN 30 // "FAN1"
#endif
#define FAN1_PIN 32 // "FAN2"
#define ORIG_E0_AUTO_FAN_PIN 32 // Use this by NOT overriding E0_AUTO_FAN_PIN
//
// Servos
//
#define SERVO0_PIN 26 // PWM_EXT1
#define SERVO1_PIN 27 // PWM_EXT2
#define SDSS 57 // Onboard SD card reader
//#define SDSS 9 // LCD SD card reader
#define LED_PIN 21 // STATUS_LED
//
// LCD / Controller
//
#define SD_DETECT_PIN 56 // SD_CARD_DET
#define BEEPER_PIN 46 // LCD_BEEPER
#define LCD_PINS_RS 49 // LCD_RS
#define LCD_PINS_ENABLE 48 // LCD_EN
#define LCD_PINS_D4 50 // LCD_D4
#define LCD_PINS_D5 51 // LCD_D5
#define LCD_PINS_D6 52 // LCD_D6
#define LCD_PINS_D7 53 // LCD_D7
#define BTN_EN1 54 // BTN_EN1
#define BTN_EN2 55 // BTN_EN2
#define BTN_ENC 47 // BTN_ENC
//
// Timers
//
#define STEP_TIMER 2

View File

@ -0,0 +1,132 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
#ifndef STM32F4
#error "Oops! Select an STM32F4 board in 'Tools > Board.'"
#endif
#define RUMBA32_V1_0
#define BOARD_NAME "RUMBA32"
#define DEFAULT_MACHINE_NAME BOARD_NAME
//#define I2C_EEPROM
#define E2END 0xFFF // 4KB
#if HOTENDS > 3 || E_STEPPERS > 3
#error "RUMBA32 supports up to 3 hotends / E-steppers."
#endif
//
// Limit Switches
//
#define X_MIN_PIN PB12
#define X_MAX_PIN PB13
#define Y_MIN_PIN PB15
#define Y_MAX_PIN PD8
#define Z_MIN_PIN PD9
#define Z_MAX_PIN PD10
//
// Steppers
//
#define X_STEP_PIN PA0
#define X_DIR_PIN PC15
#define X_ENABLE_PIN PC11
#define X_CS_PIN PC14
#define Y_STEP_PIN PE5
#define Y_DIR_PIN PE6
#define Y_ENABLE_PIN PE3
#define Y_CS_PIN PE4
#define Z_STEP_PIN PE1
#define Z_DIR_PIN PE2
#define Z_ENABLE_PIN PB7
#define Z_CS_PIN PE0
#define E0_STEP_PIN PB5
#define E0_DIR_PIN PB6
#define E0_ENABLE_PIN PC12
#define E0_CS_PIN PC13
#define E1_STEP_PIN PD6
#define E1_DIR_PIN PD7
#define E1_ENABLE_PIN PD4
#define E1_CS_PIN PD5
#define E2_STEP_PIN PD2
#define E2_DIR_PIN PD3
#define E2_ENABLE_PIN PD0
#define E2_CS_PIN PD1
//
// Temperature Sensors
//
#define TEMP_0_PIN PC4
#define TEMP_1_PIN PC3
#define TEMP_2_PIN PC2
#define TEMP_3_PIN PC1
#define TEMP_BED_PIN PC0
//
// Heaters / Fans
//
#define HEATER_0_PIN PC6
#define HEATER_1_PIN PC7
#define HEATER_2_PIN PC8
#define HEATER_BED_PIN PA1
#define FAN_PIN PC9
#define FAN1_PIN PA8
//
// I2C
//
#define SCK_PIN PA5
#define MISO_PIN PA6
#define MOSI_PIN PA7
//
// Misc. Functions
//
#define LED_PIN PB14
#define BTN_PIN PC10
#define PS_ON_PIN PE11
#define KILL_PIN PC5
#define SDSS PA2
#define SD_DETECT_PIN PB0
#define BEEPER_PIN PE8
//
// LCD / Controller
//
#define LCD_PINS_RS PE10
#define LCD_PINS_ENABLE PE9
#define LCD_PINS_D4 PE12
#define LCD_PINS_D5 PE13
#define LCD_PINS_D6 PE14
#define LCD_PINS_D7 PE15
#define BTN_EN1 PB1
#define BTN_EN2 PB2
#define BTN_ENC PE7

View File

@ -0,0 +1,150 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
#ifndef STM32F4
#error "Oops! Select an STM32F4 board in 'Tools > Board.'"
#endif
#ifndef MACHINE_NAME
#define MACHINE_NAME "STEVAL-3DP001V1"
#endif
#undef TEMP_TIMER
#define TEMP_TIMER 9 // the Marlin default of timer 7 doesn't exist on the STM32MF401 series
//
// Limit Switches
//
#define X_MIN_PIN 38 // PD8 X_STOP
#define X_MAX_PIN -1
#define Y_MIN_PIN 39 // PD9 Y_STOP
#define Y_MAX_PIN -1
#define Z_MIN_PIN 40 // PD10 Z_STOP
#define Z_MAX_PIN -1
//
// Z Probe (when not Z_MIN_PIN)
//
// #ifndef Z_MIN_PROBE_PIN
// #define Z_MIN_PROBE_PIN 11 // PA4
// #endif
#define SCK_PIN 16 // PB13 SPI_S
#define MISO_PIN 17 // PB14 SPI_M
#define MOSI_PIN 18 // PB15 SPI_M
//
// Steppers
//
#define X_STEP_PIN 60 // PE14 X_PWM
#define X_DIR_PIN 61 // PE15 X_DIR
#define X_ENABLE_PIN 59 // PE13 X_RES
#define X_CS_PIN 11 // PA4 SPI_CS
#define Y_STEP_PIN 62 // PB10 Y_PWM
#define Y_DIR_PIN 63 // PE9 Y_DIR
#define Y_ENABLE_PIN 64 // PE10 Y_RES
#define Y_CS_PIN 11 // PA4 SPI_CS
#define Z_STEP_PIN 66 // PC6 Z_PWM
#define Z_DIR_PIN 67 // PC0 Z_DIR
#define Z_ENABLE_PIN 65 // PC15 Z_RES
#define Z_CS_PIN 11 // PA4 SPI_CS
#define E0_STEP_PIN 70 // PD12 E1_PW
#define E0_DIR_PIN 68 // PC13 E1_DIR
#define E0_ENABLE_PIN 69 // PC14 E1_RE
#define E0_CS_PIN 11 // PA4 SPI_CS
#define E1_STEP_PIN 72 // PE5 E2_PWM
#define E1_DIR_PIN 73 // PE6 E2_DIR
#define E1_ENABLE_PIN 71 // PE4 E2_RESE
#define E1_CS_PIN 11 // PA4 SPI_CS
#define E2_STEP_PIN 76 // PB8 E3_PWM
#define E2_DIR_PIN 74 // PE2 E3_DIR
#define E2_ENABLE_PIN 75 // PE3 E3_RESE
#define E2_CS_PIN 11 // PA4 SPI_CS
//
// Temperature Sensors
//
#define TEMP_0_PIN 52 // PA0 E1_THER
#define TEMP_1_PIN 53 // PA1 E2_THER
#define TEMP_BED_PIN 50 // PC2 BED_THE
//
// Heaters / Fans
//
#define HEATER_0_PIN 52 // PA0 E1_THER
#define HEATER_1_PIN 53 // PA1 E2_THER
#define HEATER_BED_PIN 50 // PC2 BED_THE
#define FAN_PIN 56 // PC4 E1_FAN PWM pin, Part cooling fan
#define FAN1_PIN 57 // PC5 E2_FAN PWM pin, Extruder fan
#define FAN2_PIN 58 // PE8 E3_FAN PWM pin, Controller fan
//
// Misc functions
//
#define SDSS 11 // PA4 SPI_CS
#define LED_PIN -1 // Heart beat
#define PS_ON_PIN -1
#define KILL_PIN -1
#define PWR_LOSS -1 // Power loss / nAC_FAULT
//
// LCD / Controller
//
//#define SD_DETECT_PIN 24 // PA15 SD_CA
//#define BEEPER_PIN 23 // PC9 SDIO_D1
//#define LCD_PINS_RS 63 // PE9 Y_DIR
//#define LCD_PINS_ENABLE 58 // PE8 E3_FAN
//#define LCD_PINS_D4 15 // PB12 SPI_C
//#define LCD_PINS_D5 16 // PB13 SPI_S
//#define LCD_PINS_D6 17 // PB14 SPI_M
//#define LCD_PINS_D7 18 // PB15 SPI_M
//#define BTN_EN1 56 // PC4 E1_FAN
//#define BTN_EN2 57 // PC5 E2_FAN
//#define BTN_ENC 51 // PC3 BED_THE
//
// Filament runout detection
//
//#define FIL_RUNOUT_PIN 55 // PA3 BED_THE
//
// Extension pins
//
//#define EXT0_PIN 48 // PB0 E2_HEAT
//#define EXT1_PIN 49 // PB1 E3_HEAT
//#define EXT2_PIN // PB2
//#define EXT3_PIN 38 // PD8 X_STOP
//#define EXT4_PIN 39 // PD9 Y_STOP
//#define EXT5_PIN 40 // PD10 Z_STOP
//#define EXT6_PIN 41 // PD11
//#define EXT7_PIN 70 // PD12 E1_PW
//#define EXT8_PIN 62 // PB10 Y_PWM
//#define EXT9_PIN // PB11

View File

@ -0,0 +1,264 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
#ifndef __STM32F1__
#error "Oops! Select an STM32F1 board in 'Tools > Board.'"
#endif
/**
* 21017 Victor Perez Marlin for stm32f1 test
*/
#define BOARD_NAME "Misc. STM32F1R"
#define DEFAULT_MACHINE_NAME "STM32F103RET6"
// Ignore temp readings during development.
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
//
// Limit Switches
//
#define U_MIN_PIN -1
#define V_MIN_PIN -1
#define W_MIN_PIN -1
#define X_STOP_PIN PB3
#define Y_STOP_PIN PB4
#define Z_STOP_PIN PB5
//
// Steppers
//
#define X_STEP_PIN PC0
#define X_DIR_PIN PC1
#define X_ENABLE_PIN PA8
#define Y_STEP_PIN PC2
#define Y_DIR_PIN PC3
#define Y_ENABLE_PIN PA8
#define Z_STEP_PIN PC4
#define Z_DIR_PIN PC5
#define Z_ENABLE_PIN PA8
#define E0_STEP_PIN PC6
#define E0_DIR_PIN PC7
#define E0_ENABLE_PIN PA8
/**
* TODO: Currently using same Enable pin to all steppers.
*/
#define E1_STEP_PIN PC8
#define E1_DIR_PIN PC9
#define E1_ENABLE_PIN PA8
#define E2_STEP_PIN PC10
#define E2_DIR_PIN PC11
#define E2_ENABLE_PIN PA8
//
// Misc. Functions
//
#define SDSS PA4
#define LED_PIN PD2
//
// Heaters / Fans
//
#define HEATER_0_PIN PB0 // EXTRUDER 1
#define HEATER_1_PIN PB1
#define HEATER_BED_PIN PA3 // BED
//
// Temperature Sensors
//
#define TEMP_BED_PIN PA0 // Analog Input
#define TEMP_0_PIN PA1 // Analog Input
#define TEMP_1_PIN PA2 // Analog Input
//
// LCD Pins
//
#if HAS_SPI_LCD
#if ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
#define LCD_PINS_RS 49 // CS chip select /SS chip slave select
#define LCD_PINS_ENABLE 51 // SID (MOSI)
#define LCD_PINS_D4 52 // SCK (CLK) clock
#elif BOTH(NEWPANEL, PANEL_ONE)
#define LCD_PINS_RS PB8
#define LCD_PINS_ENABLE PD2
#define LCD_PINS_D4 PB12
#define LCD_PINS_D5 PB13
#define LCD_PINS_D6 PB14
#define LCD_PINS_D7 PB15
#else
#define LCD_PINS_RS PB8
#define LCD_PINS_ENABLE PD2
#define LCD_PINS_D4 PB12
#define LCD_PINS_D5 PB13
#define LCD_PINS_D6 PB14
#define LCD_PINS_D7 PB15
#if DISABLED(NEWPANEL)
#define BEEPER_PIN 33
// Buttons are attached to a shift register
// Not wired yet
//#define SHIFT_CLK 38
//#define SHIFT_LD 42
//#define SHIFT_OUT 40
//#define SHIFT_EN 17
#endif
#endif
#if ENABLED(NEWPANEL)
#if ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER)
#define BEEPER_PIN 37
#define BTN_EN1 31
#define BTN_EN2 33
#define BTN_ENC 35
#define SD_DETECT_PIN 49
#define KILL_PIN 41
#if ENABLED(BQ_LCD_SMART_CONTROLLER)
#define LCD_BACKLIGHT_PIN 39
#endif
#elif ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
#define BTN_EN1 64
#define BTN_EN2 59
#define BTN_ENC 63
#define SD_DETECT_PIN 42
#elif ENABLED(LCD_I2C_PANELOLU2)
#define BTN_EN1 47
#define BTN_EN2 43
#define BTN_ENC 32
#define LCD_SDSS 53
#define SD_DETECT_PIN -1
#define KILL_PIN 41
#elif ENABLED(LCD_I2C_VIKI)
#define BTN_EN1 22 // http://files.panucatt.com/datasheets/viki_wiring_diagram.pdf explains 40/42.
#define BTN_EN2 7 // 22/7 are unused on RAMPS_14. 22 is unused and 7 the SERVO0_PIN on RAMPS_13.
#define BTN_ENC -1
#define LCD_SDSS 53
#define SD_DETECT_PIN 49
#elif ANY(VIKI2, miniVIKI)
#define BEEPER_PIN 33
// Pins for DOGM SPI LCD Support
#define DOGLCD_A0 44
#define DOGLCD_CS 45
#define LCD_SCREEN_ROT_180
#define BTN_EN1 22
#define BTN_EN2 7
#define BTN_ENC 39
#define SDSS 53
#define SD_DETECT_PIN -1 // Pin 49 for display sd interface, 72 for easy adapter board
#define KILL_PIN 31
#define STAT_LED_RED_PIN 32
#define STAT_LED_BLUE_PIN 35
#elif ENABLED(ELB_FULL_GRAPHIC_CONTROLLER)
#define BTN_EN1 35
#define BTN_EN2 37
#define BTN_ENC 31
#define SD_DETECT_PIN 49
#define LCD_SDSS 53
#define KILL_PIN 41
#define BEEPER_PIN 23
#define DOGLCD_CS 29
#define DOGLCD_A0 27
#define LCD_BACKLIGHT_PIN 33
#elif ENABLED(MINIPANEL)
#define BEEPER_PIN 42
// Pins for DOGM SPI LCD Support
#define DOGLCD_A0 44
#define DOGLCD_CS 66
#define LCD_BACKLIGHT_PIN 65 // backlight LED on A11/D65
#define SDSS 53
#define KILL_PIN 64
// GLCD features
// Uncomment screen orientation
//#define LCD_SCREEN_ROT_90
//#define LCD_SCREEN_ROT_180
//#define LCD_SCREEN_ROT_270
// The encoder and click button
#define BTN_EN1 40
#define BTN_EN2 63
#define BTN_ENC 59
// not connected to a pin
#define SD_DETECT_PIN 49
#else
// Beeper on AUX-4
#define BEEPER_PIN 33
// buttons are directly attached using AUX-2
#if ENABLED(REPRAPWORLD_KEYPAD)
#define BTN_EN1 64
#define BTN_EN2 59
#define BTN_ENC 63
#define SHIFT_OUT 40
#define SHIFT_CLK 44
#define SHIFT_LD 42
#elif ENABLED(PANEL_ONE)
#define BTN_EN1 59 // AUX2 PIN 3
#define BTN_EN2 63 // AUX2 PIN 4
#define BTN_ENC 49 // AUX3 PIN 7
#else
#define BTN_EN1 37
#define BTN_EN2 35
#define BTN_ENC 31
#endif
#if ENABLED(G3D_PANEL)
#define SD_DETECT_PIN 49
#define KILL_PIN 41
#else
//#define SD_DETECT_PIN -1 // Ramps doesn't use this
#endif
#endif
#endif // NEWPANEL
#endif // HAS_SPI_LCD

View File

@ -0,0 +1,192 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
#if !defined(STM32F4) && !defined(STM32F4xx)
#error "Oops! Select an STM32F4 board in 'Tools > Board.'"
#endif
#define BOARD_NAME "Misc. STM32F4"
#define DEFAULT_MACHINE_NAME "STM32F407VET6"
//#define I2C_EEPROM
#define E2END 0xFFF // 4KB
// Ignore temp readings during development.
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
#if HOTENDS > 2 || E_STEPPERS > 2
#error "STM32F4 supports up to 2 hotends / E-steppers."
#endif
//
// Limit Switches
//
#define X_MIN_PIN PE0
#define X_MAX_PIN -1
#define Y_MIN_PIN PE1
#define Y_MAX_PIN -1
#define Z_MIN_PIN PE14
#define Z_MAX_PIN -1
//
// Z Probe (when not Z_MIN_PIN)
//
//#ifndef Z_MIN_PROBE_PIN
// #define Z_MIN_PROBE_PIN PA4
//#endif
//
// Steppers
//
#define X_STEP_PIN PD3
#define X_DIR_PIN PD2
#define X_ENABLE_PIN PD0
//#ifndef X_CS_PIN
// #define X_CS_PIN PD1
//#endif
#define Y_STEP_PIN PE11
#define Y_DIR_PIN PE10
#define Y_ENABLE_PIN PE13
//#ifndef Y_CS_PIN
// #define Y_CS_PIN PE12
//#endif
#define Z_STEP_PIN PD6
#define Z_DIR_PIN PD7
#define Z_ENABLE_PIN PD4
//#ifndef Z_CS_PIN
// #define Z_CS_PIN PD5
//#endif
#define E0_STEP_PIN PB5
#define E0_DIR_PIN PB6
#define E0_ENABLE_PIN PB3
//#ifndef E0_CS_PIN
// #define E0_CS_PIN PB4
//#endif
#define E1_STEP_PIN PE4
#define E1_DIR_PIN PE2
#define E1_ENABLE_PIN PE3
//#ifndef E1_CS_PIN
// #define E1_CS_PIN PE5
//#endif
#define SCK_PIN PA5
#define MISO_PIN PA6
#define MOSI_PIN PA7
//
// Temperature Sensors
//
#define TEMP_0_PIN PC0 // Analog Input
#define TEMP_1_PIN PC1 // Analog Input
#define TEMP_BED_PIN PC2 // Analog Input
//
// Heaters / Fans
//
#define HEATER_0_PIN PA1
#define HEATER_1_PIN PA2
#define HEATER_BED_PIN PA0
#ifndef FAN_PIN
#define FAN_PIN PC6
#endif
#define FAN1_PIN PC7
#define FAN2_PIN PC8
#define ORIG_E0_AUTO_FAN_PIN FAN1_PIN // Use this by NOT overriding E0_AUTO_FAN_PIN
//
// Misc. Functions
//
//#define CASE_LIGHT_PIN_CI PF13
//#define CASE_LIGHT_PIN_DO PF14
//#define NEOPIXEL_PIN PF13
//
// Průša i3 MK2 Multi Material Multiplexer Support
//
//#define E_MUX0_PIN PG3
//#define E_MUX1_PIN PG4
//
// Servos
//
//#define SERVO0_PIN PE13
//#define SERVO1_PIN PE14
#define SDSS PE7
#define SS_PIN PE7
#define LED_PIN PB7 //Alive
#define PS_ON_PIN PA10
#define KILL_PIN PA8
#define PWR_LOSS PA4 //Power loss / nAC_FAULT
//
// LCD / Controller
//
#define SD_DETECT_PIN PA15
#define BEEPER_PIN PC9
#define LCD_PINS_RS PE9
#define LCD_PINS_ENABLE PE8
#define LCD_PINS_D4 PB12
#define LCD_PINS_D5 PB13
#define LCD_PINS_D6 PB14
#define LCD_PINS_D7 PB15
#define BTN_EN1 PC4
#define BTN_EN2 PC5
#define BTN_ENC PC3
//
// Filament runout
//
#define FIL_RUNOUT_PIN PA3
//
// ST7920 Delays
//
#ifndef ST7920_DELAY_1
#define ST7920_DELAY_1 DELAY_NS(96)
#endif
#ifndef ST7920_DELAY_2
#define ST7920_DELAY_2 DELAY_NS(48)
#endif
#ifndef ST7920_DELAY_3
#define ST7920_DELAY_3 DELAY_NS(715)
#endif

View File

@ -0,0 +1,280 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
#if !defined(__STM32F1__) && !defined(__STM32F4__)
#error "Oops! Select an STM32F1/4 board in 'Tools > Board.'"
#endif
/**
* 21017 Victor Perez Marlin for stm32f1 test
*/
#define BOARD_NAME "STM3R Mini"
#define DEFAULT_MACHINE_NAME BOARD_NAME
// Enable I2C_EEPROM for testing
#define I2C_EEPROM
// Ignore temp readings during development.
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
//
// Limit Switches
//
#define U_MIN_PIN -1
#define V_MIN_PIN -1
#define W_MIN_PIN -1
#define X_STOP_PIN PD0
#define Y_STOP_PIN PD1
#define Z_STOP_PIN PD4
//
// Steppers
//
#define X_STEP_PIN PE1
#define X_DIR_PIN PE0
#define X_ENABLE_PIN PC0
#define Y_STEP_PIN PE3
#define Y_DIR_PIN PE2
#define Y_ENABLE_PIN PC1
#define Z_STEP_PIN PE5
#define Z_DIR_PIN PE4
#define Z_ENABLE_PIN PC2
#define E0_STEP_PIN PE7
#define E0_DIR_PIN PE6
#define E0_ENABLE_PIN PC3
#define E1_STEP_PIN PE9
#define E1_DIR_PIN PE8
#define E1_ENABLE_PIN PC4
#define E2_STEP_PIN PE11
#define E2_DIR_PIN PE10
#define E2_ENABLE_PIN PC5
//
// Misc. Functions
//
#define SDSS PA15
#define LED_PIN PB2
//
// Heaters / Fans
//
#define HEATER_0_PIN PD12 // EXTRUDER 1
//#define HEATER_1_PIN PD13
#define HEATER_BED_PIN PB9 // BED
//#define HEATER_BED2_PIN -1 // BED2
//#define HEATER_BED3_PIN -1 // BED3
#ifndef FAN_PIN
#define FAN_PIN PD14
#endif
#define FAN1_PIN PD13
#define FAN_SOFT_PWM
//
// Temperature Sensors
//
#define TEMP_BED_PIN PA0
#define TEMP_0_PIN PA1
#define TEMP_1_PIN PA2
#define TEMP_2_PIN PA3
// Laser control
#if HAS_CUTTER
#define SPINDLE_LASER_PWM_PIN PB8
#define SPINDLE_LASER_ENA_PIN PD5
#endif
//
// LCD Pins
//
#if HAS_SPI_LCD
#if ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
#define LCD_PINS_RS 49 // CS chip select /SS chip slave select
#define LCD_PINS_ENABLE 51 // SID (MOSI)
#define LCD_PINS_D4 52 // SCK (CLK) clock
#elif BOTH(NEWPANEL, PANEL_ONE)
#define LCD_PINS_RS PB8
#define LCD_PINS_ENABLE PD2
#define LCD_PINS_D4 PB12
#define LCD_PINS_D5 PB13
#define LCD_PINS_D6 PB14
#define LCD_PINS_D7 PB15
#else
#define LCD_PINS_RS PB8
#define LCD_PINS_ENABLE PD2
#define LCD_PINS_D4 PB12
#define LCD_PINS_D5 PB13
#define LCD_PINS_D6 PB14
#define LCD_PINS_D7 PB15
#if DISABLED(NEWPANEL)
#define BEEPER_PIN 33
// Buttons are attached to a shift register
// Not wired yet
//#define SHIFT_CLK 38
//#define SHIFT_LD 42
//#define SHIFT_OUT 40
//#define SHIFT_EN 17
#endif
#endif
#if ENABLED(NEWPANEL)
#if ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER)
#define BEEPER_PIN 37
#define BTN_EN1 31
#define BTN_EN2 33
#define BTN_ENC 35
#define SD_DETECT_PIN 49
#define KILL_PIN 41
#if ENABLED(BQ_LCD_SMART_CONTROLLER)
#define LCD_BACKLIGHT_PIN 39
#endif
#elif ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
#define BTN_EN1 64
#define BTN_EN2 59
#define BTN_ENC 63
#define SD_DETECT_PIN 42
#elif ENABLED(LCD_I2C_PANELOLU2)
#define BTN_EN1 47
#define BTN_EN2 43
#define BTN_ENC 32
#define LCD_SDSS 53
#define SD_DETECT_PIN -1
#define KILL_PIN 41
#elif ENABLED(LCD_I2C_VIKI)
#define BTN_EN1 22 // http://files.panucatt.com/datasheets/viki_wiring_diagram.pdf explains 40/42.
#define BTN_EN2 7 // 22/7 are unused on RAMPS_14. 22 is unused and 7 the SERVO0_PIN on RAMPS_13.
#define BTN_ENC -1
#define LCD_SDSS 53
#define SD_DETECT_PIN 49
#elif ANY(VIKI2, miniVIKI)
#define BEEPER_PIN 33
// Pins for DOGM SPI LCD Support
#define DOGLCD_A0 44
#define DOGLCD_CS 45
#define LCD_SCREEN_ROT_180
#define BTN_EN1 22
#define BTN_EN2 7
#define BTN_ENC 39
#define SDSS 53
#define SD_DETECT_PIN -1 // Pin 49 for display sd interface, 72 for easy adapter board
#define KILL_PIN 31
#define STAT_LED_RED_PIN 32
#define STAT_LED_BLUE_PIN 35
#elif ENABLED(ELB_FULL_GRAPHIC_CONTROLLER)
#define BTN_EN1 35
#define BTN_EN2 37
#define BTN_ENC 31
#define SD_DETECT_PIN 49
#define LCD_SDSS 53
#define KILL_PIN 41
#define BEEPER_PIN 23
#define DOGLCD_CS 29
#define DOGLCD_A0 27
#define LCD_BACKLIGHT_PIN 33
#elif ENABLED(MINIPANEL)
#define BEEPER_PIN 42
// Pins for DOGM SPI LCD Support
#define DOGLCD_A0 44
#define DOGLCD_CS 66
#define LCD_BACKLIGHT_PIN 65 // backlight LED on A11/D65
#define SDSS 53
#define KILL_PIN 64
// GLCD features
// Uncomment screen orientation
//#define LCD_SCREEN_ROT_90
//#define LCD_SCREEN_ROT_180
//#define LCD_SCREEN_ROT_270
// The encoder and click button
#define BTN_EN1 40
#define BTN_EN2 63
#define BTN_ENC 59
// not connected to a pin
#define SD_DETECT_PIN 49
#else
// Beeper on AUX-4
#define BEEPER_PIN 33
// buttons are directly attached using AUX-2
#if ENABLED(REPRAPWORLD_KEYPAD)
#define BTN_EN1 64
#define BTN_EN2 59
#define BTN_ENC 63
#define SHIFT_OUT 40
#define SHIFT_CLK 44
#define SHIFT_LD 42
#elif ENABLED(PANEL_ONE)
#define BTN_EN1 59 // AUX2 PIN 3
#define BTN_EN2 63 // AUX2 PIN 4
#define BTN_ENC 49 // AUX3 PIN 7
#else
#define BTN_EN1 37
#define BTN_EN2 35
#define BTN_ENC 31
#endif
#if ENABLED(G3D_PANEL)
#define SD_DETECT_PIN 49
#define KILL_PIN 41
#else
//#define SD_DETECT_PIN -1 // Ramps doesn't use this
#endif
#endif
#endif // NEWPANEL
#endif // HAS_SPI_LCD

View File

@ -0,0 +1,187 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2019 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 <http://www.gnu.org/licenses/>.
*
*/
#pragma once
#if !defined(STM32F7)
#error "Oops! Select an STM32F7 board in 'Tools > Board.'"
#endif
#define BOARD_NAME "The-Borge"
#define DEFAULT_MACHINE_NAME BOARD_NAME
#define E2END 0xFFF // EEPROM end address
// Ignore temp readings during development.
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
#if HOTENDS > 3 || E_STEPPERS > 3
#error "The-Borg supports up to 3 hotends / E-steppers."
#endif
//
// Limit Switches
//
#define X_MIN_PIN PE9
#define X_MAX_PIN PE10
#define Y_MIN_PIN PE7
#define Y_MAX_PIN PE8
#define Z_MIN_PIN PF15
#define Z_MAX_PIN PG0
#define E_MIN_PIN PE2
#define E_MAX_PIN PE3
//
// Z Probe (when not Z_MIN_PIN)
//
#ifndef Z_MIN_PROBE_PIN
#define Z_MIN_PROBE_PIN PA4
#endif
//
// Steppers
//
#define STEPPER_ENABLE_PIN PE0
#define X_STEP_PIN PC6 // 96, 39 in Arduino
#define X_DIR_PIN PC7
#define X_ENABLE_PIN PC8
#define Y_STEP_PIN PD9
#define Y_DIR_PIN PD10
#define Y_ENABLE_PIN PD11
#define Z_STEP_PIN PE15
#define Z_DIR_PIN PG1
#define Z_ENABLE_PIN PD8
#define E0_STEP_PIN PB1
#define E0_DIR_PIN PB2
#define E0_ENABLE_PIN PE11
#define E1_STEP_PIN PC4
#define E1_DIR_PIN PC5
#define E1_ENABLE_PIN PB0
#define E2_STEP_PIN PC13
#define E2_DIR_PIN PC14
#define E2_ENABLE_PIN PC15
#define Z2_STEP_PIN PC13
#define Z2_DIR_PIN PC14
#define Z2_ENABLE_PIN PC15
#define SCK_PIN PA5
#define MISO_PIN PA6
#define MOSI_PIN PA7
#define SPI1_SCK_PIN PA5
#define SPI1_MISO_PIN PA6
#define SPI1_MOSI_PIN PA7
#define SPI6_SCK_PIN PG13
#define SPI6_MISO_PIN PG12
#define SPI6_MOSI_PIN PG14
//
// Temperature Sensors
//
#define TEMP_0_PIN PC3 // Analog Input
#define TEMP_1_PIN PC2 // Analog Input
#define TEMP_2_PIN PC1 // Analog Input
#define TEMP_3_PIN PC0 // Analog Input
#define TEMP_BED_PIN PF10 // Analog Input
#define TEMP_5_PIN PE12 // Analog Input, Probe temp
//
// Heaters / Fans
//
#define HEATER_0_PIN PD15
#define HEATER_1_PIN PD14
#define HEATER_BED_PIN PF6
#ifndef FAN_PIN
#define FAN_PIN PD13
#endif
#define FAN1_PIN PA0
#define FAN2_PIN PA1
#define ORIG_E0_AUTO_FAN_PIN PA1 // Use this by NOT overriding E0_AUTO_FAN_PIN
//
// Misc. Functions
//
//#define CASE_LIGHT_PIN_CI PF13
//#define CASE_LIGHT_PIN_DO PF14
//#define NEOPIXEL_PIN PF13
//
// Průša i3 MK2 Multi Material Multiplexer Support
//
#define E_MUX0_PIN PG3
#define E_MUX1_PIN PG4
//
// Servos
//
#define SERVO0_PIN PE13
#define SERVO1_PIN PE14
#define SDSS PA8
#define SS_PIN PA8
#define LED_PIN PA2 // Alive
#define PS_ON_PIN PA3
#define KILL_PIN -1 //PD5 // EXP2-10
#define PWR_LOSS PG5 // Power loss / nAC_FAULT
//
// MAX7219_DEBUG
//
#define MAX7219_CLK_PIN PG10 // EXP1-1
#define MAX7219_DIN_PIN PD7 // EXP1-3
#define MAX7219_LOAD_PIN PD1 // EXP1-5
//
// LCD / Controller
//
//#define SD_DETECT_PIN -1 //PB6) // EXP2-4
#define BEEPER_PIN PG10 // EXP1-1
#define LCD_PINS_RS PG9 // EXP1-4
#define LCD_PINS_ENABLE PD7 // EXP1-3
#define LCD_PINS_D4 PD1 // EXP1-5
#define LCD_PINS_D5 PF0 // EXP1-6
#define LCD_PINS_D6 PD3 // EXP1-7
#define LCD_PINS_D7 PD4 // EXP1-8
#define BTN_EN1 PD6 // EXP2-5
#define BTN_EN2 PD0 // EXP2-3
#define BTN_ENC PG11 // EXP1-2