رقم التعريف الشخصي الافتراضي لـ X-MIN هو 37 ، وعندما أقوم بتحميل السلك الثابت ، ظهرت رسالة خطأ ... هل يجب علي تغيير تعريف طرف endstop ، أو تعطيل ميزة المقاطعات endstop بدلاً من ذلك؟
In file included from sketch\Marlin_main.cpp:320:0:
sketch\endstop_interrupts.h: In function 'void setup_endstop_interrupts()':
endstop_interrupts.h:128: error: static assertion failed: X_MIN_PIN is not interrupt-capable
static_assert(digitalPinToPCICR(X_MIN_PIN) != NULL, "X_MIN_PIN is not interrupt-capable");
^
endstop_interrupts.h:148: error: static assertion failed: Y_MIN_PIN is not interrupt-capable
static_assert(digitalPinToPCICR(Y_MIN_PIN) != NULL, "Y_MIN_PIN is not interrupt-capable");
^
endstop_interrupts.h:168: error: static assertion failed: Z_MIN_PIN is not interrupt-capable
static_assert(digitalPinToPCICR(Z_MIN_PIN) != NULL, "Z_MIN_PIN is not interrupt-capable");
^
exit status 1
static assertion failed: X_MIN_PIN is not interrupt-capable
لم أمضِ أي وقت في البحث والبحث عن الحقائق. ولكن فقط بعض دبابيس GPIO الموجودة على AVR يمكن إعدادها لتوفير المقاطعات. تخميني هو أنه تم وضع X_MIN_PIN بشكل تعسفي على دبوس غير متقطع بواسطة مصمم اللوحة. (لا أعرف ذلك في حقيقة الأمر .... لكن هذا هو موقع البداية).
من منظور معاكس. تحتوي لوحة RAMPS على كل نقطة توقف ، يتم وضع كل من Min و Max على دبابيس يمكن مقاطعتها.
يمكنك تمكين PINS_DEBUGGING
ثم إرسال M43
للحصول على قائمة كاملة بجميع المسامير وما هي إمكانياتها. إذا كان لديك عدد كافٍ من المسامير غير المستخدمة القادرة على المقاطعة ، فقد تتمكن من نقل نقاط التوقف الخاصة بك إلى تلك.
آسف على الرد المتأخر ، فإن اللوحة التي أستخدمها هي لوحة MKS Rumba + ، وهي تنص على أنها تحتوي على دوائر حماية لدبابيس endstop.
PIN: 0 Port: E0 RXD protected
PIN: 1 Port: E1 TXD protected
PIN: 2 Port: E4 HEATER_0_PIN protected
PIN: 3 Port: E5 <unused/unknown> Input = 0 TIMER3C PWM: 0 WGM: 1 COM3C: 0 CS: 3 TCCR3A: 1 TCCR3B: 3 TIMSK3: 0
PIN: 4 Port: G5 SPINDLE_LASER_PWM_PIN Input = 0 TIMER0B PWM: 128 WGM: 3 COM0B: 0 CS: 3 TCCR0A: 3 TCCR0B: 3 TIMSK0: 5 compare interrupt enabled overflow interrupt enabled
PIN: 5 Port: E3 SERVO0_PIN Input = 0 TIMER3A PWM: 0 WGM: 1 COM3A: 0 CS: 3 TCCR3A: 1 TCCR3B: 3 TIMSK3: 0
PIN: 6 Port: H3 HEATER_BED_PIN protected
PIN: 7 Port: H4 FAN_PIN protected
PIN: 8 Port: H5 E0_AUTO_FAN_PIN protected
. FAN1_PIN protected
. HEATER_3_PIN protected
PIN: 9 Port: H6 HEATER_2_PIN Output = 0 TIMER2B PWM: 0 WGM: 1 COM2B: 0 CS: 4 TCCR2A: 1 TCCR2B: 4 TIMSK2: 0
PIN: 10 Port: B4 <unused/unknown> Input = 0 TIMER2A PWM: 0 WGM: 1 COM2A: 0 CS: 4 TCCR2A: 1 TCCR2B: 4 TIMSK2: 0
PIN: 11 Port: B5 BTN_EN1 Input = 1 TIMER1A PWM: 2000 WGM: 4 COM1A: 0 CS: 2 TCCR1A: 0 TCCR1B: 10 TIMSK1: 2 non-standard PWM mode compare interrupt enabled
PIN: 12 Port: B6 BTN_EN2 Input = 1 TIMER1B PWM: 0 WGM: 4 COM1B: 0 CS: 2 TCCR1A: 0 TCCR1B: 10 TIMSK1: 2 non-standard PWM mode
PIN: 13 Port: B7 LED_PIN Input = 0 TIMER0A PWM: 0 WGM: 3 COM0A: 0 CS: 3 TCCR0A: 3 TCCR0B: 3 TIMSK0: 5 overflow interrupt enabled
. TIMER1C is also tied to this pin TIMER1C PWM: 0 WGM: 4 COM1C: 0 CS: 2 TCCR1A: 0 TCCR1B: 10 TIMSK1: 2 non-standard PWM mode
PIN: 14 Port: J1 SPINDLE_LASER_ENABLE_PIN Input = 0
PIN: 15 Port: J0 SPINDLE_DIR_PIN Input = 0
PIN: 16 Port: H1 X_DIR_PIN protected
PIN: 17 Port: H0 X_STEP_PIN protected
PIN: 18 Port: D3 LCD_PINS_D4 Output = 1
PIN: 19 Port: D2 LCD_PINS_RS Output = 0
PIN: 20 Port: D1 SDA Input = 1
PIN: 21 Port: D0 SCL Input = 1
PIN: 22 Port: A0 E0_DIR_PIN protected
PIN: 23 Port: A1 E0_STEP_PIN protected
PIN: 24 Port: A2 E0_ENABLE_PIN protected
PIN: 25 Port: A3 E1_DIR_PIN Output = 0
PIN: 26 Port: A4 E1_STEP_PIN Output = 0
PIN: 27 Port: A5 E1_ENABLE_PIN Output = 1
PIN: 28 Port: A6 E2_DIR_PIN Output = 0
PIN: 29 Port: A7 E2_STEP_PIN Output = 0
PIN: 30 Port: C7 <unused/unknown> Input = 0
PIN: 31 Port: C6 <unused/unknown> Input = 0
PIN: 32 Port: C5 <unused/unknown> Input = 1
PIN: 33 Port: C4 Z_MIN_PIN protected
PIN: 34 Port: C3 <unused/unknown> Input = 1
PIN: 35 Port: C2 Y_MIN_PIN protected
PIN: 36 Port: C1 <unused/unknown> Input = 1
PIN: 37 Port: C0 X_MIN_PIN protected
PIN: 38 Port: D7 LCD_PINS_D5 Input = 0
PIN: 39 Port: G2 E2_ENABLE_PIN Output = 1
PIN: 40 Port: G1 LCD_PINS_D7 Input = 0
PIN: 41 Port: G0 LCD_PINS_D6 Input = 0
PIN: 42 Port: L7 LCD_PINS_ENABLE Output = 0
PIN: 43 Port: L6 BTN_ENC Input = 1
PIN: 44 Port: L5 BEEPER_PIN Output = 0 TIMER5C PWM: 0 WGM: 1 COM5C: 0 CS: 3 TCCR5A: 1 TCCR5B: 3 TIMSK5: 0
PIN: 45 Port: L4 CASE_LIGHT_PIN protected
. PS_ON_PIN protected
PIN: 46 Port: L3 KILL_PIN Input = 1 TIMER5A PWM: 0 WGM: 1 COM5A: 0 CS: 3 TCCR5A: 1 TCCR5B: 3 TIMSK5: 0
PIN: 47 Port: L2 Y_DIR_PIN protected
PIN: 48 Port: L1 X_ENABLE_PIN protected
PIN: 49 Port: L0 SD_DETECT_PIN Input = 0
PIN: 50 Port: B3 AVR_MISO_PIN Input = 1
. MISO_PIN Input = 1
PIN: 51 Port: B2 AVR_MOSI_PIN Output = 1
. MOSI_PIN Output = 1
PIN: 52 Port: B1 AVR_SCK_PIN Output = 0
. SCK_PIN Output = 0
PIN: 53 Port: B0 AVR_SS_PIN Output = 1
. SDSS Output = 1
. SS_PIN Output = 1
PIN: 54 Port: F0 (A 0) Y_STEP_PIN protected
PIN: 55 Port: F1 (A 1) Y_ENABLE_PIN protected
PIN: 56 Port: F2 (A 2) Z_DIR_PIN protected
PIN: 57 Port: F3 (A 3) Z_STEP_PIN protected
PIN: 58 Port: F4 (A 4) <unused/unknown> Analog in = 447 Input = 0
PIN: 59 Port: F5 (A 5) <unused/unknown> Analog in = 383 Input = 0
PIN: 60 Port: F6 (A 6) <unused/unknown> Analog in = 343 Input = 0
PIN: 61 Port: F7 (A 7) <unused/unknown> Analog in = 490 Input = 0
PIN: 62 Port: K0 (A 8) Z_ENABLE_PIN protected
PIN: 63 Port: K1 (A 9) <unused/unknown> Analog in = 556 Input = 1
PIN: 64 Port: K2 (A10) <unused/unknown> Analog in = 745 Input = 1
PIN: 65 Port: K3 (A11) TEMP_BED_PIN protected
PIN: 66 Port: K4 (A12) <unused/unknown> Analog in = 1023 Input = 1
PIN: 67 Port: K5 (A13) TEMP_2_PIN Analog in = 1023
PIN: 68 Port: K6 (A14) TEMP_1_PIN Analog in = 1023
PIN: 69 Port: K7 (A15) TEMP_0_PIN
في M43
، تعني التسمية "المحمية" أن الدبوس محمي من التغيير بواسطة Marlin.
التعليق الأكثر فائدة
يمكنك تمكين
PINS_DEBUGGING
ثم إرسالM43
للحصول على قائمة كاملة بجميع المسامير وما هي إمكانياتها. إذا كان لديك عدد كافٍ من المسامير غير المستخدمة القادرة على المقاطعة ، فقد تتمكن من نقل نقاط التوقف الخاصة بك إلى تلك.