@@ -665,22 +665,29 @@ writePort(port, value, bitmask): Write an 8 bit port.
665665#define PIN_TO_PWM (p ) PIN_TO_DIGITAL(p)
666666#define PIN_TO_SERVO (p ) ((p) - 2)
667667
668- // ESP8266 generic
668+ // ESP8266
669+ // hardware: TX0=1, TX1=2, RX0=3, MISO=12, MOSI=13, SCLK=14, CS=15, A0=17
670+ // board depended defaults: LED_BUILTIN, SDA, SCL
671+ // note: boot mode GPIOs 0, 2 and 15 can be used as outputs (GPIOs 6-11 are in use for flash IO)
669672#elif defined(ESP8266 )
670- #define TOTAL_ANALOG_PINS 0
671- #define TOTAL_PINS 17
672- #define VERSION_BLINK_PIN 4
673- // #define IS_PIN_DIGITAL(p) ((p) == 0 || (p) == 1 || (p) == 2 || (p) == 3 || (p) == 4 || (p) == 5 || (p) == 12 || (p) == 13 || (p) == 14 || (p) == 15 || (p) == 16) //for wifi dont protect serial pins because these things only have 2 pins otherwise
674- #define IS_PIN_DIGITAL (p ) ((p) == 0 || (p) == 2 || (p) == 4 || (p) == 5 || (p) == 12 || (p) == 13 || (p) == 14 || (p) == 15 || (p) == 16)
675- #define IS_PIN_ANALOG (p ) (false)
676- #define IS_PIN_PWM (p ) (false)
677- #define IS_PIN_SERVO (p ) ((p) >= 0 && (p) < MAX_SERVOS)
678- #define IS_PIN_I2C (p ) (false)
679- #define IS_PIN_SPI (p ) (false)
673+ #define TOTAL_ANALOG_PINS 1
674+ #define TOTAL_PINS 18 // 11 digital + 1 analog + 6 inaccessible
675+ #define VERSION_BLINK_PIN LED_BUILTIN
676+ #define PIN_SERIAL_RX 3
677+ #define PIN_SERIAL_TX 1
678+ #define PIN_SERIAL1_TX 2
679+ #define IS_PIN_DIGITAL (p ) (((p) >= 0 && (p) <= 5) || ((p) >= 12 && (p) <= 16))
680+ #define IS_PIN_ANALOG (p ) ((p) == A0)
681+ #define IS_PIN_PWM (p ) IS_PIN_DIGITAL(p)
682+ #define IS_PIN_SERVO (p ) (IS_PIN_DIGITAL(p) && (p) < MAX_SERVOS)
683+ #define IS_PIN_I2C (p ) ((p) == SDA || (p) == SCL)
684+ #define IS_PIN_SPI (p ) ((p) >= 12 && (p) <= 15)
685+ #define IS_PIN_INTERRUPT (p ) (((p) >= 0 && (p) <= 5) || ((p) >= 12 && (p) <= 15))
686+ #define IS_PIN_SERIAL (p ) ((p) == 1 || (p) == 3)
680687#define PIN_TO_DIGITAL (p ) (p)
681- #define PIN_TO_ANALOG (p ) ((p) - 17 )
688+ #define PIN_TO_ANALOG (p ) (p )
682689#define PIN_TO_PWM (p ) PIN_TO_DIGITAL(p)
683- #define PIN_TO_SERVO (p ) p
690+ #define PIN_TO_SERVO (p ) (p)
684691
685692
686693// anything else
0 commit comments