基于STM32的WIFI无线网络应用设计毕业设计.docx

上传人:b****1 文档编号:13734901 上传时间:2023-06-16 格式:DOCX 页数:44 大小:1.17MB
下载 相关 举报
基于STM32的WIFI无线网络应用设计毕业设计.docx_第1页
第1页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第2页
第2页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第3页
第3页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第4页
第4页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第5页
第5页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第6页
第6页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第7页
第7页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第8页
第8页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第9页
第9页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第10页
第10页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第11页
第11页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第12页
第12页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第13页
第13页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第14页
第14页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第15页
第15页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第16页
第16页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第17页
第17页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第18页
第18页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第19页
第19页 / 共44页
基于STM32的WIFI无线网络应用设计毕业设计.docx_第20页
第20页 / 共44页
亲,该文档总共44页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于STM32的WIFI无线网络应用设计毕业设计.docx

《基于STM32的WIFI无线网络应用设计毕业设计.docx》由会员分享,可在线阅读,更多相关《基于STM32的WIFI无线网络应用设计毕业设计.docx(44页珍藏版)》请在冰点文库上搜索。

基于STM32的WIFI无线网络应用设计毕业设计.docx

基于STM32的WIFI无线网络应用设计毕业设计

SHANDONGUNIVERSITY OF TECHNOLOGY

毕业设计说明书

 

基于STM32的WIFI无线网络应用设计

 

2013年6月

摘要

随着无线局域网技术的快速发展,无线终端已经融入了我们的生活,无论是智能手机还是笔记本,WiFi功能几乎是必不可少的。

目前WiFi技术主要的应用还在手持终端,但随着用户需求的越来越广泛,WiFi技术也需要应用到不同的方面如工业控制,移动办公等,这就需要不同形式的终端。

本文开发并实现基于一种嵌入式开发平台的STM32的WiFi模块,使一些嵌入式设备也能够使用无线资源。

论文首先讨论了基ARMCortex-M3的嵌入式开发技术,介绍了WiFi网络的发展现状及前景,利用STM32F103VCT6串口连接WiFi模块,介绍了UCGUI在STM32平台上的移植,最后,在此基础上进行基于uC/GUI的多窗口应用界面的设计,实现了WiFi热点接入界面的开发。

 

关键词:

STM32,WiFi,UCGUI,LCD

ABSTRACT

TodaywiththerapiddevelopmentofwirelessLANtechnology,wirelessterminalshavebeengraduallyintegratedintoourlives.WiFifunctionisalmostessentialwhetheritisasmartphoneoralaptop.CurrentlythemainapplicationofWiFitechnologystillhandheldterminal,butwiththeuser'sneedsmoreandmorewidely,WiFitechnologyneedstobeappliedtodifferentareassuchasindustrialcontrol,mobileoffice,etc.,whichrequiredifferentformsofterminals.

ThispaperdevelopedandimplementedanembeddeddevelopmentplatformbasedontheSTM32WiFimodule,andenablesomeembeddeddevicestousethewirelessresources.Firstly,wediscusstheembeddeddevelopmenttechnologybasedonARMCortex-M3,introducedaWiFinetworkdevelopmentsituationandprospects,usingtheserialportusingtheSTM32F103VCT6WiFimodule,introducedintheSTM32platformUCGUItransplant,finally,onthisbasis,baseduC/GUIapplicationofmulti-windowinterfacedesign,toachieveaWiFihotspotaccessinterfacedevelopment.

Keywords:

STM32,WiFi,LCD,UC/GUI

第一章引言

随着信息技术的飞速发展,人类进入了后PC时代,嵌入式系统与互联网络已经无所不在,它们一起深刻地影响着我们的生活,而这两者的融合已经是大势所趋,如何让嵌入式系统接入网络已经成为信息领域研究和应用的热点,越来越受到人们的重视。

1.1ARM的发展趋势

ARM(AdvancedRISCMachines),既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。

