ESP8266 |
您所在的位置:网站首页 › esp8266引脚电路图 › ESP8266 |
必要知识
大概流程
用串口连接ESP8266-01S简单调试模块设置 设备连接到ESP8266-01S的WiFi或者是ESP8266连接至局域网 根据需求再次对ESP8266-01S进行调试 启动手机或电脑的网络调试助手建立通讯 用网络调试助手进行信号的发送 将ESP8266-01S连接至单片机的UTX和URX与单片机进行通讯 STM32C8T6其中PA2和PA3为一个串口,PA9和PA10为1个串口 通讯协议TCP和UDP协议 TCP是可靠的传输协议,缺点是只能一对一通信 cilent客户端和server服务端 使用ESP8266-01S 连接模块做简单调试需要的工具:USB-TTL下载器 特别注意,RXD和TXD 的接法,与下载器的引脚相反 不要用下载器的3.3V和GND电源,另找电源(可以接开发板上的供电) 正常情况下模块会微热,只要不是烫手的就没什么问题 打开串口调试工具 ESP8266-01S一共有三种角色/工作模式,分别是: 1.Station (客户端模式) 2.AP (接入点模式) 3.Station+AP (两种模式共存) 买模块的时候,商家一般都会附赠一个资料包,里面有AT指令的说明 根据需要,选择模块的工作方式(一般使用模式2或者是模式3) 输入命令: AT+CWMODE=1 //station模式(station模式不可以创建自己的WiFi) 或 AT+CWMODE=2 //AP模式 或 AT+CWMODE=3 //station+AP模式来选择模块的工作方式,输入完成后输入 AT+RST重启模块 使用模块这时候,你有两种方案: 一是用模块自己创立一个WiFi(station模式不可创建自己的WiFi),二是模块连接到现有的WiFi 一、建立模块的WiFi 串口发送以下命令 AT+CWSAP="SSID","password",x,x //来创建路由 (第一个x代表通道号,第二个x代表加密方式,用数字来表示)信道,也称作通道或频段,是以无线信号作为传输载体的数据信号传送通道。2.4G频段的工作频率为2.4-2.4835GHz,这83.5MHz频带划分为13个信道,各信道中心频率相差5MHz,向上向下分别扩展11MHz,信道带宽22MHz。中国采用欧洲/ETSI标准,使用1-13信道。 随着无线网络的普及,周围的WIFI信号越来越多,这些信号之间会相互干扰,家庭路由器一般都会自动选择工作信道,如果说想要8266处于更好的工作状态,将其设置为与周围无线网络信道不同的信道,如果说没那么多要求,随便填一个即可。 注意:该命令在断电之后不会消失,会保留下来 AT+CIPMUX=1 //开启多连接模块是最多允许五个设备连接的, 然后输入 AT+CIPSERVER=1,6666 //端口号可以更改来设置监听端口,以上两个指令断电后将会消失,需要写入单片机 二、 连接现有的WiFi AT+CWJAP="SSID","password" //来连接路由器 AT+CIPMUX=1 AT+CIPSERVER=1,6666模块就处于工作状态了 上位机操作上位机首先要连接到模块所处的WIFI中(自建WIFI或现有无线网络) 上位机目前与ESP8266模块进行串口通讯 输入模块的IP地址,如果是模块建立的现有WIFI,则IP地址应为192.168.4.1 如果是连接的现有无线网络,可以进入网络的管理员页面查看,也可以输入AT+CIFSR指令来查看8266的IP和MAC地址,当然,这种操作必须在连接串口的条件下才能使用。 上位机发送数据
首先对ESP8266输入发送指令AT+CIPSEND=0,x(字节数) 一定要输入正确的字节数,否则会发送不全 终于到了重头戏了,在实际使用的时候是不会把ESP8266-01S对电脑同时进行网络连接和串口连接的,实际上的使用要么是电脑作为控制端,将ESP8266与单片机连接,要么是两个单片机之间的通讯。 单片机的发送像之前所说的8266所能记忆的一些AT指令设置是可以在电脑串口中直接设置好的,这样也确实更方便些,减轻了单片机的压力,然后是每次断电之后都需要重新设置的部分: 每次单片机重新上电之后通过串口发送AT指令到8266 直接将字符串发送到串口即可 void ESP_8266_Init() { printf("AT+CIPMUX=1\r\n"); delay_ms(500); printf("AT+CIPSERVER=1,6666\r\n"); delay_ms(500); } //这里采用的是正点原子stm32的串口代码,这里只展示最核心部分 单片机的接收对于接受部分还是有些难度的,单片机的串口单次只能接收一字节,如果是接受长字符串的话需要准备数组,但如果是进行前进后退等基本指令的话,我想一般都会采用数字,这样我们要接受的讯息内容只有一字节。 +IPD,,:这是串口接受信息的格式,可以对于接受数组进行处理,得到我们想要的数据。 笔者的编程属实是拙劣,虽然实现了相应的功能,但是代码没有参考性,也就不放出代码了。 终于是写完了,也是中间隔了挺久的,可能内容也没那么连贯,还请谅解。 如果有什么错误,还请各位大佬斧正。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |