通信接口

[转]Arduino ESP8266调试笔记

字号+ 作者:duino123.com 来源:未知 2016-04-22 23:57 我要评论( )

Arduino ESP8266调试笔记

ESP8266 新款版本使用用简要:

 

此版本若想从FLASH启动进入AT系统,只需中间四个脚接VCC高电平即可,其中GPIO0为高电平代表从FLASH启动,GPIO0为低电平代表进入系统升级状态,此时可以经过串口升级内部固件。

 

GPIO16(RST)可做外部硬件复位使用。

此版本若想从FLASH启动进入AT系统,GPIO0 GPIO2 保持高电平,GPIO15为低电平,其中GPIO0为高电平代表从FLASH启动,

GPIO0为低电平代表进入系统升级状态,此时可以经过串口升级内部固件。

 

GPIO16(RST)可做外部硬件复位使用。

 

一.配置wifi模式

1.Station模式   :station是AP client模式,无线网卡作为接受点的模式(接受)

2.AP模式    :AP是基站的意思,就是发射台的意思,无线路由器(发送)

3.AP兼Station模式

用:AT+CWMODE=x 来配置(x = 1,2,3)

如:AT+CWMODE=2

或者:

unsigned char LYMS[13]={0x41,0x54,0x2B,0x43,0x57,0x4D,0x4F,0x44,0x45,0x3D,0x32,0x0D,0x0A};

(对应的ASCII码)

响应:OK

---------------------------------------------------------------------------

二.设置AP模式下的参数

设置指令 :AT+ CWSAP= <ssid>,<pwd>,<chl>, <ecn>

指令只有在 AP模式开启后有效 
<ssid>字符串参数,接入点名称(路由器发送的无线信号的名字)

<pwd>字符串参数,密码最长 64 字节ASCII 

<chl>通道号 
< ecn >

0 OPEN   ;开放不加密
1 WEP     ;加密
2 WPA_PSK 
3 WPA2_PSK 
4 WPA_WPA2_PSK

(需做进一步了解)

如:AT+CWSAP="ESP8266","0123456789",11,0

或者 

 

unsigned char SZLY[38]={0x41,0x54,0x2B,0x43,0x57,

              0x53,0x41,0x50,0x3D,0x22,0x45,0x53,0x50,

 

0x38,0x32,0x36,0x36,0x22,0x2C,0x22,0x30,0x31,0x32,0x33,0x34,0x35,
0x36,0x37,0x38,0x39,0x22,0x2C,0x31,0x31,0x2C,0x33,0x0D,0x0A};

响应:OK

   ERROR 

1.ESP8266为搜索到的wifi名字

---------------------------------------------------------------------------

三.重新启动

AT+RST

unsigned char RST[8]={0x41,0x54,0x2B,0x52,0x53,0x54,0x0D,0x0A};

响应:OK

注意:一定要等到返回

OK
 

[Vendor:www.ai-thinker.com Version:0.9.2.4]

ready(建议单检测ready)

---------------------------------------------------------------------------

四.启动多连接 

AT+CIPMUX=0;单路连接

AT+CIPMUX=1;多路连接

响应 
如果格式正确且连接成功,返回 
OK 
否则返回 
ERROR

如:AT+CIPMUX=1
unsigned char SZDLJ[13]={0x41,0x54,0x2B,0x43,0x49,0x50,0x4D,0x55,0x58,0x3D,0x31,0x0D,0x0A};

如果连接已经存在,返回 
ALREAY CONNECT

---------------------------------------------------------------------------

五.配置为服务器 

AT+ CIPSERVER=<mode>[,<port>] 

参数说明 
<mode>0 关闭 server模式 
1 开启 server模式 
<port>端口号,缺省值为 333

响应 
OK 
关闭 server需要重启

说明 
开启 server后自动建立 server 监听 
当有 client接入会自动按顺序占用一个连接 
AT+ CIPMUX=1 时才能开启服务器

 

如:AT+CIPSERVER=1,5000 开启TCP服务端口

unsigned char KQFU[21]={0x41,0x54,0x2B,0x43,0x49,0x50,0x53,0x45,

0x52,0x56,0x45,0x52,0x3D,0x31,0x2C,0x35,0x30,0x30,0x30,0x0D,0x0A};

注意:此时软件就可以进行连接了,连接成功返回  Link,断开返回:Unlink

---------------------------------------------------------------------------

六.发送数据

多路连接时

(+CIPMUX=1)

AT+CIPSEND=<id>,<length>

<id>需要用于传输连接的 id号 

<length>数字参数,表明发送数据的长度,最大长度为2048

如:

AT+CIPSEND= 发送的数据

unsigned char FSSJ[11]={0x41,0x54,0x2B,0x43,0x49,0x50,0x53,0x45,0x4E,0x44,0x3D};

---------------------------------------------------------------------------

七.列出当前可用 AP (检测附近家庭wifi)

AT+CWLAP 列出当前可用 AP 
执行指令 
AT+CWLAP 
响应 
终端返回 AP列表 
+ CWLAP: <ecn>,<ssid>,<rssi> 

OK 
ERROR 
参数说明 
< ecn >0 OPEN 
1 WEP 
2 WPA_PSK 
3 WPA2_PSK 
4 WPA_WPA2_PSK 
<ssid>字符串参数,接入点名称 
<rssi>信号强度

