Prusa MINI Firmware overview
pins_MALYAN_M200.h
Go to the documentation of this file.
1 /**
2  * Marlin 3D Printer Firmware
3  * Copyright (c) 2019 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
4  *
5  * Based on Sprinter and grbl.
6  * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
7  *
8  * This program is free software: you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation, either version 3 of the License, or
11  * (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program. If not, see <http://www.gnu.org/licenses/>.
20  *
21  */
22 #pragma once
23 
24 /**
25  * MALYAN M200 pin assignments
26  */
27 
28 #if NONE(__STM32F1__, STM32F1xx, STM32F0xx)
29  #error "Oops! Select an STM32 board in your IDE."
30 #endif
31 
32 #define BOARD_INFO_NAME "Malyan M200"
33 
34 // Enable EEPROM Emulation for this board
35 // This setting should probably be in configuration.h
36 // but it is literally the only board which uses it.
37 #define FLASH_EEPROM_EMULATION
38 
39 #define SDSS SS_PIN
40 
41 // Based on PWM timer usage, we have to use these timers and soft PWM for the fans
42 // On STM32F103:
43 // PB3, PB6, PB7, and PB8 can be used with pwm, which rules out TIM2 and TIM4.
44 // On STM32F070, 16 and 17 are in use, but 1 and 3 are available.
45 #undef STEP_TIMER
46 #undef TEMP_TIMER
47 #define STEP_TIMER 1
48 #define TEMP_TIMER 3
49 
50 //
51 // Limit Switches
52 //
53 #define X_MIN_PIN PB4
54 #define Y_MIN_PIN PA15
55 #define Z_MIN_PIN PB5
56 
57 //
58 // Steppers
59 //
60 // X & Y enable are the same
61 #define X_STEP_PIN PB14
62 #define X_DIR_PIN PB15
63 #define X_ENABLE_PIN PA8
64 
65 #define Y_STEP_PIN PB12
66 #define Y_DIR_PIN PB13
67 #define Y_ENABLE_PIN PA8
68 
69 #define Z_STEP_PIN PB10
70 #define Z_DIR_PIN PB2
71 #define Z_ENABLE_PIN PB11
72 
73 #define E0_STEP_PIN PB0
74 #define E0_DIR_PIN PC13
75 #define E0_ENABLE_PIN PB1
76 
77 //
78 // Temperature Sensors
79 //
80 #define TEMP_0_PIN PA0 // Analog Input (HOTEND0 thermistor)
81 #define TEMP_BED_PIN PA1 // Analog Input (BED thermistor)
82 
83 //
84 // Heaters / Fans
85 //
86 #define HEATER_0_PIN PB6 // HOTEND0 MOSFET
87 #define HEATER_BED_PIN PB7 // BED MOSFET
88 
89 #define MALYAN_FAN1_PIN PB8 // FAN1 header on board - PRINT FAN
90 #define MALYAN_FAN2_PIN PB3 // FAN2 header on board - CONTROLLER FAN
91 
92 #define FAN1_PIN MALYAN_FAN2_PIN