1991年ARM公司成立于英国剑桥,主要出售芯片设计技术的授权。

公司正式成立以来,在32位RISC开发领域中不断取得突破,其结构已经从V3发展到V6。

ARM公司一直以IP(intelligenceproperty)提供商的身份向各大半导体制造商出售知识产权,而自己从不介入芯片的生产销售,加上其设计的芯核具有功耗低,成本低等显著优点,因此获得了众多的半导体厂家和整机厂商的大力支持,在32位嵌入式应用领域获得了巨大的成功,目前已经占有75%以上的32位RISC嵌入式产品市场。

在低功耗,低成本的嵌入式应用领域确立了市场领导地位。

90年代初,ARM率先推出32位RISC微处理器芯片系统SoC知识产权公开授权概念,从此改变了半导体行业。

ARM通过出售芯片技术授权,而非生产或销售芯片,建立起新型的微处理器设计,生产和销售商业模式。

更重要的是ARM开创了电子新纪元:

采用ARM技术的微处理器遍及各类电子产品,在汽车、消费娱乐、成像、工业控制、网络、储存、安保和无线等市场,ARM技术无处不在。

现在采用ARM技术知识产权(IP)核的微处理器,即我们通常所说的ARM微处理器,已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场。

ARM技术正在逐步渗入到我们的生活的各个方面。

世界各大半导体生产商从ARM公司购买其设计的ARM微处理器,根据各自不同的应用领域,加入适当的外围电路,从而形成了自己的ARM微处理器芯片进入市场。

目前,全世界有几十家大的半导体公司都使用ARM的授权,因此既使得ARM技术获得更多的第三方的工具、制造、软件的支持,又使整个系统的成本降低,使产品更容易进入市场被消费者所接受,更具有竞争力。

国内的中兴和华为也已经购买了ARM公司的芯核用于通讯专用的芯片设计。

1.2WIFI的发展背景

WiFi是IEEE定义的一个无线网络通信的工业标准(IEEE802.11).自从1997年无线局域网标准诞生以来,WiFi的发展已经近十年了.随着数据业务需求的不断增加,以IEEE802.11协议为基础的无线局域网(WLAN)的研究正逐渐为人们研究的热点。

最初开发WLAN主要用于企业和家庭网络,通过有线LAN进行无线扩展,通过无线通信的方式实现有线LAN的功能,并以比有线网络更加低廉的价格和更加便、灵活的方式进行网络安装和维护。

但是,随蜂窝移动通信产业的成功和WLAN技术的发展,出现了与电信网络融合提供公共WLAN服务的趋势,使人们可以通过WLAN非常方便地享受高速的无线数据服,这也极大地拓展了WLAN的应用空间。

现在WiFi正在进入一个快速发展的阶段。

其中,作为802.1lb发展的后继标准802.16(WiMAX)虽然采用了与802.11b不同的频段(10--66GHz),但作为一项无线城域网(WMAN)技术,它可以和802.11b/g/a无线接入热点互为补充,构筑一个完全覆盖城域的宽带无线技术。

由于移动运营商数目的增加,语音业务带来的ARPU必然呈现下降趋势,如何提供更多的数据多媒体业务也是移动运营商一直在思考的问题。

在这样的背景下,WLAN在部署上取得了实质性的进展:

WiFi和VolP的结合给固网运营商带来了契机;WLAN的热点覆盖计划也正作为3G的补充成为移动运营商新的利润点。

未来WiFi的发展方向将包括:

网络技术上覆盖更大的范围,从热点到热区再到整个城市;推广WiFi手持终端和VoWLAN业务成为应用模式;基于IP的WiFi交换技术和开放的业务平台,使WLAN网络更智能、更易于管理;基于多层次的安全策略(WEP、WPA、WPA2、AES、VPN等)提供不同等级的安全方案,以确保无线通信的安全。

第二章ARM系统的硬件平台

2.1概述

