ESP8266串口WiFi扩展板详解
产品简介
ESP8266串口WiFi扩展板是深圳四博智联科技有限公司开发的一款基于乐鑫ESP8266的超低功耗的UART-WiFi模块,兼容Arduino UNO、Mega等标准主板,可以方便地进行二次开发,加速产品原型设计。
基于乐鑫ESP8266模块,实现串口转WiFi功能。模块具备以下特点:
1、 WiFi采用工业级芯片ESP8266,模块为ESP-12E带金属屏蔽罩,强抗干扰能力;
2、 标准引脚兼容Arduino Uno、Mega2560等主控板,Arduino与UNO连接采用电压转换芯片,使得3.3V和5V兼容;
3、 串口采用双路拨码开关进行控制,使得扩展板既可以单独作为Arduino Uno扩展板使用,也可以作为ESP8266扩展板使用;
4、 真正串口WiFi,Arduino程序无需任何配置;
5、 基于WebServer配置WiFi参数和串口参数;
6、 可作为独立的ESP8266开发板使用,下载官方AT指令固件、NodeMCU开源固件等;
7、 可作为独立的Arduino Uno扩展板使用,引脚全部引出。
更多的Doit串口WiFi模块 扩展板、驱动板资料,可以参考:http://www.doit.am,https://szdoit.taobao.com/。
技术规格
- 支持无线802.11 b/g/n 标准;
- 支持STA/AP两种工作模式;
- 内置TCP/IP协议栈,可以配置一个socket;
- 支持标准TCP/UDP Server和Client;
- 串口波特率支持: 1200/2400/4800/9600/19200/38400/57600/74800/ 115200 bps;
- 串口数据位:5/6/7/8位;
- 串口奇偶校验:无;
- 串口停止位:1/2位;
- 标准Arduino UNO、Mega引脚间距;
- 引出Arduino Pin 2/3/4/5/6/7/8/9/10/11/12/13;
- 引出ESP8266 GPIO 0/2/4/5/9/10/12/13/14/15/16/ADC/EN/UART TX/UART RX;
- RESET复位;
- KEY按键复用配置功能;
- 两位拨码开关实现Arduino和ESP8266串口扩展切换;
- WiFi工作电流:持续发送:≈70mA(200mA MAX),待机:<200uA;
- 无线传输速率:110-460800bps;
- 工作温度:-40℃~+125℃
- 模块重量:约20g
接口定义
本扩展板提供PCB视图所示的接口引脚,每个管脚功能均丝印在线路板上,具体定义如下:
指示灯含义
ESP8266串口WiFi扩展板有两个LED指示灯。红色为电源指示常亮LED。蓝色为多功能指示灯,其具体含义如下:
快速开始
本节使用两个案例快速配置ESP8266串口WiFi,实现串口透传功能。
进入配置模式
扩展板在出厂的时候设置为配置模式,必须设置后才能开始透传使用。此外,如果扩展板已经配置工作在透传模式,可以通过长按KEY按键超过一秒钟进入配置模式,重新对模块进行设定。
1, 模块上电,在配置模式下模块WiFi信号:“DoitWiFi_Config”。密码为:“12345678”。
2, 在浏览器输入WiFi扩展板地址:192.168.4.1打开配置页面。 如下图所示。
WiFi扩展板内置的WebServer支持配置串口参数、ESP8266的WiFi工作模式(AP、STA)、网络参数设置等。支持自动或手动扫描AP列表。
3,在此无需进行任何更改。直接点击“Submit”按钮提交。提示成功。
提交后,模块会自动重启,进入AP模式,设置串口参数为9600,n,8,1。WiFi工作模式为热点(AP),ssid为“DoitWiFi_Ser2Net”,密码为“12345678”。建立TCP Server,监听端口为9000。这是WiFi模块的出厂默认配置。如果使用“FactorDefault”,同样会配置为这些参数。Arduino数据转WiFi
完成上一节步骤后,按照如下简单步骤实现数据透传。
步骤如下:
1,将WiFi扩展板插入Arduino主板的扩展插槽中。将拨码开关的1、2均拨到OFF位置,断开WiFi扩展板与Arduino的串口连接。
2,将下列代码下载到Arduino中。该代码将Arduino的串口初始化为9600,n,8,1。
1. void setup()2. {3. Serial.begin(9600);4. }5. void loop()6. {7. delay(1000);8. Serial.println("hello ESP8266 WiFi");9. }
3,将拨码开关1/2均拨到ON位置。连接WiFi扩展板和Arduino的串口。上电。
4,笔记本搜索并连接到WiFi扩展板的WiFi信号:“DoitWiFi_Ser2Net”,密码为“12345678”。
5,在电脑上运行tcp udp调试工具。
推荐使用:tcp udp debugger,下载地址:http://bbs.doit.am/forum.php?mod=viewthread&tid=174&page=1&extra=#pid206
运行软件,建立一个tcp客户端连接,DestIP地址为192.168.4.1,Port为9000。本地端口LocalPort设置为Auto。


