其实这种教程超级多,但是一个教程就能确确实实搞定这件事的我似乎没有找到。这两天正好在搞这个,就把我的步骤整理一下发出来,希望各位和我一样懵逼plus的小白们可以少走弯路。
(有好多教程直接贴代码连接线都不说一下查资料的时候真的好崩溃啊)
arduino | esp8266 |
---|---|
3.3v | 3.3v&EN |
GND | GND |
RXD | TXD |
TXD | RXD |
其实就是一个简单的交叉接法,TXD和RXD交叉连接就好了,一般使用软串口的较多,使用软串口也一样,把你定义的TX,RX和开发板上的交叉连接就好了。
需要注意的地方有两个:
对于esp这个芯片再详细说两句。esp 01和esp 01s基本没啥区别,但01s最大的好处是板子上写明了引脚,可以不用去翻原理图。关于他俩的区别我直接复制两款芯片区别
ESP8266系列Wi-Fi模块一共有01~14十多款模块
ESP8266-01简称ESP-01,ESP8266-01S简称ESP-01S
至于他们的区别请看下图: 左边的是ESP8266-01S,右边的是ESP8266-01
![]()
外观区别1:ESP8266-01S天线区域右下角只有一个指示灯,ESP8266-01天线区域右下角有两个指示灯。
外观区别2:ESP8266-01S背面有引脚说明,ESP8266-01背面有没有引脚说明。
内部区别:ESP8266-01S内部电路相对应ESP8266-01做了优化。
01s就按照上面表上写的连线就可以了,01的原理图上写的引脚名称不一样,如图。
01接线
arduino | esp8266 |
---|---|
3.3v | VCC&CH_PD |
GND | GND |
RXD | TXD |
TXD | RXD |
(哇终于到这了,废话真的好多,可能这就是传说中的话多且密吧)
程序(不知道为什么死活贴不上代码,我就放截图了,源代码我留一个下载链接在文末)
打开串口监视器(右上角放大镜图标)
等待显示“ok
ready”
输入AT 返回ok
输入AT+RST 返回 ok 一长段乱码 ready
输入AT+CWMODE=1 返回ok
输入AT+CWJAP=”SSID“,”password“ 返回ok
查看手机热点中出现名为esp……的设备
连接成果
每个指令输完后要回车
不能连入热点就反复AT+RST(重启esp)重试
这一部分的注意事项有
我们使用的是onenet,其他云平台也差不多,百度搜索名字然后点进去注册/登陆就可以了。
登陆之后进入开发者中心进行我们的产品的构建。
我们需要把AT指令写进程序让程序自动帮我们发送,并且链接到云平台,还要再实现设备和脚本的关联。
就没啥好说的了,贴程序吧。
我打了码的地方就是需要改的地方。
部分语句说明如下:
Serial.print("AT+CWJAP=\"SSID\",\"Password\"\r\n");
打码的第一句就是输入SSID和密码,其实和前面的AT指令对照就会发现这就是让程序输入AT+CWJAP指令。其他上文已经提及的AT指令下面就不再单独拉出来讲了
Serial.print("AT+CIPSTART=\"TCP\",\"183.230.40.40\",1811\r\n");
这一句是链接到云平台,三个参数分别是接入协议,服务器地址和端口号,这句不需要改
Serial.print("*产品ID#设备鉴权信息#脚本名*");
这一句是在关联脚本,每个设备可以关联一个脚本,设备的数据流名称,数量和格式都在脚本里面包含了
Serial.println(String(int(temp1)));
此句是在发送数据
发送多个数据的格式为Serial.println(String(int(temp1))+String(int(temp2))+String(int(temp3))+String(int(temp4)));
以上步骤都完成后,打开onenet设备列表可以看到绿色的设备在线就是成功了。
在云平台应用管理界面进行编辑和设计
还可以下载“设备云”实现手机端的查看
emmmm这部分是傻瓜式的应该也不用多说。
我在调试的过程中遇到的问题,我把他们列出来希望能给大家提供一点帮助。我也不知道为什么会出这样的原因也没啥好的办法,毕竟我只是一只菜狗。
我发现了我的解决方案就是重启,疯狂重启,各种重启……
我太菜了。
以上内容参考借鉴以及复制了很多来自网络的内容,我主要是做了一个整理和说明的工作,如果有侵权,或者其他的冒犯请联系我删除或者修改。
感谢素昧平生的大佬们为本文提供的帮助(虽然没有一一去征求各位的意见)
最后打个广告,各类机电创意作品定做请戳QQ:3356396782
也欢迎各位朋友前来探讨交流,单纯来聊天也欢迎。