嵌入式硬件平台包括中央处理器、外围的控制电路、只读存储器、可读写存储器、外围设备和网络控制单元。

由于嵌入式系统芯片的多样性,各模块芯片都有较大的选择空间。

在选择上述硬件平台模块的具体芯片时,通常需要考虑它们的功能、功耗、封装、体积、成本、可靠性、电磁兼容性等方面,并在尽量满足应用需求的同时尽量减少冗余功能,以节约成本。

本文根据实时监控的需要选择实验平台各模块的芯片。

2.2嵌入式处理器的选择

目前嵌入式系统中32位微控制器(MCU)的使用率正逐年增长,32位ARM体系结构己经成为一种事实上的标准,随着高端32位嵌入式微处理器价格的不断下降和开发环境的成熟,使得32位嵌入式处理器正日益挤压原先由8位微控制器主导的应用空间。

随着ARM处理器在全球范围的流行,32位的RISC嵌入式处理器已经开始成为高中端嵌入式应用和设计的主流。

使用32位架构不仅能提升性能,还能降低相同成本下的系统功耗和节约总成本以及缩短产品上市时间。

并使得嵌入式系统可随着产品的性能和需求不断扩展而升级。

本文选用了一款基于ARMCortex-M3内核芯片—由意法半导体(ST)推出的STM32F103芯片。

STM32F103系列微处理器是首款基于ARMv7-M体系结构的32位标准RISC(精简指令集)处理器,很高的代码效率,在8位和16位系统的存储空间上发挥了ARM内核的高性能。

该系列微处理器工作频率为72MHz,内置高达128K字节的Flash存储器和20K字节的SRAM,具有丰富的通用I/O端口。

作为最新一代的嵌入式ARM处理器,它为实现MCU的需要提供了低成本的平台、缩减的引脚数目、降低的系统功耗,同时提供了卓越的计算性能和先进的中断响应系统。

丰富的片上资源使得STM32F103系列微处理器在多种领域如电

机驱动、实时控制、手持设备、PC游戏外设和空调系统等都显示出了强大的发展潜力。

STM32F103系列微处理器主要资源和特点如下:

1.多达51个快速I/O端口,所有I/O口均可以映像到16个外部中断,几乎所有端口都允许5V信号输入。

每个端口都可以由软件配置成输出(推挽或开漏)、输入(带或不带上拉或下拉)或其它的外设功能口。

2.2个12位模数转换器,多达16个外部输入通道,转换速率可达1MHz,转换范围为0-36V,具有双采样和保持功能。

内部嵌入有温度传感器,可方便的测量处理器温度值。

3.灵活的7路通用DMA可以管理存储器到存储器、设备到存储器和存储器到设备的数据传输,无须CPU任何干预。

通过DMA可以使数据快速地移动CPU的资源来进行其他操作。

DMA控制器支持环形缓冲区的管理,避免了控制器传输到达缓冲区结尾时所产生的中断。

它支持的外设包括:

定时器、ADC、SPI、I2C和USART等。

4.调试模式:

支持标准的20脚JTAG仿真调试以及针对Cortex-M3内核的串行单线调试(SWD)功能。

通常默认的调试接口是JTAG接口。

5.内部包含多达7个定时器。

6.含有丰富的通信接口,三个USART异步串行通信接口、两个I2C接口、两个SPI接口、一个CAN接口和一个USB接口,为实现数据通信提供了保证。

除工业可编程逻辑控制器(PLC)、家电、工业及家用安全设备、消防和暖气通风空调系统等传统应用,智能卡和生物测定等消费电子应用外,新的STM32系列还特别适合侧重低功耗的设备,如血糖和血脂监测设备。

2.3STM32F103的USART接口

2.3.1USART接口的引脚描述

表2.1USART的引脚描述

引脚名称

类型

描述

RX

输入端口

串口数据流入

TX

输出端口

串口数据流出

2.3.2USART主要的特性

1.3全双工的,异步通信。