连接后,可以看到Arduino每隔1秒发送出来的数据,实现了串口数据向网络数据的传送。

连接远程服务器
本例使用Doit的公网TCP工具测试WiFi扩展板与远程服务器通信的功能。
1,从Doit的TCP服务器获取一个临时IP和端口。 此处获得的IP为:“115.29.109.104”,端口为“6533”。

关于TCP公网测试工具更多资料可参考:http://bbs.doit.am/forum.php?mod=viewthread&tid=12&extra=page%3D1
2,WiFi扩展板进入配置模式 WiFi扩展板上电后,长按KEY按键超过一秒钟。连接“DoitWiFi_Config”。密码为:“12345678”。在浏览器中输入“192.168.4.1”,进入WebServer。
3,配置WiFi扩展板工作在节点模式(STA模式),使其连接到可上网的无线路由器
“WiFi Mode”选择“STA”。
此处无线路由器为:“MIFI_A6_cd1c”。密码为“mifi66666666”。
WebServer在加载页面的时候,会自动刷新当前ESP8266搜索到的AP列表。在“AP List中显示”。在选择“STA”时,“Refresh”按钮使能,使用该按钮可刷新扫描结果。

4,配置WiFi扩展板的网络参数
Socket Type:选择“Client”。
Transport Type:选择“TCP”。
Remote IP:“115.28.109.104”。
Remote Port:“6533”。

5,“Submit”提交生效。

6,在可以上网的计算机上运行tcp udp调试工具。 推荐使用:tcp udp debugger,下载地址:http://bbs.doit.am/forum.php?mod=viewthread&tid=174&page=1&extra=#pid206
运行软件,建立一个tcp客户端连接,DestIP地址为“115.29.109.104”,Port为“6533”。本地端口LocalPort设置为Auto。

7,在TCP 调试工具可以看到arduino发送的数据。实现了将arduino的数据发送到远程TCP服务器。

工作模式切换
ESP8266串口WiFi扩展板工作流程如下图所示。

串口参数设置
ESP8266串口WiFi扩展板的串口可配置参数见下表。

WiFi模式设置
ESP8266串口WiFi扩展板的WiFi模式可以配置为AP或者STA模式。
在WebServer中,如果选择“AP”模式,“Refresh”按钮和“AP List”将会被禁止使用。此时可以配置AP模式下的SSID和密码。

如果选择“STA”模式,“Refresh”按钮和“AP List”将会被使能。通过“Refresh”按钮可以手动扫描热点SSID,扫描结果将会自动出现在“AP List”下拉列表框中。

网络设置
网络设置可以设置为服务器(Server)或者客户端(Client)模式。WiFi扩展模块只支持一个Socket。
当设置为“Server”时,“Remote IP”输入框被禁止。“Local Port”处需要填写监听端口。

当设置为“Client”时,“Remote IP”输入框被使能。远程IP和连接端口。

网络协议可以根据需要选择TCP或者UDP。
恢复出厂设置
点击Webserver 中“FactoryDefault”恢复出厂设置(STA模式下需要长按Key按钮就如配置模式)。出厂设置见下表

