@@ -675,7 +675,7 @@ writePort(port, value, bitmask): Write an 8 bit port.
675675// Sanguino/Melzi, e.g. Creality Ender-3
676676#elif defined(__AVR_ATmega1284P__ )
677677#define TOTAL_ANALOG_PINS 8
678- #define TOTAL_PINS 32
678+ #define TOTAL_PINS 32
679679#define VERSION_BLINK_PIN 13
680680#define PIN_SERIAL1_RX 8 //PD0
681681#define PIN_SERIAL1_TX 9 //PD1
@@ -999,6 +999,31 @@ writePort(port, value, bitmask): Write an 8 bit port.
999999#define PIN_TO_PWM (p ) PIN_TO_DIGITAL(p)
10001000#define PIN_TO_SERVO (p ) (p) // deprecated since v2.4
10011001
1002+ //Arduino Uno Wifi Rev2
1003+ #elif defined(__AVR_ATmega4809__ )
1004+ #define TOTAL_ANALOG_PINS NUM_ANALOG_INPUTS //6
1005+ #define TOTAL_PINS 41 // 14 digital + 6 analog + 6 reserved + 10 internal used + 2 I2C + 3 SPI
1006+ #define TOTAL_PORTS 3
1007+ #define VERSION_BLINK_PIN LED_BUILTIN //25
1008+ #define PIN_SERIAL1_RX 0
1009+ #define PIN_SERIAL1_TX 1
1010+ #define PIN_SERIAL2_RX 23
1011+ #define PIN_SERIAL2_TX 24
1012+ #define PIN_SERIAL0_RX 26
1013+ #define PIN_SERIAL0_TX 27
1014+ #define IS_PIN_DIGITAL (p ) (((p) >= 0 && (p) < 20) || (p) == 25)
1015+ #define IS_PIN_ANALOG (p ) ((p) >= 14 && (p) < 19)
1016+ #define IS_PIN_PWM (p ) digitalPinHasPWM(p)
1017+ #define IS_PIN_SERVO (p ) ((p) >= 0 && (p) < MAX_SERVOS)
1018+ #define IS_PIN_I2C (p ) ((p) == 20 || (p) == 21)
1019+ #define IS_PIN_SPI (p ) ((p) == SS || (p) == MOSI || (p) == MISO || (p) == SCK)
1020+ #define IS_PIN_SERIAL (p ) ((p) == 23 || (p) == 24 || (p) == 26 || (p) == 27)
1021+ #define PIN_TO_DIGITAL (p ) (p)
1022+ #define PIN_TO_ANALOG (p ) ((p) - 14)
1023+ #define PIN_TO_PWM (p ) PIN_TO_DIGITAL(p)
1024+ #define PIN_TO_SERVO (p ) (p)
1025+
1026+
10021027// anything else
10031028#else
10041029#error "Please edit Boards.h with a hardware abstraction for this board"
0 commit comments