2.NRZ标准格式。

3.分数波特率发生器系统。

4.可编程数据字长度(8位或9位)。

5.可配置的停止位-支持1或2个停止位。

6.LIN主发送同步断开符的能力以及LIN从检测断开符的能力。

7.单独的发送器和接收器使能位。

8.检测标志。

9.校验控制。

10.四个错误检测标志。

11.10个带标志的中断源。

12.多处理器通信--如果地址不匹配,则进入静默模式。

13.从休眠模式中唤醒。

2.3.3数据发送与接收过程

在接收时,接收到的数据被存放在一个内部的接收缓冲器中;在发送时,在被发送之前,数据将首先被存放在一个内部的发送缓冲器中。

对SPI_DR寄存器的读操作,将返回接收缓冲器的内容写入SPI_DR寄存器。

处理数据的发送与接收,当数据从发送缓冲器传送到移位寄存器时,设置TXE标志(发送缓冲器空),它表示内部的发送缓冲器可以接收下一个数据;如果在SPI_CR2寄存器中设置了TXEIE位,则此时会产生一个中断;写入SPI_DR寄存器即可清除TXE位。

注:

在写入发送缓冲器之前,软件必须确认TXE标志为‘1’,否则新的数据会覆盖已经在发送缓冲器中的数据。

第三章WiFi技术及模块概述

3.1WiFi技术概述

802.11协议是IEEE802-r作组定义的第一个被国际认可的无线局域网协议。

跟传统的有线局域网相比,基于WiFi协议的无线局域网具有可移动性,动态拓扑结构和易搭建的特点.因此用户可以根据需求和环境选择合适的局域网技术来构造自己的网络。

3.1.1WiFi网络基本结构

802.11协议的规定了WiFi的基本网络结构包括物理层、介质访入控

制层(1IAc层)及逻辑链路控制层(LLJc层)。

其三层结构可如图2.1所示。

802.2LLC(LogicalLinkControl)

802.11MAC

802.11PHY

FHSS

802.11PHY

DSSS

802.11PHY

IR/DSSS

802.11PHY

OFDM

802.11PHY

DSSS/OFDM

802.11b

11Mbit/s

2.4GHZ

802.1a

54Mbit/s

5GHZ

802.11g

54Mbit/s

5GHZ

3.1.2WiFi网络的操作模式

IEEE802.11标准定义了两种基本操作模式:

Infrastructure模式和Adhoe自组网络模式。

(1)Infrastructure模式

Infra,也称为基础网,是由AP创建,众多STA加入所组成的无线网络,这种类型的网络的特点是AP是整个网络的中心,网络中所有的通信都通过AP来转发完成。

图3-1Infrastructure模式的结构

(2)adhoc自组网络模式

Adhoc,也称为自组网,是仅由两个及以上STA自己组成,网络中不存在AP,这种类型网络是一种松散的结构,网络中所有的STA都可以直接通信。

图3.4Adhoc模式

3.2WiFi模块介绍

Wi-Fi技术的公开,厂商进入该领域门槛较低,目前市场上有很多品牌的WiFi开发模块。

为了实现方便,我选择了一个开发文档丰富的WiFi模块。

该模块由成都比特电子科技设计有限公司生产,型号为WIFI-M03。

该模块是一款专为带有UART接口平台设计的网卡模块,符合802.11b标准,可采用插针借口的方式与主机相连。

WIFI-M03网卡模块应用于带有UART接口的设备环境中,符合STM32接口的要求。

目前该产品已经广泛地应用于无线POS机、公交卡等系统中。

 

WIFI-M03接口特性如下:

a.双排(2x4)插针式接口

b.支持波特率范围:

1200~115200bps

c.支持硬件RTS/CTS流控

d.单3.3V供电

3.2.1模块硬件结构

图3-2WiFi与串口硬件连接图

模块提供双列直插8针引脚,其中外侧一排(5~8)引脚为必须连接,如上图所示,而且这些引脚完全兼容单排4针接口。