购买及技术服务
本串口WiFi扩展板购买地址:https://szdoit.taobao.com/。
购买本产品后,如果想获得本产品的最新信息或者其他产品信息,你可以访问我们的网站:http://www.doit.am
其他链接:
ESP8266透传固件:http://bbs.doit.am/forum.php?mod ... =179&extra=page%3D1
应用案例:http://bbs.doit.am/forum.php?mod ... =177&extra=page%3D1
ESP8266串口WiFi扩展板详解的更多相关文章
- C#串口通信程序详解
C#串口通信程序详解 摘要:创建C#串口通信程序需要注意什么呢?创建C#串口通信程序的步骤是什么?那么本文就向你详细介绍创建C#串口通信程序集体的内容. 在.NET平台下创建C#串口通信程序,.NET ...
- 玩转X-CTR100 l STM32F4 l ESP8266串口WIFI模块
我造轮子,你造车,创客一起造起来!更多塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ]- ESP8266是一款非常火的WIFI模块,性价 ...
- STM32 Bootloader基于ymodem传输协议串口IAP升级详解
硬件:stm32f103cbt6 软件:STM32F10x_StdPeriph_Lib_V3.5.0 文章目录 1 预备知识 2 Bootloader 2.1 启动流程 2.2 校验跳转地址是否有效 ...
- 创建C#串口通信程序详解
在.NET平台下创建C#串口通信程序,.NET 2.0提供了串口通信的功能,其命名空间是System.IO.Ports.这个新的框架不但可以访问计算机上的串口,还可以和串口设备进行通信.我们将使用标准 ...
- STM32 串口功能 库函数 详解和DMA 串口高级运用(转载)
数据传输时要从支持那些相关的标准?传输的速度?什么时候开始?什么时候结束?传输的内容?怎样防止通信出错?数据量大的时候怎么弄?硬件怎么连接出发,当然对于stm32还要熟悉库函数的功能 具起来rs232 ...
- 串口VMIN VTIME 详解
原文地址: 以前跟着做过VxWorks的开发,主要通信方式是串口,因为底层BSP包已经做好了,串口通信非常简单.后来接触Linux,在一块OK6410上跑Linux串口通信,才发现原来天真的以为甚是简 ...
- linux 串口通信 编程详解
计算机串口的引脚说明 序号 信号名称 符号 流向 功能 3 发送数据 TXD DTE→DCE DTE发送串行数据 2 接收数据 RXD DTE←DCE DTE 接收串行数据 7 请求发送 RTS DT ...
- ESP8266使用详解(AT,LUA,SDK)
https://www.cnblogs.com/yangfengwu/p/10100152.html 8266综合开发教程(LUA) https://www.cnblogs.c ...
- Linux串口编程详解(转)
串口本身,标准和硬件 † 串口是计算机上的串行通讯的物理接口.计算机历史上,串口曾经被广泛用于连接计算机和终端设备和各种外部设备.虽然以太网接口和USB接口也是以一个串行流进行数据传送的,但是串口连接 ...
随机推荐
- Poj_1011_Sticks(剪枝)
一.Description 乔治拿来一组等长的木棒,将它们随机地砍断,使得每一节木棍的长度都不超过50个长度单位.然后他又想把这些木棍恢复到为裁截前的状态,但忘记了初始时有多少木棒以及木棒的初始长度. ...
- HDU1875(最小生成树)
畅通工程再续 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Subm ...
- XCode工程中 Project 和 Targets区别
转自:http://blog.csdn.net/zhaozy55555/article/details/8557175 project就是一个项目,或者说工程,一个project可以对应多个targe ...
- lwip【6】LWIP使用经验
LWIP使用经验 一 LWIP内存管理 LWIP的内存管理使用了2种方式:内存池memp和内存堆mem,如图1所示. 内存池的特点是预先开辟多组固定大小的内存块组织成链表,实现简单,分配和回收速度快, ...
- 24.集成ASP.NETCore Identity
正常的情况下view页面的错误的显示应该是这么去判断的 这里我们就不加判断为了,直接用这个div 显示就可以了.当有错误会自动显示在div内 asp.net core Identity加入进来 这里用 ...
- svn git 的区别(别再问我了)
这篇主要是谈谈两者的区别,至于谁优谁劣看官自己思考吧! 把第一条理解到位思想到位了做起来才会有的放矢,其他几条都是用的时候才能体会到 1) 最核心的区别Git是分布式的,而Svn不是分布的.能理解这点 ...
- IT兄弟连 Java语法教程 变量2
变量的作用域和生命周期 到目前为止,使用的所有变量都是在main()方法开始时声明的,然而,Java允许在任何代码块(代码块以开花括号开始,以闭花括号结束)中声明变量,代码块定义了作用域.因此,每当开 ...
- vue+element级联选择器对接后台数据
1.后台接口返回的数据肯定要和级联选择器的数据一致,所以我专门弄个model存放返回的值,如下:/** * @Auther: GGDong * @Date: 2019/4/3 10:30 */@Get ...
- js new Date("2016-07-01 08:00:00") 格式在IE内核浏览器中显示NaN的问题
js new Date("2016-07-01 08:00:00") 格式在IE内核浏览器中显示NaN的问题 废话就不多了,var dd = new Date("2016 ...
- xml布局文件
https://blog.csdn.net/u013475386/article/details/44339035 gravity写在容器中中 layout_gravity写在控件中 layout_m ...