我们在做项目的时候通常使用一个串口就可以了,但是如果使用到了蓝牙透传,那么一个串口就显得力不从心了,一个串口负责和蓝牙通信进行透传,我们还要使用另一个串口打印调试信息;为此我们使用一个软件模拟串口的库:SoftwareSerial.h,首先我们安装这个库:
我们来看一个例子:
#include <SoftwareSerial.h>
SoftwareSerial hf(14, 12); //第一个参数为RX,第二个参数为TX
void setup() {
// initialize both serial ports:
Serial.begin(9600);
hf.begin(9600);
}
void loop() {
// read from port 0, send to port 1:
if (Serial.available()) {
int inByte = Serial.read();
Serial.write(inByte);
hf.write(inByte);
}
}
我这里只是把蓝牙透传的数据打印到串口调试助手上,至于读的部分和自带的Serial的很相似,我这里的Serisl用到的IO口是NodeMCU上的RX,TX。另外需要注意的是ESP8266的IO口和Arduino的对应关系;如果你不清除,请看这篇博客。