From e8701195e66f2d27ffe17fb514eae8173795aaf7 Mon Sep 17 00:00:00 2001 From: Georgiy Bondarenko <69736697+nehilo@users.noreply.github.com> Date: Thu, 4 Mar 2021 22:54:23 +0500 Subject: Initial commit --- .../pin_interrupt_test/pin_interrupt_test.ino | 32 ++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 buildroot/share/pin_interrupt_test/pin_interrupt_test.ino (limited to 'buildroot/share/pin_interrupt_test') diff --git a/buildroot/share/pin_interrupt_test/pin_interrupt_test.ino b/buildroot/share/pin_interrupt_test/pin_interrupt_test.ino new file mode 100644 index 0000000..6dcfb67 --- /dev/null +++ b/buildroot/share/pin_interrupt_test/pin_interrupt_test.ino @@ -0,0 +1,32 @@ +// Search pins usable for endstop-interrupts +// Compile with the same build settings you'd use for Marlin. + +#if defined(ARDUINO_AVR_MEGA2560) || defined(ARDUINO_AVR_MEGA) + #undef digitalPinToPCICR + #define digitalPinToPCICR(p) ( ((p) >= 10 && (p) <= 15) || \ + ((p) >= 50 && (p) <= 53) || \ + ((p) >= 62 && (p) <= 69) ? (&PCICR) : nullptr) +#endif + +void setup() { + Serial.begin(9600); + Serial.println("PINs causing interrupts are:"); + for (int i = 2; i < NUM_DIGITAL_PINS; i++) { + if (digitalPinToPCICR(i) || (int)digitalPinToInterrupt(i) != -1) { + for (int j = 0; j < NUM_ANALOG_INPUTS; j++) { + if (analogInputToDigitalPin(j) == i) { + Serial.print('A'); + Serial.print(j); + Serial.print(" = "); + } + } + Serial.print('D'); + Serial.println(i); + } + } + Serial.println("Arduino pin numbering!"); +} + +void loop() { + // put your main code here, to run repeatedly: +} -- cgit v1.2.3