esp8266与51单片机通信(看完不会你打我)用手机控制led灯的亮灭

第一步:所需材料: 既然你刷到我这篇学习总结了 那说明你必然有 1、51单片机&#…

第一步:所需材料:

既然你刷到我这篇学习总结了

那说明你必然有

1、51单片机(多数然应该是开发板,我用的是普中A7)————最好还有最小开发系统板

2、esp8266-01S

3、USB转TTL模块:这个模块并不是一定得有,你有开发板那就说明可以打开串口给单片机烧录程序了,但是有了也挺好,可以了解到这个模块接线的快乐,还可能遇到因为电压不足无法正常运行esp8266的问题,不踩坑就没办法进步,反正我是踩过了(无语)

4、杜邦线若干

5、数据线——进行数据传送,两根最好,但是要有开发板的电源线也是一样的,一根数据线一根电源线或数据线

附图一张👇

第二步:PC端通过USB转TTl配置esp8266——AT指令

1、先说USB转TTLesp8266的接法

USB转TTL模块 esp8266
RXD TX
TXD RX
GND GND
3.3V 3.3V
VCC EV

说明

1.TXD发送引脚、RXD接收引脚,发送对接收,所以USB转TTL与esp8266的RXD、TXD交叉相接。

2.3.3V相接后可能无法启动esp8266,这是因为USB转TTL的3.3V引脚并没有真的达到3.3V,不要慌直接将esp8266的3.3V引脚接入USB转TTL的5V引脚,如果esp8266突然就发热并且烫的无法触摸,立马拔掉,如果说温度你的触感还能接受,那就没问题,毕竟牛X的esp8266没那么脆弱。

3.esp8266的EV引脚有些可能会标注成CH_PD,不要怕功能一样的,接线方式也是一样的

附图一张👇

既然连接好了就说说怎么用吧

连接好之后插入电脑的USB接口,然后打开XCOM(串口助手)串口助手网络上有好多种,说这个好用那个好用的,我只相信官方,去安信可科技官网下载串口助手,好不好用是否适合你不清楚,但是我知道他是官方的!!!官方的!!!

下载好之后直接可以打开,串口会自动刷新已连接的串口号,但是可能你电脑连接了多个,那你打开自己的计算机管理器->设备管理器->端口查看就行,一般情况下直接刷新了串口点击选择即可,我的端口是COM4,波特率115200就可以,因为esp8266出场固件波特率就是115200,而后打开串口,如下图👇

而后直接点击发送就行,然后巴拉巴拉的返回一些数据最后返回ready!就说明你已经连接成功了,很恭喜恭喜!如果不返回数据,仔细检查你线路连接,如果都连接正确,还是不返回数据,把线拔了在连一次,还是无法发送,把EV引脚拔了,还是不行,去安信可科技官网重新刷一遍你的固件。要注意的是:在使用多个软件使用串口时需关闭其他软件串口,因为一个串口只能被一个软件打开。如果串口打不开可能是电脑缺少CH340驱动。

安信可科技官网里面这些基础的资料都有自己慢慢探索~~~

现在进行用电脑对esp8266进行At指令配置(我只讲我用的AT指令,至于每条AT指令什么意思自己多去看看AT指令集,网上很多自己查吧)

1——首先发送 AT+CWMODE=3 既然是WiFi模块 他就既可以作为客户端连接别人的热点,也可以做服务端让别人连接它的热点 。

AT+CWMODE=1 1 Station 模式
AT+CWMODE=2 2 AP 模式
AT+CWMODE=3 3 AP 兼 Station 模式

AP模式:提供无线网络接入服务,允许其他无线设备连接其网络,类似无线路由器。
Station模式:本身不提供无线接入服务,可以连接AP,类似无线终端设备。

先跟着我的步骤走,连接成功了在一步一步尝试别的模式

2——其次发送 AT+CWSAP="ESP8266","12345678",11,3(里面的参数可以自行修改

该指令的说明如下图👇

3——因为单片机的波特率最高就9600,所以为了后面单片机和esp8266正常通信,还要发送一条指令修改esp8266的波特率 AT+CIOBAUD=9600,8,1,0,0 返回ok后 记得将串口先断开然后把串口助手的波特率也进行修改 9600

4——最后一步 发送AT+RST 重启esp8266就完事了 然后你就可以把USB转TTL的线全部拆了 突然感觉轻松好多吧哈哈哈

第三步:单片机与esp8266通信

网上有好多示例点灯的,他们的侧重点好像都是在程序上,程序自然很重要,但是程序要与实际的开发板电路原理图相匹配才可以,要不然你程序写的无论多么规范,都完成不了你所需要实现的内容。

也是因为查阅好多资料都在讲程序怎么样怎么样,导致我一直觉得是我程序的问题,也是废了好大的劲才完成最最最基本的点灯实验。下面就开始讲我遇到的坑吧。

为了写这篇文章,我自己编写了一个最最最简单的点灯程序(别人的程序都是判断这个判断哪个 一共七八个灯一起亮,太麻烦了 对我这样的小白来说就像天书一样)

是时候讲讲我遇到的最大的坑了,就是我开发板(普中A7)

由图我们可以看得出单片机的TXD、RXD两个引脚分别要出两个公引脚 一对是P3^0/P3^1 还有一对是开发板上USB转TTl的J44、J39排针上,所以当你USB转TTL上的跳线帽没有摘的时候,你把esp8266上的RXD、TXD引脚接入P3^0/P3^1引脚上的时候单片机就不知道你到底要给谁发送数据了,单片机也不知道自己到要接受谁的数据,单片机就会说,这啥啊这是!!!哈哈哈

所以正确的做法是把开发板上USB转TTL的跳线帽拔掉然后,插上esp8266的数据线就可以啦

但是有些开发板可能没有跳线帽是PCB内部接线,这就是开头所说到的,要一个开发板最小系统

第四步:网络调试助手

最后一步啦

打开手机上的网络调试助手,这个时候是不是又在想用哪一款网络调试助手呢,回答是一样的安信可科技,自己上官网搜索,虽然它里面有些性能真的不太好,但是他的界面我太爱了,官网就是牛X!

打开:点击左侧三条杠 点击TCP Client

输入以下IP地址 和 端口号 发送1led3亮 发送0led3 灭

注意:打开手机上网络助手时,应该先连接esp8266所建立的热点,进入网络助手后记得单片机重新上电,使单片机程序At指令重新配置esp8266.连接esp8266wifi后记得关闭自己手机的流量!!!

最后说明:::

我也是查了好多资料总完成的通信,每个人的开发板都不同,所用元器件也不一样,但是原理是一样的,特别感谢 赶路人的星光 他写的文章中有一篇也是关于点灯的 超级详细

这个文章也是我刚刚完成点灯后写的学习记录心得,肯定有说错讲错的地方,如果本人有让您刷到这篇文章了,可以积极评论,指出我的不足或者您的疑问,看到消息后会第一时间回复

刚开始使用博客,如果本文章对大家有用,希望大家关注走一波,有机会共同学习进步。

本文来自网络,不代表软粉网立场,转载请注明出处:https://www.rfff.net/p/4287.html

作者: HUI

发表评论

您的电子邮箱地址不会被公开。

返回顶部