如:AT+CWLAP

返回:


busy p...

busy p...

busy p...

busy p...

busy p...
+CWLAP:(4,"FAST_666",-84,"28:2c:b2:29:40:fe",1)
+CWLAP:(4,"zhangjie1",-84,"14:75:90:79:75:77",6)
+CWLAP:(2,"Tenda_3E6650",-59,"c8:3a:35:3e:66:50",11)
+CWLAP:(4,"Demon999",-80,"50:bd:5f:15:ed:29",11)
+CWLAP:(4,"FAST_666666",-84,"e4:d3:32:a9:87:06",11)

OK

 ---------------------------------------------------------------------------

八.加入 AP (连接家庭wifi)

查询命令

AT+ CWJAP?

响应

返回当前选择的AP+ CWJAP:<ssid> 

OK 

设置指令

AT+ CWJAP =<ssid>,< pwd >

响应 
OK 
ERROR 
参数说明 
<ssid>字符串参数,接入点名称 
<pwd>字符串参数,密码最长 64 字节ASCII

如:

AT+CWJAP="Tenda_3E6650","12345678" 

busy p...

busy p...

busy p...

busy p...

OK
AT+CWJAP="CPJ","123456asd" 

busy p...

busy p...

busy p...

busy p...

OK

 

 ---------------------------------------------------------------------------

九.TCP/UDP以及本身IP的设置在自身固件中设置

①.AT指令连接

5.2.2 AT+CIPSTART 建立 TCP 连接或注册 UDP 端口号 
AT+CIPSTART 建立 TCP连接或注册 UDP 端口号 
测试指令 
AT+CIPSTART=? 
响应 
1) 设置 AT+CIPMUX=0 
+CIPSTART:(<type>取值列表),(<IP address>范
围),(<port>范围) 
+CIPSTART:(<type>取值列表),(<domain name>范
围),(<port>范围) 

OK 
2) 设置 AT+CIPMUX=1 
+CIPSTART:(id),(<type>取值列表),(<IP address>范
围),(<port>范围) 
+CIPSTART: (id), (<type>取值列表),(<domain name>范
围),(<port>范围) 


参数说明 
见设置命令 
设置命令 
1)单路连接 
(+CIPMUX=0) 
AT+CIPSTART= 
<type>,<addr>,<port> 

1)多路连接 
(+CIPMUX=1) 
AT+CIPSTART= 
<id><type>,<addr>, 
响应 
如果格式正确且连接成功,返回 
OK 
否则返回 
ERROR 
如果连接已经存在,返回 
ALREAY CONNECT 

参数说明 
<id> 0-4 连接的 id 号

 ②

知识点补充:无线AP模式

  什么是无线AP :    无线AP,即Access Point,也就是无线接入点。简单来说无线AP相当于一个无线集线器(HUB),它主要是提供无线工作站对有线局域网和有线局域网对无线工作站的访问,在访问接入点覆盖范围内的无线工作站可以通过它进行相互通信。通俗的讲,无线AP是无线网和有线网之间沟通的桥梁。由于无线AP的覆盖范围是一个向外扩散的圆形区域,因此,应当尽量把无线AP放置在无线网络的中心位置,而且各无线客户端与无线AP的直线距离最好不要超过太长,以避免因通讯信号衰减过多而导致通信失败。但无线AP不具备路由功能,也就是说它是不能带用户上网的。  

  目前的无线AP可分为两类:单纯型AP和扩展型AP。    单纯型AP由于缺少了路由功能,相当于无线交换机,仅仅是提供一个无线信号发射的功能。它的工作原理是将网络信号通过双绞线传送过来,经过无线AP的编译,将电信号转换成为无线电讯号发送出来,形成无线网络的覆盖。根据不同的功率,网络覆盖程度也是不同的,一般无线AP的最大覆盖距离可达400米。    扩展型AP就是常说的无线路由器。无线路由器,就是带有无线覆盖功能的路由器,它主要应用于用户上网和无线覆盖。通过路由功能,可以实现家庭无线网络中的Internet连接共享,也能实现ADSL和小区宽带的无线共享接入 。

 

刷固件时接线:
8266模块 USB转TTL
VCC 3.3V
GND GND
RX TX
TX RX
CH_PD gpio2: 3.3V
GPIO0  GND

gpio15拉低(没有的话不用管)

RST 什么都不接

 

如需更详细资料,如有好资源分享,请加入QQ交流群:214461008

欢迎阅读,欢迎转载,不用注明出处!本站只提供入门和进阶资料,做您学习的小伙伴!

老司机也欢迎光临指导!有好内容请加群:214461008 不要看声明了,看内容吧!

相关文章
  • Arduino软串口的使用

    Arduino软串口的使用

    2016-05-04 15:27

  • [2016.05.04]Arduino串口从基础到高级最全面教程

    [2016.05.04]Arduino串口从基础到高级最全面教程

    2016-05-05 14:14

  • 手机APP通过蓝牙控制Arduino上的通讯实验及完整例程

    手机APP通过蓝牙控制Arduino上的通讯实验及完整例程

    2016-05-02 22:13

  • Arduino串口高级用法

    Arduino串口高级用法

    2016-05-17 09:24

网友点评
Arduino