Use prior endstop pin-to-interrupt macros (#15771)

This commit is contained in:
Giuliano Zaro
2019-11-04 22:24:41 +01:00
committed by Scott Lahteine
parent 1fe0646d25
commit 35cd545106
2 changed files with 46 additions and 12 deletions

View File

@ -2,16 +2,17 @@
// Compile with the same build settings you'd use for Marlin.
#if defined(ARDUINO_AVR_MEGA2560) || defined(ARDUINO_AVR_MEGA)
#define moreDigitalPinToPCICR(p) digitalPinToPCICR(WITHIN(p, 14, 15) ? 10 : p)
#else
#define moreDigitalPinToPCICR(p) digitalPinToPCICR(p)
#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 (moreDigitalPinToPCICR(i) || (int)digitalPinToInterrupt(i) != -1) {
if (digitalPinToPCICR(i) || (int)digitalPinToInterrupt(i) != -1) {
for (int j = 0; j < NUM_ANALOG_INPUTS; j++) {
if (analogInputToDigitalPin(j) == i) {
Serial.print('A');