美文网首页我爱编程
Arduino uno r3 使用 ESP8266 wifi 模

Arduino uno r3 使用 ESP8266 wifi 模

作者: 奔跑在春风里 | 来源:发表于2018-05-16 09:43 被阅读0次

    我是搞软件开发的,刚开始玩硬件,完全是小白,好多知识都不懂。花了很长时间才把ESP8266配置好。把我的经验分享出来,供新手参考。

    一.模块连接

    ESP8266 模块长这个样子 引脚说明
    • TX:串口写
    • GND:接地
    • CH_PD:高电平为可用,低电平为关机
    • GPIO2:可悬空
    • RST:重置,可悬空
    • GPIO0:上拉为工作模式,下拉为下载模式,可悬空
    • VCC:3.3V(切不可接5V,烧片)
    • RX:串口读
    ESP8266 Arduino Uno
    TX 1(TX1)
    GND GND
    CH_PD 串联10KΩ电阻连接3.3v
    GPIO2 -
    RST -
    GPIO0 -
    VCC 3.3V
    RX 0 (RX0)

    8个口接5个就可以。

    可以参考这篇文章,说的很详细esp8266-wifi模块-使用实录-一-连接路由器

    其中有几点要注意

    • ardunio 的串口分为硬串口软串口,我们第一步连接的01是硬串口。后面会说如何用软串口。
    • CH_PD需要串联一个10kΩ的电阻后,再连接3.3v的电源
    • 下面是测试ESP8266是否连接正确的代码,要注意千万别加Serial.begin(9600)这行代码,否者ready消息是不会显示的。
    const int tx = 1;
    const int rx = 0;
    void setup() {
      //Serial.begin(9600); 注意!!千万别加这行代码
      pinMode(rx,INPUT_PULLUP);
      pinMode(tx,INPUT_PULLUP); 
    
    }
    
    void loop() {
    
    }
    
    连接vcc后,如果接线正确会在消息窗里显示ready消息

    每个版本的ESP8266波特率不同,一般是115200,你可以多测试几次。

    可以在串口监视器里使用AT命令测试模块

    ESP8266 的 AT 命令可以在网上查,比如下面的这几个

    AT+RST 重启模块
    AT+GMR 查看版本信息
    AT+CIOBAUD=9600 修改波特率
    T+CWMODE? //查询工作模式 1.Station (客户端模式)2.AP (接入点模式)3.Station+AP (两种模式共存)
    

    比如输入了AT+CIOBAUD=9600以后,串口监视器就要选择9600波特率才能看到模块的信息了。

    二.使用软串口通讯

    先按照刚才的步骤,把ESP8266 的波特率改为9600。之前我们连接的Arduino上的01是硬串口,我看网上的教程都要用软串口才能通讯,所以需要修改一下。

    注意,使用软串口连接导线时,模块的rx连接Arduinotx,模块的tx连接Arduinorx

    比如下面的代码,设置arduino上的8号口为rx9号口为tx。就需要把ESP8266rx连接到Arduino9号口上,模块的tx连接Arduino8号口上。

    #include <SoftwareSerial.h>
    SoftwareSerial mySerial(8, 9); // RX, TX
    void setup() {
      Serial.begin(9600);
      mySerial.begin(9600);
      delay(1000);
      Serial.println("Goodnight  moon2");
      mySerial.println("AT+GMR");
    }
    void loop() {
      while (mySerial.available()) {
        Serial.write(mySerial.read());
      }
    }
    
    
    使用上面的测试代码,就可以和模块通讯了

    相关文章链接
    Arduino和ESP8266通信问题,如何获取AT指令返回数据?
    ESP8266在arduino中编程问题
    用Arduino使用esp8266的Wi-Fi TCP透传和POST请求
    基于arduino ide for esp8266 实现tcp client
    Arduino-串口函数Serial
    Javascript 控制 arduino
    如何在arduino中添加多个自定义类文件
    arduino的String类
    arduino 数组(Array)和字符串(string)学习
    逗号分隔文本到数组的两种方法
    arduino字符串函数
    Arduino 字符串处理
    Arduino软串口调试
    Arduino esp8266 wifi模块发送http请求

    ESP8266通讯使用的AT指令

    相关文章

      网友评论

        本文标题:Arduino uno r3 使用 ESP8266 wifi 模

        本文链接:https://www.haomeiwen.com/subject/xrqnrftx.html