欢迎来到天天文库
浏览记录
ID:24441090
大小:1.77 MB
页数:48页
时间:2018-11-14
《基于WIFI模块和单片机的无线数据传输(附代码)》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、目录第一章阶段任务第二章基于WIFI模块的无线数据传输的原理1.1时钟模块1.2最小单片机系统的原理1.3温度传感器DS18B201.4串口1.5WIFI模块第三章基于WIFI模块的无线数据传输的实现 2.1WIFI模块设置2.2串口部分设置2.3调试与运行过程第四章程序与框图第五章小结第一章阶段任务:第一阶段(1天)1、了解课程所给的WIFI模块,并详细研读其说明书2、复习单片机知识(2天)1、了解温湿度传感器模块,并设计其硬件模块2、了解lcd1602显示模块,并设计其硬件模块(2天)1、设计整合电路:5v转3.3v电路2、串口通讯电路第二阶段(4天)
2、1、链接并完成整体电路图的设计,并检查2、焊接电路并调试。第三阶段(3天)1、根据设计的硬件模块设计程序(1):温湿度传感器模块(2):串口通讯模块(3):WIFI传输与接收模块(4):显示电路模块(3天)2、将设计好的模块程序烧录到单片机内,调试第四阶段:2天(2天)写报告第二章基于WIFI模块的无线数据传输的原理1.1时钟DS1302模块:电路原理图:DS1302与单片机的连接也仅需要3条线:CE引脚、SCLK串行时钟引脚、I/O串行数据引脚,Vcc2为备用电源,外接32.768kHz晶振,为芯片提供计时脉冲。读写时序说明:DS1302是SPI总线驱动方
3、式。它不仅要向寄存器写入控制字,还需要读取相应寄存器的数据。控制字总是从最低位开始输出。在控制字指令输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从最低位(0位)开始。同样,在紧跟8位的控制字指令后的下一个SCLK脉冲的下降沿,读出DS1302的数据,读出的数据也是从最低位到最高位。数据读写时序如图1.2单片机最小系统的原理:说明复位电路:由电容串联电阻构成,由图并结合"电容电压不能突变"的性质,可以知道,当系统一上电,RST脚将会出现高电平,并且,这个高电平持续的时间由电路的RC值来决定.典型的51单片机当RST脚的高电平持续两个机
4、器周期以上就将复位,所以,适当组合RC的取值就可以保证可靠的复位.晶振电路:典型的晶振取11.0592MHz(因为可以准确地得到9600波特率和19200波特率,用于有串口通讯的场合)/12MHz(产生精确的uS级时歇,方便定时操作)单片机:一片AT89S51/52或其他51系列兼容单片机特别注意:对于31脚(EA/Vpp),当接高电平时,单片机在复位后从内部ROM的0000H开始执行;当接低电平时,复位后直接从外部ROM的0000H开始执行.1.3温度传感器DS18B20的原理(连接到单片机最小系统,并将温度发送给WIFI模块):3.1.1DS18B20性
5、能特点(1)独特的单线接口方式,只需一个接口引脚即可通信;(2)每一个DS18B20都有一个唯一的64位ROM序列码;(3)在使用中不需要任何外围元件;(4)可用数据线供电,电压范围:+3.0V-+5.5V;(5)测温范围:-55℃-+125℃,在-10℃-+85℃范围内精度为+0.5℃,分辨率为0.0625℃;(6)通过编程可实现9-12位的数字读数方式。温度转换成12位数字信号所需时间最长为750ms,而在9位分辩模式工作时仅需93.75ms;(7)用户可自设定非易失性的报警上下限值;(8)告警搜索命令可识别和定位那些超过报警限值的DS18B20;(9)
6、多个DS18B20可以并联在惟一的三线上,实现多点测温;(10)电源极性接反时,DS18B20不会因发热而烧毁,但不能正常工作;3.1.2DS18B20内部存储器及温度数据格式对于DS18B20内部存储器结构(如图3.1),它包括一个暂存RAM和一个非易失性电可擦除EERAM,后者存放报警上下限TH、TL。当改变TH、TL中的值时,数据首先被写进暂存器的第二、三字节中,主机可再读出其中内容进行验证。如果正确,当主机发送复制暂存器命令,暂存器的第二、三字节将被复制到TH、TL中,这样处理有利于确保该数据在单总线上传输的完整性[7]。暂存器结构EERAM结构温度
7、低字节(BYTE0)温度高字节(BYTE1)上限报警温度TH(BYTE2)下限报警温度TL(BYTE3)结构寄存器(BYTE4)保留(BYTE5)保留(BYTE6)保留(BYTE7)CRC(BYTE8)THTL结构寄存器图3.1DS18B20结构框图暂存存储器作用是在单线通信时确保数据的完整性,它由8字节组成,头两个字节表示测得的温度读数。以12位转化为例说明温度高低字节存放形式(温度的存储形式如表3.1)及计算:12位转化后得到的12位数据,存储在18B20的两个高低8位的RAM中,二进制中的前面5位是符号位。如果测得的温度大于0,这5位为0,只要将测到的
8、数值乘于0.0625即可得到实际温度;如果温度小于0
此文档下载收益归作者所有