[gnoduino: 213/237] Fixed handling of Ax constants on Leonardo



commit f4ece626b2c180df8a7afd579dbd16f931cf8d73
Author: Zach Eveland <zeveland blacklabel-development com>
Date:   Wed Nov 16 10:49:41 2011 -0500

    Fixed handling of Ax constants on Leonardo
    
    Fixed mistake in assignment and handling of A6-A11 constants.  Renumbered constants for all Ax channels.

 arduino/cores/arduino/wiring_analog.c    |    2 ++
 arduino/variants/leonardo/pins_arduino.h |   26 +++++++++++++-------------
 2 files changed, 15 insertions(+), 13 deletions(-)
---
diff --git a/arduino/cores/arduino/wiring_analog.c b/arduino/cores/arduino/wiring_analog.c
index 2b1f3a0..902b153 100644
--- a/arduino/cores/arduino/wiring_analog.c
+++ b/arduino/cores/arduino/wiring_analog.c
@@ -43,6 +43,8 @@ int analogRead(uint8_t pin)
 
 #if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)
 	if (pin >= 54) pin -= 54; // allow for channel or pin numbers
+#elif defined(__AVR_ATmega32U4__)
+	if (pin >= 18) pin -= 18; // allow for channel or pin numbers
 #else
 	if (pin >= 14) pin -= 14; // allow for channel or pin numbers
 #endif
diff --git a/arduino/variants/leonardo/pins_arduino.h b/arduino/variants/leonardo/pins_arduino.h
index 4d83f88..a64eb17 100644
--- a/arduino/variants/leonardo/pins_arduino.h
+++ b/arduino/variants/leonardo/pins_arduino.h
@@ -45,19 +45,19 @@ const static uint8_t MISO = 17;
 const static uint8_t SCK  = 15;
 
 // Mapping of analog pins as digital I/O
-// A6-A11 are already shared with digital pins
-const static uint8_t A0 = 14;
-const static uint8_t A1 = 15;
-const static uint8_t A2 = 16;
-const static uint8_t A3 = 17;
-const static uint8_t A4 = 18;
-const static uint8_t A5 = 19;
-const static uint8_t A6 = 4;
-const static uint8_t A7 = 6;
-const static uint8_t A8 = 8;
-const static uint8_t A9 = 9;
-const static uint8_t A10 = 10;
-const static uint8_t A11 = 12;
+// A6-A11 share with digital pins
+const static uint8_t A0 = 18;
+const static uint8_t A1 = 19;
+const static uint8_t A2 = 20;
+const static uint8_t A3 = 21;
+const static uint8_t A4 = 22;
+const static uint8_t A5 = 23;
+const static uint8_t A6 = 24;	// D4
+const static uint8_t A7 = 25;	// D6
+const static uint8_t A8 = 26;	// D8
+const static uint8_t A9 = 27;	// D9
+const static uint8_t A10 = 28;	// D10
+const static uint8_t A11 = 29;	// D12
 
 //	__AVR_ATmega32U4__ has an unusual mapping of pins to channels
 extern const uint8_t PROGMEM analog_pin_to_channel_PGM[];



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]