Serial.print(val)
–串口输出数据并。
Serial.println(val)
–串口输出数据并换行。
Serial.available()
–判断串口缓冲区的状态,返回从串口缓冲区读取的字节数。
Serial.read()
–读取串口数据,一次读一个字符,读完后删除已读数据。当没有可读数据时返回-1,整数类型。
Serial.readBytes(buffer, length)
–从串口读取指定长度的字符到缓存数组,返回存入缓存的字符数。
–buffer:缓存变量。
–length:设定的读取长度。
#include <Arduino.h>
/*
int counter = 0;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
counter = counter + 1;
Serial.print(counter);
Serial.print(":");
Serial.println("Hellow World");
delay(1000);
}
*/
void setup(){
pinMode(2, OUTPUT);
Serial.begin(115200, SERIAL_8N1);
while(!Serial){
;//等待串口连接
}
Serial.println("我准备好了!");
}
char ch = 0;
void loop(){
ch = char(Serial.read());
if(ch == 'A'){
digitalWrite(2, LOW);
delay(1000);
Serial.println(ch);
}else{
digitalWrite(2, HIGH);
}
}
#include <SoftwareSerial.h>
//自定义串口 (RX, TX) # D6接TX D7接RX
SoftwareSerial MySerial(D6, D7);
String data0; // 接受内部数据
String data1; // 接受外部数据
String receive0() { // 接受内部数据
String data;
if (Serial.available()) {
data = (char)Serial.read();
data += receive0();
}
return data;
}
String receive1() { // 接受外部数据
String data;
if (MySerial.available()) {
data = (char)MySerial.read();
data += receive1();
}
return data;
}
void setup() {
Serial.begin(115200); //内部串口初始化
MySerial.begin(115200); //外部串口初始化
}
void loop() {
data1 = receive1();
if (data1 != "") {
Serial.println(data1); //接受的外部数据内部打印
}
data0 = receive0();
if (data0 != "") {
MySerial.println(data0); //接受的内部数据外部打印
}
}
标签:ESP8266,void,串口,println,Serial,data,String
From: https://www.cnblogs.com/lodger47/p/18347873