WiFi模块设计2.docx

上传人:b****6 文档编号:9189407 上传时间:2023-02-03 格式:DOCX 页数:14 大小:401.44KB
下载 相关 举报
WiFi模块设计2.docx_第1页
第1页 / 共14页
WiFi模块设计2.docx_第2页
第2页 / 共14页
WiFi模块设计2.docx_第3页
第3页 / 共14页
WiFi模块设计2.docx_第4页
第4页 / 共14页
WiFi模块设计2.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

WiFi模块设计2.docx

《WiFi模块设计2.docx》由会员分享,可在线阅读,更多相关《WiFi模块设计2.docx(14页珍藏版)》请在冰豆网上搜索。

WiFi模块设计2.docx

WiFi模块设计2

仪器设计实践

课程设计

 

题目名称:

专业班级:

学生姓名:

学号:

指导教师:

成绩:

评语:

 

指导老师签名:

日期:

任务与分工

组长:

组员:

组员1、组员2

任务一:

组长、组员1

任务二:

组员2

 

WiFi模块设计

1.技术概述

ESP8266是⼀个完整且⾃成体系的Wi-Fi络解决⽅案,能够搭载软件应⽤,或通过另⼀个应⽤处理器卸载所有Wi-Fi络功能。

ESP8266在搭载应⽤并作为设备中唯⼀的应⽤处理器时,能够直接从外接闪存中启动。

内置的⾼速缓冲存储器有利于提⾼系统性能,并减少内存需求。

另外⼀种情况是,⽆线上接⼊承担Wi-Fi适配器的任务时,可以将其添加到任何基于微控制器的设计中,连接简单易⾏,只需通SPI/SDIO接⼝或中央处理器AHB桥接⼝即可。

ESP8266强⼤的⽚上处理和存储能⼒,使其可通过GPIO⼝集成传感器及其他应⽤的特定设备,实现了最低前期的开发和运⾏中最少地占⽤系统资源。

ESP8266⾼度⽚内集成,包括天线开关balun、电源管理转换器,因此仅需极少的外部电路,且包括前端模块在内的整个解决⽅案在设计时将所占PCB空间降到最低。

装有ESP8266的系统表现出来的领先特征有:

节能VoIP在睡眠/唤醒模式之间的快速切换、配合低功率操作的⾃适应⽆线电偏置、前端信号的处理功能、故障排除和⽆线电系统共存特性为消除蜂窝/蓝⽛/DDR/LVDS/LCD干扰。

图1

2、ATK-ESP8266WIFI模块简介

ATK-ESP8266是ALIENTEK推出的一款高性能的UART-WiFi(串口-无线WIFI)模块,ATK-ESP8266板载ai-thinker公司的ESP8266模块,该模块通过FCC,CE认证,可直接用于产品出口欧美地区。

ATK-ESP8266模块采用串口(LVTTL)与MCU(或其他串口设备)通信,内置TCP/IP协议栈,能够实现串口与WIFI之间的转换。

通过ATK-ESP8266模块,传统的串口设备只是需要简单的串口配置,即可通过网络(WIFI)传输自己的数据。

ATK-ESP8266模块支持LVTTL串口,兼容3.3V和5V单片机系统,可以很方便的与产品进行连接。

模块支持串口转WIFISTA、串口转AP和WIFISTA+WIFIAP的模式,从而快速构建串口-WIFI数据传输方案,方便你的设备使用互联网传输数据。

ATK-ESP8266模块非常小巧(29mm*19mm),模块通过6个2.54mm间距的排针与外部相连。

引脚的详细描述如下

2.1模块使用

本文档,我们将介绍大家如何通过STM32连接到ATK-ESP8266WIFI模块,实现:

串口无线AP(COM-AP)、串口无线STA(COM-STA)和串口无线AP+STA(COM-AP+STA)这3个模式的测试,每个模式又包含TCP服务器、TCP客户端和UDP这3个子模式,本节我们将详细介绍这些模式的使用。

模块配置可以通过串口配置,这里我们通过开发板串口配置,并实现通信。

2.1.1AT指令简介

在AT模式下可以通过串口的AT指令对系统参数做配置。

指令格式如下:

AT+=\r\n

根据不同指令,模块将返回不同的返回值。

其中\r\n为回车换行符,用16进制表示,就是0X0D,0X0A。

2.1.2串口无线WIFI(COM-AP)

串口无线WIFI(COM-AP)模式,模块作为无线WIFI热点,允许其他WIFI设备连接到本模块,实现串口与其他设备之间的无线(WIFI)数据转换互传。

