From ebc35019be6f6d56a83f611ba4f3fcf14cf3eb99 Mon Sep 17 00:00:00 2001 From: "David A. Mellis" Date: Wed, 6 Mar 2013 17:49:44 -0500 Subject: [PATCH] Use analogPinToChannel() macro if present for ATtiny25/45/85. This allows use of A0, A1, A2, A3 constants and for them to be mapped to the appropriate analog input channel. It should only be used if the macro is actually defined. --- hardware/arduino/cores/arduino/wiring_analog.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hardware/arduino/cores/arduino/wiring_analog.c b/hardware/arduino/cores/arduino/wiring_analog.c index 23b01c65a..3f19c7f88 100644 --- a/hardware/arduino/cores/arduino/wiring_analog.c +++ b/hardware/arduino/cores/arduino/wiring_analog.c @@ -47,6 +47,8 @@ int analogRead(uint8_t pin) if (pin >= 18) pin -= 18; // allow for channel or pin numbers #elif defined(__AVR_ATmega1284P__) || defined(__AVR_ATmega644P__) if (pin >= 24) pin -= 24; // allow for channel or pin numbers +#elif defined(analogPinToChannel) && (defined(__AVR_ATtiny25__) || defined(__AVR_ATtiny45__) || defined(__AVR_ATtiny85__)) + pin = analogPinToChannel(pin); #else if (pin >= 14) pin -= 14; // allow for channel or pin numbers #endif