基于NRF2401无线通信的设计 毕业设计论文.docx
《基于NRF2401无线通信的设计 毕业设计论文.docx》由会员分享,可在线阅读,更多相关《基于NRF2401无线通信的设计 毕业设计论文.docx(20页珍藏版)》请在冰点文库上搜索。
基于NRF2401无线通信的设计毕业设计论文
第一章系统总体设计
第一节引言
数据采集技术是信息科学的一个重要部分,广泛地应用到测量、监测、工业控制、诊断、科学试验等各个领域中。
例如,当监测一些对人体有害的环境时,工作人员现场监测就可能对人的生命构成危害,这时我们可以采用测量站在线监测、工作人员在主控站查看数据的方式。
通信已经成为人类生活不可或缺的一部分。
传统上,通信是由电线、电缆以及光缆等物质媒介来传输的,但随着通信事业的发展,传统的通信传输已经跟不上需求,这就需要一个新的传输方式来支持未来通信。
无线数据传输,它不仅简单、方便而且还成本低廉,受到普遍欢迎,其开发的潜质也是有目共睹的。
第二节系统方案
1.2.1设计任务
实现无线数据传输,利用温度传感器采集现场的温度,由模/数转换器ADC将现场模拟信号(即电压)转化成数字信号,送给微处理器处理,最后通过无线方式将数据发送给接收端进行处理。
1.2.2无线数据传输概述
一般的数字采集系统,是通过传感器将捕捉的现场信号转换为电信号,经模/数转换器ADC采样、量化、编码后,为成数字信号,存入数据存储器,或送给微处理器,或通过无线方式将数据发送给接收端进行处理。
无线数据传输系统就是这样一套利用无线手段,将采集的数据由测量站发送到主控站的设备。
在本系统中采用无线传输模组nRF2401A。
第三节系统主要功能及组成
本系统由测量站和主控站两部分组成。
测量站实时采集温度和电压,并将采集到的数据传送到主控站。
主控站可以实时接收测量站的数据,并显示当前时间。
测量站的主要部分是STC89C52单片机及其控制的外围电路,其外围电路有检测部分和无线发射部分。
此外,为了方便调试还增加了显示部分、串口和控制部分。
测量站的硬件框图如图1-1所示:
图1-1测量站框图
(1)检测部分采用温度传感器DS18B20和模数转换ADC0809。
(2)无线发射部分采用无线模块nRF2401A模块。
(3)显示部分采用LCD液晶显示器1602以及LED。
(4)串口部分采用电平转换芯片MAX232。
(5)控制部分采用按键。
主控站的主要部分是STC89C52单片机及其控制的外围电路,其外围电路有显示部分和无线接收部分,此外,为了方便调试还增加了串口和控制部分。
测量站和主控站的硬件框图如图1-2所示:
图1-2主控站框图
(1)显示部分采用LCD液晶显示器1602以及LED。
(2)无线接收部分采用无线模块nRF2401模块。
(3)串口部分采用电平转换芯片MAX232。
(4)控制部分采用按键。
第二章硬件设计
第一节主要元件技术说明
2.1.1微控制器STC89C52
STC89C52是宏晶科技生产的一款单片机。
它集Flash程序存储器、通用8位微处理器于一体。
它与51系列单片机完全兼容,但它的存储和抗干扰能力更强,处理速度更快,功耗更低。
可广泛应用于各种控制领域。
STC89C52引脚图如图2-1所示:
图2-1STC89C52引脚图
STC89C52主要性能参数:
·与MCS-51产品指令系统完全兼容
·8k字节在系统编程Flash闪速存储器
·10000次擦写周期
·4.1~5.5V的工作电压范围
·全静态工作模式:
0Hz~80MHz
·128×8字节内部RAM
·32个可编程I/O口线
·3个16位定时/计数器
·6个中断源
·全双工串行UART通道
·低功耗空闲和掉电模式
·有看门狗功能
2.1.2无线模组nRF2401A
nRF2401是单片射频收发芯片,工作于2.4~2.5GHzISM频段,芯片内置频率合成器、功率放大器、晶体振荡器和调制器等功能模块,输出功率和通信频道可通过程序进行配置。
芯片能耗非常低,以-5dBm的功率发射时,工作电流只有10.5mA,接收时工作电流只有18mA,多种低功率工作模式,节能设计更方便。
其DuoCeiverTM技术使nRF2401可以使用同一天线,同时接收两个不同频道的数据。
nRF2401适用于多种无线通信的场合,如无线数据传输系统、无线鼠标、遥控开锁、遥控玩具等。
1、芯片管脚连接及功能描述
表2-1nRF2401A引脚及功能
2、主要性能参数:
·可以进行无线数据发送和接收
·工作电压:
3.3V
·0~1M数据传输速率
·2.4G~2.5G全球通用频段
·125阶(梯度1MHz)收发频率
·地址检验和CRC校验
3、使用nRF2401A时需要注意的地方:
(1)并不是18个Byte的命令字全部需要写入,通常我们只需要写后15个Byte即可;
(2)15个Byte的命令字在nRF2401.C文件中通过InitData[15]定义,用户需根据自己的通信格式对之进行修改;
(3)bit15~bit0可以根据需要反复修改,但是bit144~bit16只有上电后的第一次初始化有效。
2.1.3温度传感器DS18B20
DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温原件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。
DS18B20的性能特点如下:
·独特的单线借口仅需要一个端口引脚进行通信;
·多个DS18B20可以并联在唯一的三线上,实现多点组网功能;
·无需外部器件;
·可通过数据线供电,电压范围为3.0~5.0V;
·零待机功耗;
·温度以9或12位数字量读出;
·用户可定义的非易失性温度报警设置;
·负电压特性,电源极性接反时,温度计不会因为发热而烧毁,但不能正常工作。
DS18B20内部结构框图如图2-2所示:
图2-2DS18B20内部结构框图
值得注意的是:
由于DS18B20单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要。
系统对DS18B20的各种操作必须按协议进行。
操作协议为:
初始化DS18B20(发复位脉冲)→发ROM功能命令→发存储器操作命令→处理数据。
2.1.4模数转换芯片ADC0809
ADC0809是采样频率为8位的、以逐次
逼近原理进行模—数转换的器件。
其内部有
一个8通道多路开关,它可以根据地址码锁
存译码后的信号,只选通8路模拟输入信号
中的一个进行A/D转换。
ADC0809引脚图如
图2-3所示:
ADC0809主要特点是:
·8路8位A/D转换器,即分辨率8位。
·具有转换起停控制端。
·转换时间为100μs
·单个+5V电源供电
·模拟输入电压范围0~+5V,不需零点和满刻度校准。
·工作温度范围为-40~+85摄氏度
·低功耗,约15mW。
2.1.5时钟芯片DS1302
DS1302是DALLAS公司推出的穿行接口实时时钟芯片。
它既提供实时时钟,又把关键的数据位存储于RAM。
芯片使用简单,外部连线少,在智能化仪表及自动控制领域具有广泛用途。
DS1302主要特点是:
·简单的三线串行I/O接口;
·2.5~5.5V的电压工作范围(在2.5V工作时耗电小于300nA);
·与TTL兼容(Vcc=5V)时;
·实时时钟包括秒、分、小时、日、月、星期和年(闰年)等信息;
·31×8静态RAM可供用户使用;图2-4DS1302引脚图
·可选的涓流充电方式;
·工作电源和备份电源双引脚输入;
·备份电源可由大容量电容来替代。
DS1302引脚功能如表2-2所示:
表2-2DS1302引脚功能表
引脚号
引脚名称
功能
1
VCC2
主电源
2、3
X1、X2
振荡源,外接32.768kHz晶振
4
GND
地线
5
RST
复位/片选端
6
I/O
串行数据输入/输出端(双向)
7
SCLK
串行时钟输入端
8
VCC1
后备电源
2.1.6液晶显示器
1602字符液晶显示模块,可显示数字和字母。
与数码管相比显示内容更丰富,而且编程简单。
它能够显示系统的当前工作时间、时间以及温度传感器检测到的温度。
为使用者观察提供了方便。
1602液晶引脚及功能如表2-2所示:
表2-31602液晶引脚功能表
1602液晶其主要特点是:
·具有字符发生器ROM可现实192字符;
·具有80字节的RAM;
·标准的接口特性,适配M6800系列MCU的操作时序;
·单+5V电源供电;
·低功耗、长寿命、可靠性高。
第二节电路板的设计
在本系统中,电路板的设计使用的是Protel99SE软件。
电路板设计的主要步骤是:
原理图的设计→产生网络表→印制电路板。
1、主控站的原理图如图所示:
图2-5主控站原理图
2、主控站的PCB如图所示:
图2-6主控站PCB
3、主控站的3D视图如图所示:
图2-7主控站3D视图
4、测量站的原理图如图所示:
图2-8测量站的原理图
5、测量站的PCB如图所示:
图2-9测量站PCB
6、测量站的3D视图如图所示:
图2-8测量站3D视图
在硬件设计时,需要注意以下几点:
(1)电源线要加粗,合理走线、接地;
(2)布线时避免90度折线,尽量平滑过渡;
(3)充分考虑单片机的带载驱动能力。
(4)尽可能的选择典型电路,并符合单片机的常规使用方法;
(5)在充分满足系统功能要求前提下,留余地以便于二次开发;
(6)硬件结构设计应与软件设计方案一并考虑;
(7)封装大小要严格按照元器件实际尺寸要特别注意元器件竖向所占空间;
(8)硬件上要有可靠性与抗干扰设计,电源要用电容滤波,增强电源的稳定性;
第三节硬件电路的调试
硬件调试,主要是检查电路的焊接是否正确,然后可用万用表测试或通电检测。
在程序的控制下,首先,检测主控站和从控站的各个模块及芯片是否正常工作;然后,测试主控站与从控站是否正常通信。
本系统的硬件经初步测试各个模块能够正常工作。
第三章软件的设计
第一节软件流程图
3.1.1主控站和测量站的主程序流程图
图3-1主控站主程序流程图图3-2测量站主程序流程图
3.1.2ADC0809和DS18B20子程序流程图
图3-3ADC0809子程序流程图图3-4DS18B20子程序流程图
3.1.3DS1302子程序流程图
图3-5DS1302子程序流程图
3.1.4无线模块nRF2401的流程图:
图3-6nRF2401初始化程序流程图图3-7nRF2401数据发送流程图
图3-8nRF2401数据接收流程图
软件设计时,需要注意以下几点:
(1)合理利用单片机板内资源;
(2)在编写程序前一定要先读懂芯片的时序图。
第四章总结
本系统通过硬件的调试和软件的测试,最终实现了我们所要达到的系统功能要求:
测量站能够采集电压、采集温度,并将采集数据通过无线传输至主控站;主控站能够实时接收并在LCD显示从控站发送的数据。
此外,在本系统中还设计串口和电源。
经实验证明,本系统工作稳定能够达到设计要求。
在软件设计中,系统还存在一个问题,就是它一掉电系统信息就会复位,就是说它没有记忆的功能,通过资料的查询证明在现有硬件的基础上是可以拥有此功能的,因此,接下来我会为系统进一步增加此功能的。
关于在硬件设计的过程中,使我感到标准的MSC-51系列的单片机的数据通信能力开始显得捉襟见肘,并难以与许多新型数据接口直接连接。
这主要是因为标准MSC-51系列单片机本身提供的数据传输接口只有8位并行数据和全双工串行数据接口两种,而没有以硬件的形式提供其他各类新型数据传输接口。
采用标准MSC-51系列单片机的应用系统必需通过软件或硬件方式对数据传输接口进行扩展,才能满足数据通信速率和各种新型数据接口的需要。
例如,本系统中用到的DA18B20是1-Wire总线接口,以及马上在系统中要用到的时钟芯片DS1302是SPI串行总线接口,这些都是通过扩展接口来实现与单片机的通信。
本系统是从硬件和软件两方面来设的,目的性强,对自己所学知识的一个综合能力的很好的考验,也是发挥自我创新能力的挑战。
参考文献
[1]杨金岩,郑应强,张振仁.8051单片机数据传输接口技术与应例
[M].北京:
人民邮电出版社.
[2]、李飞光,楼然苗,胡佳文,谢象佐编著.单片机课程设计实例指导.北京航空航天大学出版社,2005年6月.TP36/1950
[3]、马忠梅,籍顺心,张凯,马岩编著.单片机的C语言应用程序设计.北京航空航天大学出版社,2007年2月.TP31/3786
[4]、李全利编著.单片机原理及应用技术.高等教育出版社,2006年12月.
[5]、扬志忠,卫桦林编著.数字电子技术.高等教育出版社,2005年5月.
[6]、周良权,傅恩锡,立世磬编著.模拟电子技术基础.高等教育出版社,2005年12月.
[7]、陈小中,黄宁,赵小侠编著.单片机接口技术使用子程序.人民邮政出版社,2005年9月.TP368.147
[8]、常敏,王涵,范江波等编著.51单片机应用程序开发与实践.电子工业出版社,2009年3月.TP368.1
[9]、白延敏编著.51单片机典型系统开发实例精讲.电子工业出版社,2009年1月.TP368.1
[10]、冯建华、赵亮编著.单片机系统设计与开发.人民邮政出版社,2004年11月.TP368.1
[11]、求是科技编著.单片机典型外围器件及应用实例.人民邮政出版社,2006年2月.TP368.14
后记
在本论文的成文过程中得到了很多老师、同学的帮助,老师对我们的指点尤为重要,每次遇到难题,向老师寻求帮助时,老师都会为我指明方向。
另外,感谢校方给予我这样一次机会,能够独立地完成一个课题,并在这个过程当中,给予我们各种方便,使我们在即将离校的最后一段时间里,能够更多学习一些实践应用知识,增强了我们实践操作和动手应用能力,提高了独立思考的能力。
再一次对我的母校表示感谢。
感谢在整个毕业设计期间和我密切合作的同学,和曾经在各个方面给予过我帮助的伙伴们,在大学生活即将结束的最后的日子里,我们再一次演绎了团结合作的神话,把一个庞大的,从来没有上手的课题,圆满地完成了。
正是因为有了你们的帮助,才让我不仅学到了本次课题所涉及的新知识,更让我感觉到了知识以外的东西,那就是团结的力量。
最后,感谢所有在这次毕业设计中给予过我帮助的人。
对上述朋友,再一次真诚地表示感谢!