兼容Wemos D1和Arduino开发板的方法

我买了一块Wemos D1开发板,发现其针脚次序比较乱,使用不方便。


兼容Wemos D1和Arduino开发板的方法_第1张图片
WEMOS D1.png

可以通过一些已经定义的常量使用,比如使用D0D1而不是165这样的针脚。但是Arduino板就没有定义这些针脚,我们可以自己定义,添加几行下面的代码就可以兼容Arduino板和D1板了。

#ifdef CORE_ESP8266_FEATURES_H
#define d1board true
#else
#define d1board false
#define RX 0
#define TX 1
#define D0 2
#define D1 3
#define D2 4
#define D3 5
#define D4 6
#define D5 7
#define D6 9
#define D7 10
#define D8 11
#endif

为什么后D6,D7,D8的定义不是按照前面的规律定义为8、9、10引脚呢?因为9、10、11具有PWM功能,优先使用功能多的引脚。

打印这些针脚的值,Arduino 板就不用打印了,这些值是我们自己定义的。

void setup() {
  Serial.begin(9600);
  if (d1board) {
    Serial.println("D1 board");
    Serial.print("RX\t");
    Serial.println(RX);
    Serial.print("TX\t");
    Serial.println(TX);
    Serial.print("D0~D5");
    Serial.println(D0);
    Serial.println(D1);
    Serial.println(D2);
    Serial.println(D3);
    Serial.println(D4);
    Serial.print("D5~D8");
    Serial.println(D5);
    Serial.println(D6);
    Serial.println(D7);
    Serial.println(D8);
  } else {
    Serial.println("Arduino board");
  }
}

void loop() {
}

你可能感兴趣的:(兼容Wemos D1和Arduino开发板的方法)