内侧一排(1~4)为可选功能引脚,连接如上图所示。

其各端口功能如下:

3.2.2模块工作模式

WIFI-M03模块内置无线网络协议、IEEE802.11协议栈以及TCP/IP协议栈,具有两种工作模式,分别是正常启动模式和配置启动模式。

a.正常启动模式

在正常启动模式下,模块的串口始终工作在透明数据传输状态,因此用户只需把它看做一条虚拟的串口线,按照使用普通串口的方式发送和接收数据就可以了。

所有通过串口接收到的数据都转发到网络上,同样,从网络上接收到的数据,模块也都原样从发送到串口上。

模块的nCTS/MODE/GPIO引脚进行了内部下拉,当用户将其悬空,模块即可自动进入正常启动模式。

在正常启动模式下,系统根据配置参数中预设的工作模式(自动/命令模式)运行。

该引脚(引脚2)在模块上电复位阶段用来进行启动模式选择,时序如下图所示。

图3-3正常启动模式

b.配置模式

在启动配置模式下,系统忽略配置参数中预设的工作模式参数,强制进入AT+命令模式,此模式通常用于使用配置管理程序进行参数修改及功能测试。

此工作模式下,模块根据用户通过串口下发的指令进行工作,用户可以通过指令对模块进行完全的控制,包括修改配置参数、控制联网、控制TCP/IP连接、数据传输等。

这是一高级的使用方式,也是对用户来说最为灵活的使用方式。

用户可以通过指令任意控制无线网络的连接、断开,也可以同时创建多个不同类型的TCP/IP连接,并保持通信。

nCTS/MODE/GPIO引脚(引脚2)在模块上电复位阶段用来进行启动模式选择,时序如下图所示。

图3-4配置模式

第四章硬件模块设计

4.1系统硬件结构

系统模块包括两个个部分分别为STM32开发平台和WiFi模块。

相互之间的。

联系及架构如下图所:

图4-1系统模块框图

4.1.1WiFi模块工作流程

模块的工作流程包括注册和数据的发送请求等,发送数据和接受数据的工作流程如图所示:

从图中,对于发送数据的流程,模块开启后,首先通过WiFi模块寻找、连接网络,当连接到网络时,主动向服务器发送注册请求,注册完后便可以根据上层的需要进行呼叫亲求了,建立呼叫链接后,移动开发平台就会开始等待上层的数据,直到接收到数据,由STM32将数据封装后由WiFi模块发送给服务器。

重复等待动作直到通信结束为止。

对于接收过程,与发送送过程相似,只是对于数据的处理,与发送过程正好相反。

图4-1数据发流程图4-2数据接收流程

4.2模块电路

4.2.1电源设计

电源引脚连接图如下:

图4-3电源引脚连接图

VDD1/2/3/4/5,VDDA供电电源范围在2.0--3.6V,VBAT(备份操作电压)在1.8V--3.6V之间。

采用稳压芯片AMS1117,该器件固定输出版本电压输出值有1.8V,2.85V,3.3V,5.0V本设计选用3.3V。

VDD引脚必须连接外部未定电容器(五个100nF的陶瓷电容器和一个钽制电容器min4.7uF,typ.10uF)。

备份寄存器的电源采用CR1220电池单独供电,防止板子掉电时,备份寄存器中的数据丢失。

4.2.2复位电路设计

引脚连接如右图:

图4-4复位引脚图

复位电路的功能是完成系统的上电复位和系统运行时的按键复位功能。

复位电路采用简单的、常见的RC复位电路即可实现复位功能。

当复位按键为按下时,电容将电路断开,此时NRST线接的是高电平。

不能复位。

当按键按下以后,电容放电,电容两端的电压逐渐降低为零,实现复位功能。

4.2.3晶振电路设计

需要提供的外部时钟源有HSE和LSE。

HSE采用8MHz的外部晶振,有点在于能产生非常精确的主时钟。