该模式下,根据应用场景的不同,可以设置3个子模式:

TCP服务器、TCP客户端,UDP。

2.1.3串口无线STA(COM-STA)

串口无线STA(COM-STA)模式,模块作为无线WIFISTA,用于连接到无线网络,实现串口与其他设备之间的无线(WIFI)数据转换互传。

该模式下,根据应用场景的不同,可以设置3个子模式:

TCP服务器、TCP客户端,UDP。

2.1.4串口无线AP+STA(COM-AP+STA)

串口无线AP+STA(COM-AP+STA)模式,模块既作无线WIFIAP,又作无线STA,

其他WIFI设备可以连接到该模块,模块也可以连接到其他无线网络,实现串口与其他设备之间的无线(WIFI)数据转换互传。

该模式下,根据应用场景的不同,可以设置9个子模式:

(TCP服务器、TCP客户端,UDP)||(TCP服务器、TCP客户端,UDP)。

3、硬件连接

图2

4、功能简介

ATK-ESP8266模块的功能特性如下

4.1本实验功能简介

本实验用于测试ATK-ESP8266模块,总共包括3大项测试,每大项又包括3个子模式的测试,下面分别介绍。

4.1.1串口无线WIFI(COM-AP)测试

该项测试网络连接方式:

WIFI设备<-------->ATK-ESP8266模块通过按KEY_UP键选择此模式,进入此模式后,首先会进入到串口WIFIAP工作模式选择界面,总共有3种模式可供选择:

TCP服务器、TCP客户端、UDP。

通过KEY0/KEY1

选择模式,通过KEY_UP确定。

点击确定后,服务器模式(TCP服务器)不需要手动输入IP地址,直接进入下一步,开始配置模块。

但是对于TCP客户端/UDP模式,还会需要手动输入远端IP地址,此时界面会提示:

远端IP设置,通过屏幕显示的虚拟键盘,输入远端IP地址,输入完后,可以点击虚拟键盘的“连接”按键,进入下一步,开始配置模块,此时,开发板将对模块进行配置,配置成功后,进入数据收发测试。

进入测试后,开发板液晶会显示相关提示信息,方便大家测试,信息包括:

IP地址:

如果是服务器模式,那么IP地址表示ATK-ESP8266模块的IP地址。

如果是客户端模式,则表示模块将要连接到的目标IP地址。

端口:

为方便测试,所有模式的端口都固定为8086。

状态:

表示连接状态,如果连接建立,则显示连接成功,如果断开,则显示连接失败。

模式:

显示当前的工作模式(TCP服务器、TCP客户端、UDP)。

发送数据:

显示当需要发送的数据,每按一次KEY0,发送一次数据,会在这个区域显示发送的内容,当发送完以后,过一段时间,该区域自动清空。

接收数据:

显示ATK-ESP8266模块接收到的数据,对方发过来的数据,将显示在这里,每次收到新内容,会将旧内容清空,然后显示新内容,否则旧内容将一直显示。

按KEY_UP,可以退出此项测试,回到主界面。

对于3种子模式:

TCP服务器、TCP客户端、UDP,他们的数据收发测试界面几乎是一样的,测试方法也几乎一模一样,大同小异。

4.1.2串口无线AP+STA(COM-AP+STA)测试

该项测试网络连接方式:

WIFI设备<------>ATK-ESP8266模块(WIFIAP+STA)<------>无线路由器<------>WIFI设备通过按KEY0键选择此模式,进入此模式后,首先会进入到提示界面。

4.1.3串口无线STA(COM-STA)测试

该项测试网络连接方式:

WIFI设备<------>无线路由<------>ATK-ESP8266模块(WIFISTA)通过按KEY1键选择此模式,进入此模式后,首先会进入到WIFI-STA工作模式选择界面,剩下的操作,同4.1.2节一模一样。

(请用手机连接到ATK-ESP8266),然后按任意键继续,接着会进入到WIFIAP模式下的模式选择,接着操作与4.1.2节一模一样,完成AP模式的设置,接着设置STA模式,与AP模式相似。

配置成功后,进入数据收发测试。

进入测试后,开发板液晶会显示相关提示信息,信息与AP模式和STA模式有所差别。

端口:

为方便测试,所有模式的端口都固定为8086。

状态:

表示连接状态,如果连接建立,则显示连接成功,如果断开,则显示连接失败。

模式:

显示当前的工作模式(固定显示:

STA+AP模式)。

APIP:

AP模式下的IP地址。

STAIP:

STA模式下的IP地址。

发送数据:

显示当需要发送的数据,每按一次KEY0,发送一次数据,会在这个区域显示发送的内容,当发送完以后,过一段时间,该区域自动清空。

接收数据:

显示ATK-ESP8266模块接收到的数据,对方发过来的数据,将显示在这里,

每次收到新内容,会将旧内容清空,然后显示新内容,否则旧内容将一直显示。

按KEY_UP,可以退出此项测试,回到主界面。

按KEY0向ID0发送数据,按KEY1向ID1发送数据。

对于9种子模式:

(TCP服务器、TCP客户端、UDP)||(TCP服务器、TCP客户端、UDP),他们的数据收发测试界面几乎是一样的,测试方法也几乎一模一样,大同小异,就不一一介绍了。

5、AT指令使⽤⽰例

5.1单连接TCPClient

•设置WiFi模式:

AT+CWMODE=3//softAP+stationmode

Response:

OK

•连接路由:

AT+CWJAP="SSID","password"//SSIDandpasswordofrouter

Response:

OK

•查询设备IP地址:

AT+CIFSR

Response:

192.168.3.106//DevicegotanIPfromrouter.

•PC与ESP8266连接同⼀个路由,在PC上使⽤⺴络调试助⼿,创建⼀个TCP服务器

•ESP8266作为client连接到TCPserver:

AT+CIPSTART="TCP","192.168.3.116",8080//protocol、serverIP&port

Response:

OK

•发送数据:

AT+CIPSEND=4//setdatelengthwhichwillbesent,suchas4bytes

>DGFY//enterthedata,noCR

Response:

SENDOK

注意:

若输⼊的字节数⺫超过了指令设定的⻓度(n),则会响应busy,并发送数据的前n个字节,发送完SENDOK.

•接收数据:

+IPD,n:

xxxxxxxxxx//receivednbytes,data=xxxxxxxxxxx

5.2.透传

•设置WiFi模式:

AT+CWMODE=3//softAP+stationmode

Response:

OK

•连接路由:

AT+CWJAP="SSID","password"//SSIDandpasswordofrouter

Response:

OK

•查询设备IP地址:

AT+CIFSR

Response:

192.168.101.105//Device’sIPthatgotfromrouter.

•PC与ESP8266连接同⼀个路由,在PC上使⽤⺴络调试助⼿,创建⼀个TCP

•设备作为TCPclient连接TCPserver:

AT+CIPSTART="TCP","192.168.101.110",8080//protocol、serverIP&port

Response:

OK

Linked

•使能透传模式:

AT+CIPMODE=1

Response:

OK

•发送数据:

AT+CIPSEND

Response:

>//Fromnowon,datareceivedfromUARTwillbe

transparenttransmittedtoserver.

•退出发送数据:

•断开TCP连接:

AT+CIPCLOSE

Response:

CLOSEDOK

5.3.多连接TCPServer

前ATDemoESP8266作为服务器,必须建⽴多连接,即可以连接多个TCPclient

•设置WiFi模式:

AT+CWMODE=3//softAP+stationmode

Response:

OK

•使能多连接:

AT+CIPMUX=1

Response:

OK

•建⽴TCPserver:

AT+CIPSERVER=1//defaultport=333

Response:

OK

•PC连⼊ESP8266softAP,PC作TCPclient连接设备。

•发送数据:

//IDnumberofconnectionisdefaultedtobe0.

AT+CIPSEND=0,4//send4bytestoconnectionNO.0

>iopd//enterthedata,noCR

Response:

SENDOK

注意:

若输⼊的字节数⺫超过了指令设定的度(n),则会响应busy,并发送数据的前n个字节,发送完成后响应SENDOK.

•接收数据:

+IPD,0,n:

xxxxxxxxxx//receivednbytes,data=xxxxxxxxxx

•断开TCP连接:

AT+CIPCLOSE=0//DeleteNO.0connection.

Response:

0,CLOSEDOK

5.4.UDP传输

•设置WiFi模式:

AT+CWMODE=3//softAP+stationmode

Response:

OK

•连接路由:

AT+CWJAP="SSID","password"//SSIDandpasswordofrouter

Response:

OK

•查询设备IP地址:

AT+CIFSR

Response:

+CIFSR:

STAIP,"192.168.101.104"//IPaddressofESP8266station

•PC与ESP8266连接同⼀个路由,在PC上使⽤络调试助⼿,创建UDP

下⾯介绍两种UDP通信的⽰例:

(1)固定远端的UDP通信

