基于Arduino IDE开发的ESP8266(ESP-12F)项目3 ——串口通信

 本次写这篇文章是自己做一下学习记录,如有错误,还请大家斧正!!!

日后及时修正!感谢支持!

 欢迎大家的关注        点赞        收藏        留言


目录

前言

        一、新建工程

        二、项目函数介绍                                         

        三、代码编写

        四、编译、烧录、运行

        五、代码进阶

结束语


前言

        串口作为每一位单片机开发者查看其运行状态的一项有效手段、无论你是学习51单片机还是STM32等,一部分人喜欢使用串口作为其开发项目,调试单片机的一项有效手段。可以说串口的使用可以让自己的程序开发事半功倍。那接下来就带大家走入串口的教程。


 一、新建工程

        首先打开Arduino IDE,点击 文件——> 点击新建,就会生成一个新的工程模板了。 (还可以点任务栏中“折了一角的书页”快速新建)。

 然后给项目重命名,然后再保存。

 这样一个新的工程就建好了。


二、项目基本函数介绍

1. 常用函数

  (1)Serial.begin(speed)函数

Serial.begin(speed)
功能使用串口与计算机通信,需要先使用Serial.begin() 初始化ESP8266的串口通信功能
作用初始化串口,可配置串口的各项参数
入口参数波特率

        串口通信通常会使用以下波特率:
300、600、1200、2400、4800、9600、14400、19200、28800、38400、57600、115200

此函数下默串口模式为:数据位8,无偶校验,停止位1。

        想配置串口模式其函数为:

Serial.begin(speed, config)
参数说明
speed波特率
config数据位、校验位、停止位配置

函数使用:

        例如Serial.begin(9600,SERIAL_8E2) 是将串口波特率设为9600,数据位8,偶校验,停止位2。

下面就是串口可以用到的模式:

config可选配置数据位校验位停止位
SERIAL_5N151
SERIAL_6N161
SERIAL_7N171
SERIAL_8N1(默认配置)81
SERIAL_5N252
SERIAL_6N262
SERIAL_7N272
SERIAL_8N282
SERIAL_5E151
SERIAL_6E161
SERIAL_7E171
SERIAL_8E181
SERIAL_5E252
SERIAL_6E262
SERIAL_7E272
SERIAL_8E282
SERIAL_5O151
SERIAL_6O161
SERIAL_7O171
SERIAL_8O181
SERIAL_5O252
SERIAL_6O262
SERIAL_7O272
SERIAL_8O282

(2)Serial.print()函数

Serial.print(val)
功能串口初始化完成后,我们便可以使用Serial.print() 向计算机发送信息了。
作用向计算机打印信息
val是你要输出的数据,各种类型的数据均可

还有个进阶函数:

Serial.println(val)
作用输出完指定数据后,再输出一组回车换行符

(3)Serial.read()函数

作用接收串口数据

2.  串口的其他函数         

        其他函数数量多,功能复杂,在这里就不过多介绍了!下面给出地址教给大家自己学习吧!

下面给出学习的地址:

串口其他函数 (arduino.cn)icon-default.png?t=M666https://wiki.arduino.cn/?file=005-%E4%B8%B2%E5%8F%A3%E9%80%9A%E4%BF%A1/004-%E5%85%B6%E4%BB%96%E5%87%BD%E6%95%B0


 三、代码编写

 

        可以看见我的开发板的上带的CH340接的是板子上的串口0,也就是GPIO1、GPIO3引脚。

        示例代码如下:

int counter=0; // 计数器

void setup() {
// 初始化串口
  Serial.begin(9600);
}

void loop() {
  // 每loop循环一次,计数器变量加1
  counter = counter+1;
  // 输出变量
  Serial.print(counter);
  // 输出字符
  Serial.print(":");
  // 输出字符串;
  Serial.println("Hellow World");
  delay(1000);
}

四、编译、烧录、运行

        在我前一篇博文就介绍了如何编译、烧录,这里就不再过多赘述了,还望谅解!

 这里就可以看见串口打印以计数递增的顺序打印Hello Word。


 五、代码进阶

        通过电脑串口发送字符控制LED灯的电亮。

接下来就演示进阶示例代码:

void setup() {
  // put your setup code here, to run once:
  pinMode(2,OUTPUT);
  Serial.begin(115200,SERIAL_8N1);
  while (!Serial) {
        ; // wait for serial port to connect. 等待串口连接。
      }

  Serial.println("我准备好了!");
}

char ch=0;

void loop() {
  // put your main code here, to run repeatedly:
  
//  Serial.print("helloward!");
//  Serial.println("我准备好了!");
  ch=char(Serial.read()); 
  if(ch=='A')
  {
      digitalWrite(2,LOW);
      delay(1000);
      Serial.println(ch);
  }
  else
  {
      digitalWrite(2,HIGH);
  }
}

现象:


结束语

        关于此次基于Arduino IDE开发的ESP8266(ESP-12F)项目3 ——串口通信的介绍就讲到这里了,如果什么问题请再评论区留言。

        接下来会陆陆续续发布一些其他的教程,敬请期待!感谢大家的支持!如有觉得这篇文章对你有所帮助的,还请点赞、收藏吧!

  • 11
    点赞
  • 77
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值