LSE是32.768kHz的低速外部晶体或陶瓷共鸣器。

能为实时时钟提供低速,精确的时钟源。

4.2.4调试接口

图4-5

TRST:

测试复位输入信号,低电平有效。

TDI:

JTAG指令和数据寄存器器的串行数据输入

TMS:

TAP控制气的模式输入信号

TDO:

JTAG指令和数据寄存器器的串行数据输出

TCK:

JTAK调试时钟

4.3LCD模块

4.3.1原理图

图4-6

图4-6中液晶显示模块引脚功能描述:

DB00---DB17数据线CS片选信号线

RS:

命令/数据标志RST硬复位TFTLCD

RD:

从TFTLCD读数据WR:

向TFTLCD写入数据

4.4存储模块

4.4.1原理图

FLASH芯片采用的是SST25VF080,其引脚连接如图

图4-7

CE:

芯片使能端SI:

串行数据输入

SO:

串行数据输出WP:

写保护

HOLD:

保持VDD:

电源2.7--3.6V

VSS:

接地端

4.4.2功能描述

存储从串口读取的数据,用作TFTLCD的缓冲区。

FLASH容量1Mbyte,因字库装载在FLASH中占用前756KByte。

可以读写的区域只有244KByte。

可以将0X40000H--0XFFFFFH作为报文存储空间。

第五章软件设计

5.1系统软件设计框图

图5-1系统软件设计框图

5.2驱动设计

5.2.1串口驱动设计

WiFi与STM32之间用USART1相连,因而初始化STM32时,需要开放USART1,可在函数UART_Configuration(void);设置波特率,中断类型等,在本项目中设置波特率为115200bps,接收和发送都产生中断以保证其既能发送数据又能接受数据。

WiFi开发模块为开发者提供了一个数据结构NetParaBuffer来统一每个参数的格式,其具体结构如下:

typedefstructNetParaBuffer

{

unsignedcharM_id;//参数名称

unsignedcharcLength;//参数长度

unsignedcharcInfo[64];//具体的参数内容

}

在配置到WiFi的相关参数后,调用WiFi_Para_set_auto()使WiFi处在自动模式并联网,这就可以通过AP连上网了。

之后的数据直接调用SendDataToWiFi就可以通过USART1将数据发送到WiFi模块,根据之前设置的服务器IP地址通过AP发送出去。

具体程序流程图如下:

图5-2串口初始化流程图

5.2.2TFT-LCD底层驱动设计

5.2.2.1与读取/写入相关的寄存器

由ILI9325数据手册可知,索引寄存器(IndexRegister)存储指令或显示数据即将被写入的寄存器的地址,寄存器选择信号(RS)、读/写信号和数据总线用来读/写ILI9325内部的指令或数据。

因此,要访问9325内部的寄存器或显示RAM,首先要通过IR索引寄存器设置目标寄存器的地址。

除了IR寄存器,与读写访问有关的寄存器如图5-2所示:

图5-3与读写有关的寄存器

表5-1说明了每个寄存器的具体用途:

表5-1与读写有关的寄存器说明

R20h,R21h(GRAM水平/垂直地址设置寄存器)

此寄存器用来设置地址计数器(AC)的初始值。

随着数据被写入内部GRAM,地址计数器按照之前所述的AM、I/D位的设置自动更新。

当从内部GRAM读取数据时,AC不自动更新。

R22h(GRAM写数据寄存器)

这个寄存器是GRAM访问接口。

当通过这个寄存器更新显示数据时,地址计数器(AC)自动增加或减少。

R22h(GRAM读数据寄存器)

此寄存器用来从GRAM中读出显示数据。

5.2.2.2读取/写入数据的过程

ILI9325内部具有一个16位的索引寄存器(IR),一个18位的写数据寄存器(WDR)和一个18位读数据寄存器(RDR)。

WDR寄存器用来临时存储即将被写入控制寄

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

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2