UDP通信的远端固定,由”AT+CIPSTART“指令的最后参数0决定,分配⼀个连接号给这个固定连接,通信双⽅不会被其他设备替代

•使能多连接:

AT+CIPMUX=1

Response:

OK

•创建UDP传输,例如,分配连接ID为4。

AT+CIPSTART=4,"UDP","192.168.101.110",8080,1112,0

Response:

4,CONNECTOK

注意:

"192.168.101.110",8080为UDP传输的远端IP和远端port,也就是PC建⽴的UDP配置;1112为ESP8266的UDP本地端⼝,⽤户可⾃⾏设置,如不设置则为随机值;0表⽰当前UDP传输建⽴后,UDP远端不会被其他设备更改;即使有其他设备通过UDP协议发数据到ESP8266UDP端⼝1112,ESP82664号UDP传输的远端也不会被替换,使⽤指令“AT+CIPSEND=4,X”发送数据,仍然是当前确定的PC端收到。

•发送数据:

AT+CIPSEND=4,5//Send5bytestotransmissionNO.4

>DGFYQ//enterthedata,noCR

注意:

若输⼊的字节数⺫超过了指令设定的⻓度(n),则会响应busy,并发送数据的前n个字节,发送完

成后响应SENDOK.

•接收数据:

+IPD,4,n:

xxxxxxxxxx//receivednbytes,data=xxxxxxxxxxx

•断开UDP传输:

AT+CIPCLOSE=4

Response:

4,CLOSEDOK

(2)远端可变的UDP通信

•创建UDP传输,最后参数为“2”.

AT+CIPSTART="UDP","192.168.101.110",8080,1112,2

Response:

CONNECTOK

注意:

"192.168.101.110",8080为UDP传输的远端IP和远端port,就是前述PC建⽴的UDP配置;1112为ESP8266的UDP本地端⼝,⽤户可⾃⾏设置,如不设置则为随机值;表⽰当前UDP传输建⽴后,UDP传输远端仍然会更改;UDP传输远端会⾃动更改为最近⼀个与ESP8266UDP通信的远端。

•发送数据:

AT+CIPSEND=5//Send5bytes

>DGFYQ//enterthedata,noCR

Response:

SENDOK

注意:

若输⼊的字节数⺫超过了指令设定的⻓度(n),则会响应busy,并发送数据的前n个字节,发送完

成后响应SENDOK.

•若需要发UDP包给其他UDP远端,只需指定对⽅IP和port即可。

AT+CIPSEND=6,”192.168.101.111”,1000//Send6bytes

>abcdef//enterthedata,noCR

Response:

SENDOK

•接收数据:

+IPD,n:

xxxxxxxxxx//receivednbytes,data=xxxxxxxxxxx

•断开UDP通信:

 

参考文献

[1]谢希仁. 计算机网络[M]. 北京:

电子工业出版社,2008. 

[2]李扬. WiFi技术原理及其应用研究[J]. 科技信息,2010,1(6):

241. 

[3]意法半导体. STM32F103数据手册[R]. 北京:

意法半导体,2007.

[4]北京中电华大电子设计责任有限公司. TLG09UA01产品规格书[R]. 北京:

北京中电华大电子设计责任有限公司,2009.  

[5]北京中电华大电子设计责任有限公司. 基于UART接口的WLAN模块用户手册[R]. 北京:

北京中电华大电子设计责任有限公司,2009.

 

设计心得

完成本次课程设计的过程,是一个从无到有的过程,经历了兴奋、自信、失落、奋发、所悟、完成几个过程。

本以为会很简单可是当我动手开始做的时候,才发现设计是那么繁琐。

经过一天的努力,毫无结果。

失落的心情油然而生。

于是,再到图书馆和网上查找资料,在经过借鉴很多类似的资料,文献后,总算是有点眉目了。

特别是当苦思出来一个结果,又被自己推翻,心痛的无法言绘,在这不断循环中,终于做了出来。

其中的煎熬是很痛苦的,深刻明白攻克自己“未知领域”的困难。

但当课程设计完成时,那感觉是甜蜜的,没有耕耘,哪来得收获的喜悦,不懂付出怎么能知道回报的快乐,一分耕耘一分收获,有付出才会回报,就在这样的痛与快乐的交换中,我学到了知识,学到了做人的道理。

这次的课程设计,让我学到了很多书本上学不到的东西,这让我重新反思我们的学习,

深刻领悟到我们这个专业动手,实践的重要性。

理论不经过实践考验是没法实施的。

最后感谢老师细心、仔细、认真的指导,使我学到了很多。

 

附录一ESP8266原理图

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1