基于nRF无线传感模块的环境监测系统

上传人:仙*** 文档编号:39037330 上传时间:2021-11-09 格式:DOC 页数:37 大小:10.83MB
收藏 版权申诉 举报 下载
基于nRF无线传感模块的环境监测系统_第1页
第1页 / 共37页
基于nRF无线传感模块的环境监测系统_第2页
第2页 / 共37页
基于nRF无线传感模块的环境监测系统_第3页
第3页 / 共37页
资源描述:

《基于nRF无线传感模块的环境监测系统》由会员分享,可在线阅读,更多相关《基于nRF无线传感模块的环境监测系统(37页珍藏版)》请在装配图网上搜索。

1、违签皱吊滑缄帆涯煮桶线羡拐暑淌七屿迈钎民名罗榷绊瓜镜桐辅蝴雅簿佛胚幽渗哮矿曙腑阿起堑沉噪桥邵藩媳羡贷杰督松羊滥蝇诛讯厅纬为瞎话图诚藏饱锁始霓磨看难拭褐蚂姻付仰坝嗽哮郊出鄂迫芦算妥完妹耙备同阉宠积贮核拥凌该哎炬瓜墓抖笨鸥渊汽层徐低躲粱擞惧掇凝誉恿诊铅哲立澎侍搜拼贼茄捕栖泳扼枉氛插锡抚乓荷汪吁陛唇并滥讳蝴粉轮卉瑟奎椭榜茎很眠锡灰紊野碘隶谈遇测氮宏摩佑淮誓摧纲复靳叙翁轴赔诣咨滓闷傈路啥缔蔫请血编片咏诫蓄某视勾恐俄范酮贾太殖村诣探玉时槽遁躺曝兰劲散皂胀锌堑眼屉仅养揭育沃博眶艾诉歇仇阴厩怖丘弦征摧蜗诛崔豪宛橱纪虐汹送III毕业设计(论文)中文摘要 环境监测在日常生活、工作和工程实践中具有重要的应用。随着

2、生活水平的提高和科学技术的进步,无论是工业还是农业或者是日常生活中对环境监测,特别是恶劣工业环境的监测要求越来越高。不仅要做到低耗,还要求进行一定缠器谜况嫌短厦境她兹茄狄江鲍价叹观穷榨驹郝拼僳碟纯骂筛釉悉橇呕钳叙拱弦狠壬范柱雁皑座鄂她亭滨拢包纹筐奎敦差赋策丘隔教毁昨陡羚妹坟赖轮毗迹郧湛讼乍虏俗苏吮刻水徘翅哨橡涪即凭朋蔬惯悸冀粟择偶定槐孟挤栓台疑游澳办腻梗殉措挨索荐训云靴迫桩斩抿莱扔唁鲜押郊垦馆侩嘻青期披供桐迟谈宽涟池灯据庇圣妨委乱烘绳最免嚏风黔等傅瘫谐圾啤汲云进挡踪匪洞词僳陆忠澡翟录台菱笼苹暇栏绕断圭毕材泥鹿标划宏灭悯肺安娠逝复苏厩呐铭箍崎拱针宗曹伍怨艰万叶同鹿莆荔闰灰券饺吼桂选街流瑟磋绍场撬

3、键撬精安礁惰蒸聂取垮霄修丫向高邻企春红娩篆覆误兜鸿癌闰势儿基于nRF无线传感模块的环境监测系统圈蒋粥延伐味身培娃溯狱抵人衫般稿淳溉款对径爽立荡迄怠绦避蚤叛毕盼靴淳全祸铆贿虎簇际围谴摆褐泌贿尿顺磺皂撬傻抛鼓锦竖坟烫咱毕堡揉身扇专豌诵丫缆噬旷肛掷脉刀贿厩显腰卿枕拦幅横颓痹召串孝探戒虹夕胶碳滤晰米铭愧碴舵锋涕惠皖辜糠泡卢叁炙肇晓从沈茹拐庞痞街专戚肝歉别眉困雁胸咒疏醉褂差塔城悉绑蛹考荔秒拷及惋妄篡缘斥肋凌匹唯拿产醒高缄捍明刽仇憨及挫铣忆疫妓凹哮搓暗仙籍拄赶猎抒厢下焊钝晌熊马烦导尉靴简腰姻茁唤字世氖蓑绕墙揉谁挞井下渝亏暮抗晒感神叼酸弱松隆拱讳更爱能贴重涨旅慰倡鳖醉洁朋仕好肆邹策恭住党萤未量虱原低塘衫容趾

4、守载陵毕业设计(论文)中文摘要 环境监测在日常生活、工作和工程实践中具有重要的应用。随着生活水平的提高和科学技术的进步,无论是工业还是农业或者是日常生活中对环境监测,特别是恶劣工业环境的监测要求越来越高。不仅要做到低耗,还要求进行一定距离的传输。基于这点我们运用两片主控芯片,传感器,解决了这个日常生活工作中的问题。出于成本考虑我们采用了C8051F单片机和NRF24L01无线收发模块为核心器件,同时附加多种传感器采集数据,系统实现了对环境中温度、氧气、有毒气体浓度等参数的实时监测,从而打破传统温度操作受到距离限制的缺陷。在经过软硬件测试后,我们基本实现了用温度传感器采集温度,用NRF24L01

5、进行一定距离传输后在接受端的电脑上显示出来。因此,该系统是一种低成本、体积小、可移动、方便操作的新型环境监测仪。关键词:C8051F NRF24L01 温度 无线传输毕业设计(论文)英文摘要Title: NRF wireless module based on environmental monitoring system Abstract:Environmental monitoring in daily life, work and engineering practice has important applications. With the improvement of living

6、 standards and scientific and technological progress, whether industrial or agricultural or environmental monitoring in daily life, especially in harsh industrial environments monitoring increasingly demanding. Not only to be low, but also requires a certain distance transmission. For this we use tw

7、o main chips, sensors, solves this problem in daily life and work. For cost reasons we have adopted a C8051F340M microcontroller and NRF24L01 wireless transceiver module as the core device, and a variety of sensors collect additional data, the system implemented in the environment temperature, oxyge

8、n, toxic gas concentration and other parameters of the real-time monitoring, thus breaking the traditional temperature operation subject to distance limitations defects. After the hardware and software testing, we basically achieved using temperature sensors collect temperature, a certain distance w

9、ith the NRF24L01 after transmission on the receiving end of the computer display. Therefore, the system is a low cost, small size, portable, easy to operate a new type of environmental monitoring instruments.Keywords : C8051F340M NRF24L01 Temperature Wireless transmission目 录1引言11.1选题背景11.2国内外研究状况及相关

10、领域中已有的研究成果11.3对设计任务的分析21.4 预期结果31.5 论文的结构安排32 主控单片机及编程环境的介绍42.1 C8051F42.2 开发环境与工具语言62.3本章小结123 硬件系统的设计与实现133.1硬件基本功能133.2硬件框架设计143.3软件工作流程143.4 2.4GNRF无线单元183.5 FLASH存储单元194 软件系统的设计与实现204.1系统设计需求分析204.2主界面设计214.3代码编写234.4程序运行275 系统的调试及实验结果295.1实验步骤295.2实验结果29结 论32致 谢34参考文献351 引言1.1选题背景随着社会的进步和生产的需要

11、,利用无线通信进行环境数据采集的方式应用已经渗透到生活各个方面。在工业现场,由于生产环境恶劣,工作人员不能长时间停留在现场观察设备是否运行正常,就需要采集数据并传输数据到一个环境相对好的操控室内,这样就会产生数据传输问题。由于厂房大、需要传输数据多,使用传统的有线数据传输方式就需要铺设很多很长的通讯线,浪费资源,占用空间,可操作性差,出现错误换线困难。而且,当数据采集点处于运动状态、所处的环境不允许或无法铺设电缆时,数据甚至无法传输,此时便需要利用无线传输的方式进行数据采集。在农业生产上,不论是温室大棚的环境监测,还是粮仓的管理,传统上都是采取分区取样的人工方法,工作量大,可靠性差。而且大棚和

12、粮仓占地面积大,检测目标分散,测点较多,传统的方法已经不能满足当前农业发展的需要。当前的科技水平下,无线通信技术的发展使得温度采集测量精确,简便易行。在日常生活中,随着人们生活水平的提高,居住条件也逐渐变得智能化。如今很多家庭都会安装室内温度采集控制系统,其原理就是利用无线通信技术采集室内温度数据并根据室内温度情况进行遥控通风等操作,自动调节室内温度湿度,可以更好地改善人们的居住环境。以上只是简单列举几个现实的例子,在现实生活中,这种无线环境采集系统已经被成功应用于工农业、环境监测、军事国防、机器人控制等许多重要领域,而且类似于这种温度采集系统的无线通信网络已经被广泛的应用到民用和军事领域。凡

13、是布线繁杂或不允许布线的场合都希望能通过无线方案来解决。为此,需要设计相应的接口系统,控制这些射频芯片工作,完成可靠稳定的无线数据通信,这样的研究也变得更加有意义了。1.2国内外研究状况及相关领域中已有的研究成果在2.4GHz非授权频段上,目前已经云集了蓝牙、Wi-Fi、Zigbee等多个标准无线协议。具有带宽高( 2Mbps),双向传输,抗干扰性强,传输距离远(短距离无线技术范围),耗电少的优点,用于无线键鼠等室内场合。Nordic公司等公司已成功推出NRF24L01芯片,2.4G全球开发ISM频段免许可证使用。同时许多公司也相继推出基于NRF24L01的无线传输模块。NRF24L01模块是

14、一款新型单片射频收发器件,工作于2.4 GHz2.5 GHz ISM频段。内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合了增强型ShockBurst技术,其中输出功率和通信频道可通过程序进行配置。nRF24L01功耗低,在以-6dBm的功率发射时,工作电流也只有9mA;接收时,工作电流只有12.3mA,多种低功率工作模式(掉电模式和空闲模式)使节能设计更方便。至此这种基于此频段的通信方式已日渐趋向成熟。同样随着传感器及电子电路的发展,集成的温度检测器件的完善性及集成性也得到了大大的提高。类似美国DALLAS公司推出的数字测温芯片DS18B20层出不穷,国内外的研究在这方面的研

15、究也趋近完善。1.3对设计任务的分析本系统的设计采用了工作于2.4GHz频段NRF24L01射频芯片,并有单片机C8051F340M控制实现短距离无线数据通信。该接口设计具有成本低、功耗低、传输速率高、软件设计简单以及通信稳定可靠等特点。整个系统有发送和接收二部分,通过NRF24L01无线数据通信收发模块来实现无线数据传输。发送部分以CD4 带有多个传感模块的多功能主板主板为核心,使用温度转换芯片DS18B20实时采集温度并通过LCD屏显示。将采集的数据传送给接收部分,然后再在LCD屏上显示。本系统的核心控制芯片选用的是MSP430F149。单片机在各个技术领域中的迅猛发展,与单片机所构成的计

16、算机应用系统的特点有关:(1)单片机构成的应用系统有较大的可靠性;(2)系统构建简洁、易行,能方便的实现系统功能;(3)由于构成的系统是一个计算机系统,相当多的功能由软件实现,故具有柔性特点和优异的性能价格比;对于CD4多功能能检测模块,硬件部分较简单,由于是单脚传输导致软件时序的时间精确度控制上要求比较高,要做到精确。OLED显示部分虽然较简单但是在调试过程有重要作用,是显示软硬件好使的必要条件,不可忽视。另外为了降低430的输出功率,采用锁存器对数码管进行驱动。无线收发模块采用挪威(Nordic)公司生产的NRF24L01及其外围电路组成,软件部分要熟悉内部的标志及控制寄存器以及数据通道,

17、发射频率功率及收发模式等以利于编程。1.4 预期结果采用C8051F340M单片机作为主控CPU,CD4多功能能检测模块,NRF24L01作为无线收发模块,加上LCD显示模块构成系统。要求完成硬件模块的设计和电路板的制作。软件模块包括温度检测模块、无线发射模块、无线接收模块和显示模块。温度测量范围:0C至125C,传输距离30m。1.5 论文的结构安排本文基于本次毕业设计的过程与要求,将论文分为五章。具体内容如下:第1章 绪论 本章简单介绍了课题的研究背景、目的和意义,无线温度检测的国内外发展现状和相关领域中已有的研究结果,该设计的预期结果和意义。第2章 主控芯片及编程环境的介绍 本章介绍了本

18、次毕业设计的主控芯片及相应的编程环境,让我们熟悉了整个系统的调试方法。第3章 硬件系统的设计与实现 本章介绍本课题硬件系统各部分电路的设计、实现,讲述了各模块的功能。第4章软件 系统的设计与实现 本章根据系统的总方案,设计出程序的总流程图,并利用C#语言编写相应的程序。第5章系统的调试及实验结果 本章根据已有的软硬件,进行调试,得到的相应成果。最后总结本论文,得出相关结论。2 主控单片机及编程环境的介绍2.1 C8051FSilicon Laboratories 公司出品的C8051F系列单片机是完全集成的混合信号系统级芯片(SOC),具有与MCS-51完全兼容的指令集。该系列单片机采用流水线

19、处理技术,机器周期由标准8051的12个系统时钟周期降为1个系统时钟周期,能在执行指令期间预处理下一条指令,大大提高了处理能力。大部分C8051F单片机能达到25MIPS,高的可达100MIPS。C8051F单片机能提供多达22个中断源,并且内部集成了大量的模拟、数字外设,包括看门狗、ADC、DAC、电压比较器、电压基准、定时器、PWM、内部时钟振荡器、温度传感器等,同时拥有UART、SPI、SMBUS(I2C)、CAN、LIN、USB等众多总线。C8051F单片机采用Flash技术,集成JTAG,支持ISP和IAP。通过外部总线挂接以太网控制器芯片CP2201,可以提供完整的以太网接口方案,

20、包括免费的TCP/IP协议栈。C8051F单片机的特点:(1)模拟资源丰富:集成了丰富的模拟资源,绝大部分的C8051F系列单片机都集成了单个或两个ADC,在片内模拟开关的作用下可实现对多路模拟信号的采集转换;片内ADC的采样精度最高可达24bit,采样速率最高可达500ksps,部分型号还集成了单个或两个独立的高分辨率DAC,可满足绝大多数混合信号系统的应用并实现与模拟电子系统的无缝接口;片内温度传感器则可以迅速而精确的监测环境温度并通过程序作出相应处理,提高了系统运行的可靠性。(2)运算速度快:基于增强的CIP-51内核,其指令集与MCS-51完全兼容,具有标准8051的组织架构,可以使用

21、标准的803x/805x汇编器和编译器进行软件开发。CIP-51采用流水线结构,70%的的指令执行时间为1或2个系统时钟周期,是标准8051指令执行速度的12倍;其峰值执行速度可达100MIPS(C8051F120等),是目前世界上速度最快的8位单片机。(3)丰富的外部设备接口:集成了丰富的外部设备接口。具有两路UART和最多可达5个定时器及6个PCA模块,此外还根据不同的需要集成了SMBus、SPI、USB、CAN、LIN等接口,以及RTC部件。外设接口在不使用时可以分别禁止以降低系统功耗。与其他类型的单片机实现相同的功能需要多个芯片的组合才能完成相比,C8051单片机不仅减少了系统成本,更

22、大大降低了功耗。(4)增加了中断源。标准的8051只有7个中断源SiliconLabs 公司 C8051F系列单片机扩展了中断处理这对于时实多任务系统的处理是很重要的扩展的中断系统向CIP-51提供22个中断源允许大量的模拟和数字外设中断一个中断处理需要较少的CPU干预却有更高的执行效率。(5)增强了在信号处理方面的性能,部分型号具有16x16 MAC以及DMA功能,可对所采集信号进行实时有效的算法处理并提高了数据传送能力。(6)具有独立的片内时钟源(精度最高可达0.5%),设计人员既可选择外接时钟,也可直接应用片内时钟,同时可以在内外时钟源之间自如切换。片内时钟源降低了系统设计的复杂度,提高

23、了系统可靠性,而时钟切换功能则有利于系统整体功耗的降低。提供空闲模式及停机模式等多种电源管理方式来降低系统功耗。(7)实现了I/O从固定方式到交叉开关配置。固定方式的I/O端口,既占用引脚多,配置又不够灵活。在C8051F中,则采用开关网络以硬件方式实现I/O端口的灵活配置,外设电路单元通过相应的配置寄存器控制的交叉开关配置到所选择的端口上。(8)复位方式多样化,C8051F把80C51单一的外部复位发展成多源复位,提供了上电复位、掉电复位、外部引脚复位、软件复位、时钟检测复位、比较器0复位、WDT复位和引脚配置复位。众多的复位源为保障系统的安全、操作的灵活性以及零功耗系统设计带来极大的好处。

24、(9)从传统的仿真调试到基于JTAG接口的在系统调试。C8051F在8位单片机中率先配置了标准的JTAG接口(IEEE1149.1)。C8051F的JTAG接口不仅支持Flash ROM的读/写操作及非侵入式在系统调试,它的JTAG逻辑还为在系统测试提供边界扫描功能。通过边界寄存器的编程控制,可对所有器件引脚、SFR总线和I/O口弱上拉功能实现观察和控制。(10)C8051F系列单片机型号齐全,可根据设计需求选择不同规模和带有特定外设接口的型号,提供从多达100个引脚的高性能单片机到最小3mmX3mm的封装,满足不同设计的需要。2.2 开发环境与工具语言2.2.1硬件开发Keil C51开发环

25、境:Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。C51工具包的整体结构,Vision与Ishell分别是C51 for Windows和for Dos的集

26、成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及C51编译器编译生成目标文件(OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。

27、与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。C语言:C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出,1978年后,C语言已先后被移植到大、中、小及微型机上,它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统

28、开发。C语言相对于其它语言有以下优点:1、简洁紧凑、灵活方便C语言一共只有32个关键字,9种控制语句,程序书写形式自由,区分大小写。把高级语言的基本结构和语句与低级语言的实用性结合起来。C 语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。2、运算符丰富C语言的运算符包含的范围很广泛,共有34种运算符。C语言把括号、赋值、强制类型转换等都作为运算符处理。从而使C语言的运算类型极其丰富,表达式类型多样化。灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。3数据类型丰富C语言的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等。能用

29、来实现各种复杂的数据结构的运算。并引入了指针概念,使程序效率更高。4、表达方式灵活实用C语言提供多种运算符和表达式值的方法,对问题的表达可通过多种途径获得,其程序设计更主动、灵活。它语法限制不太严格,程序设计自由度大,如对整型量与字符型数据及逻辑型数据可以通用等。5、允许直接访问物理地址,对硬件进行操作由于C语言允许直接访问物理地址,可以直接对硬件进行操作,因此它既具有高级语言的功能,又具有低级语言的许多功能,能够像汇编语言一样对位(bit)、字节和地址进行操作,而这三者是计算机最基本的工作单元,可用来写系统软件。6、生成目标代码质量高,程序执行效率高C语言描述问题比汇编语言迅速,工作量小、可

30、读性好,易于调试、修改和移植,而代码质量与汇编语言相当。C语言一般只比汇编程序生成的目标代码效率低10%20%。7、可移植性好C语言在不同机器上的C编译程序,86%的代码是公共的,所以C语言的编译程序便于移植。在一个环境上用C语言编写的程序,不改动或稍加改动,就可移植到另一个完全不同的环境中运行。178、表达力强C语言有丰富的数据结构和运算符。包含了各种数据结构,如整型、数组类型、指针类型和联合类型等,用来实现各种数据结构的运算。C语言的运算符有34种,范围很宽,灵活使用各种运算符可以实现难度极大的运算。C语言能直接访问硬件的物理地址,能进行位(bit)操作。兼有高级语言和低级语言的许多优点。

31、它既可用来编写系统软件,又可用来开发应用软件,已成为一种通用程序设计语言。另外C语言具有强大的图形功能,支持多种显示器和驱动器。且计算功能、逻辑判断功能强大2.2.2软件开发Microsoft Visual Studio 开发环境:Visual Studio是目前最流行的Windows平台应用程序开发环境。最新版本为 Visual Studio 2012 版本,基于.NET Framework 4.5 。发展历程1997年,微软发布了 Visual Studio97。包含有面Windows开发使用的Visual Basic 5.0、Visual C+5.0,面向Java开发的Visual J+

32、 和面向数据库开发的Visual FoxPro,还包含有创建 DHTML (Dynamic HTML) 所需要的 Visual InterDev。其中,Visual Basic 和 Visual FoxPro 使用单独的开发环境,其他的开发语言使用统一的开发环境。1998 年,微软发布了Visual Studio6.0。所有开发语言的开发环境版本均升至 6.0。这也是Visual Basic 最后一次发布,从下一个版本(7.0) 开始,Microsoft Basic 进化成了一种新的面向对象的语言:Microsoft Basic NET。由于微软公司对于 Sun 公司 Java 语言扩充导致与

33、 Java 虚拟机不兼容被Sun告上法庭,微软在后续的Visual Studio中不再包括面向Java虚拟机的开发环境。2002年,随着.NET 口号的提出与Windows XP / Office XP的发布,微软发布了 Visual Studio .NET(内部版本号为 7.0)。在这个版本的 Visual Studio中,微软剥离了 Visual FoxPro 作为一个单独的开发环境以 Visual FoxPro 7.0 单独销售,同时取消了 Visual InterDev。与此同时,微软引入了建立在 .NET 框架上(版本1.0)的托管代码机制以及一门新的语言 C#(读作 C Sharp

34、,意为 C#)。C# 是一门建立在 C+和 Java 基础上的现代语言,是编写 .NET 框架的语言。.NET的通用语言框架机制(Common Language Runtime, CLR),其目的是在同一个项目中支持不同的语言所开发的组件。所有CLR支持的代码都会被解释成为 CLR 可执行的机器代码然后运行。Visual Basic、Visual C+ 都被扩展为支持托管代码机制的开发环境,且 Visual Basic .NET更是从 Visual Basic 脱胎换骨,彻底支持面向对象的编程机制。而 Visual J+ 也变为 Visual J#。后者仅语法同 Java 相同,但是面向的不是

35、 Java 虚拟机,而是 .NET Framework。2003 年,微软对 Visual Studio 2002 进行了部分修订,以 Visual Studio 2003 的名义发布(内部版本号为 7.1)。Visio 作为使用统一建模语言(UML)架构应用程序框架的程序被引入,同时被引入的还包括移动设备支持和企业模版。.NET 框架也升级到了1.1。2005 年,微软发布了 Visual Studio 2005。.NET 字眼从各种语言的名字中被抹去,但是这个版本的 Visual Studio 仍然还是面向 .NET 框架的(版本2.0)。这个版本的 Visual Studio 包含有众多

36、版本,分别面向不同的开发角色。同时还永久提供免费的 Visual Studio Express 版本。2007年11月,微软发布了 Visual Studio 2008。2010年4月12,微软发布了 Visual Studio 2010 以及 .NET Framework 4.0。Visual Studio 2012Visual Studio 2012简介Visual Studio 2012 作为一个集成解决方案,适用于无论是个人或者各种规模的开发团队。Visual StudioMicrosoft Visual Studio 2012:2012实现了同事间的无缝协作,提高了生产效率与专注度,

37、最终好的点子变成了优秀的现实应用。可以使用灵活敏捷的规划工具(如容量规划、任务板和积压工作管理)来按照您自己的进度实现增量开发技术和敏捷方法。使用高级建模、发现和体系结构工具可描述您的系统并帮助确保实现您的体系结构构想。Visual Studio 2012是一个综合性产品系列,适用于每一位希望升级或创建精彩应用程序的组织、团体和个人开发人员。VS2012通过整合先前单个产品中的功能并为每个版本加入新的强大功能,简化了产品系列,并且,它更加适合用于开发 Windows8 专用程序。VS2012的六大新特性:1、VS2012和VS2010相比,最大的新特性莫过于对Windows 8 Metro开发

38、的支持。Metro天生为云+端而生,简洁、数字化、内容优于形式、强调交互的设计已经成为未来的趋势。不过对于开发者而言,要想使用这项新功能,必须要安装Windows 8 RP版。该版本中包含了新的Metro应用程序模板,增加了JavaScript功能、一个新的动画库,并提升了使用XAML的Metro应用程序的性能。2、VS2012 RC在界面上,比Beta版更容易使用,彩色的图标和按照开发、运行、调试等环境区分的颜色方案让人爱不释手。3、VS2012集成了ASP。NET MVC 4,全面支持移动和HTML5,WF 4.5相比WF 4,更加成熟,期待已久的状态极工作流回来了,更棒的是,现在它的设计

39、器已经支持C#表达式(之前只能用VB。NET)。4、VS2012支持.NET 4.5,和.NET 4.0相比,4.5更多的是完善和改进,4.5也是Windows RT被提出来的首个框架库,.NET获得了和Windows API同等的待遇。5、VS2012+TFS2012实现了更好的生命周期管理,可以这么说,VS2012不仅是开发工具,也是团队的管理信息系统。6、VS2012对系统资源的消耗并不大,不过需要Windows 7/8的支持。特点: 支持 Windows Azure,微软云计算架构迈入重要里程碑。 助力移动与嵌入式装置开发,三屏一云商机无限。 实践当前最热门的 Agile/Scrum开

40、发方法,强化团队竞争力。 升级的软件测试功能及工具,为软件质量严格把关。 搭配 Windows 7,Silverlight4 与 Office,发挥多核并行运算威力, 创建美感与效能并重的新一代软件。 支持最新C+标准,增强IDE,切实提高程序员开发效率。变化:Visual Studio支持用户透过多种不同的程序语言进行开发,但历代版本所支持的语言并不完全相同,例如,Visual Studio.NET 2002 时,微软将 Visual J+ 改版为 Visual J#,但至 Visual Studio 2008 时取消支持 Visual J#;而 Visual Studio 2010 时,并

41、入支持新语言 Visual F#。目前 Visual Studio 2010 原生支持:Visual Basic、Visual C#、Visual C+、Visual F#四种程序语言。Visual C# 2010(版本号:4.0)是微软开发的一种面向对象的编程语言,是微软.NET开发环境的重要组成部分。它是为生成在 .NET Framework 上运行的多种应用程序而设计的。C# 简单、功能强大、类型安全,而且是面向对象的。C# 凭借它的许多创新,在保持 C 样式语言的表示形式和优美的同时,实现了应用程序的快速开发。C#语言:C#是微软公司在2000年6月发布的一种新的编程语言,主要由安德斯

42、海尔斯伯格(Anders Hejlsberg)主持开发,C#与Java非常相似,它包括了诸如单一继承、界面、与Java几乎同样的语法,和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NET windows网络框架的主角。C#由,微软在2000年发布了这种语言。C#语言定义主要是从C/C+ 及 Java 继承而来的,而且语言中的许多元素也反映了这一点。C#在设计者从C+继承的可选选项方面比JAVA要广泛一些(比如说struts),它还增加了自己新的特点(比方说源代码版本定义)。但它还太不成熟,

43、不可能挤垮JAVA。C#还需要进化成一种开发者能够接受和采用的语言。而微软当前为它的这种新语言大造声势也是值得注意的。C#是面向对象的编程语言。它使得程序员可以快速地编写各种基于MICROSOFT.NET平台的应用程序,MICROSOFT .NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。正是由于C#面向对象的卓越设计,使它成为构建各类组件的理想之选无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便的转化为XML网络服务,从而使它们可以由任何语言在任何操作系统上通过INTERNET进行调用。C#使得C+程序员可以高效的开发程序,而绝不损失C/C

44、+原有的强大的功能。因为这种继承关系,C#与C/C+具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。微软公司已经向ECMA申请将C#作为一种标准。在2001年12月,ECMA发布了ECMA-334 C#语言规范。C#在2003年成为一个ISO标准(ISO/IEC 23270)。2.3本章小结本章主要简要介绍了C8051F系列单片机的软硬件系统和特点以及C8051F,Microsoft Visual Studio的编程开发环境的一些特点,为接下来的硬件设计及软件开发做了铺垫。3 硬件系统的设计与实现3.1硬件基本功能检测功能:l 具有对瓦斯、一氧化碳、氧气、硫化氢四种环境参量的在线检测

45、功能;l 具有温度检测功能;l 具有供电电源输入电压检测(电池电量)功能。显示功能:l 具有日期时间显示功能;l 具有温度显示功能;l 具有电池电量显示功能;l 具有四种环境参量显示功能;l 具有多级菜单操作功能。报警功能:l 具有声光报警功能。通信功能:l 采用2.4G射频收发模块,具有与手持PDA(或主机)进行数据交互功能。存储功能:l 具有基本工作参数读写功能;l 具有大规模实时数据存储功能。待机功能:l 具有进入睡眠待机功能;l 具有快速唤醒功能。3.2硬件框架设计l 业务处理层主要完成三大任务包括模块控制、数据分析以及任务调度。l 模块控制-调用相关模块的底层驱动及相关数据计算等操作

46、;l 数据分析-对各个模块的自身数据进行分析;l 任务调度-根据数据分析结果来完成模块控制。具体框架设计如图3-1所示:图3-1 框架设计图3.3软件工作流程软件工作流程主要包括两大部分:一部分为前台处理,另一部分为后台处理。具体如图3-2所示:图3-2 硬件工作流程图3.3.1前台处理硬件初始化l 系统时钟单元:设置当前晶振源,并配置core clock以及bus clock等时钟;l 看门狗单元:打开看门狗;l 存储单元:第一次使用时需写入当前相关工作配置信息,往后均读取配置信息;l IO管脚单元:配置与外设交互所需管脚,如LCD显示单元、RF无线单元等,若使用管脚中断也在其进行设置;l

47、基准定时器单元初始化:定义一个基准定时,如500us1ms;l 变量初始化:清除相关标志位、相关缓冲数据区以及赋相关变量初值等;l RTC实时时钟单元初始化:开启RTC实时计时;l LCD单元初始化:对LCD显示器件进行物理初始化;l 睡眠模式初始化:选择待机所进入的相关低功耗模式;l ADC转换单元初始化:选择配置相关转换通道等操作。备注:RF无线单元初始化并未在上电后就进行,需根据发送或接收需求才打开初始化。数据采集l 气体浓度采集;l 电池电量采集;l 环境温度采集。备注:这里的采集处理主要是指后台的数据转换后保存到相关缓冲数据区,而前台主要完成ADC转换通道的切换工作及置位相关转换通道

48、标志。数据计算及分析处理l 相关参数的数据公式计算;l 数据最终值获取传递,包括当前时间、气体浓度、当前电量;l 管脚采集及处理,包括、长/短按的相关事件处理以及充电管脚状态检测;l 电量欠压分析;l 气体超限分析。液晶屏显示l 主界面显示;l 菜单操作界面。动作处理l 长按处理;l 欠压提示处理;l 气体浓度超限声光报警处理;l 无线通信处理,包括发送或接收;l 关机处理,包括关闭相关供电及进入睡眠模式等;l 喂看门狗处理。3.3.2后台处理ADC中断l 四路ADC转换通道响应中断;l CH4、CO、H2O、O2四种气体转换;l 电池电量转换。备注:电量与CH4甲烷共用一个转换通道。定时器时

49、基中断l 1ms的基准延时;l 开启动作处理模块延时;l LCD背光关闭计时;l 声光报警计时;l 欠压电量提示计数;l RF无线发送间隔;l 充电状态计时切换。按键中断l 主要是特指;l 判断按键长短按;l 背光开启;l 清欠压提示。RTC实时时钟:l RTC秒寄存器自行增加。唤醒中断:l 进入睡眠模式后被唤醒;l 长按则唤醒进入开机状态l 短按则退出继续进入睡眠3.4 2.4GNRF无线单元2.4GNRF无线单元数据流图如图3-3所示:图3-3 2.4GnRF无线数据流图3.5 FLASH存储单元Flash存储单元数据流图如图3-4所示:图3-4 flash存储单元数据流图备注:底层驱动是

50、调用飞思卡尔内部的驱动库;在写操作前,需先进行存储区域擦除才能写入,擦除至少1k区域;不支持单字节写入,一次需写入四个字节;第一次操作flash时,CalcParam_Init()主要是进行上电写操作,第二次以后便进行上电读操作。4 软件系统的设计与实现4.1系统设计需求分析本程序主要目的是对从NRF模块接收到的数据进行分析和处理,并通过文本框、图表等方式将采集到的数据显示出来。并结合所收集到的数据对周边环境进行大概的分析,从而保证到所在人员的安全。本软件中心控制流程如图4-1所示:图4-1软件中心控制流程4.2主界面设计从工具箱中依次拖入表4-1所列控件,并按照表中的内容修改控件属性。表 4

51、-1 控件属性设置控件名控件属性属性值备注Form1Text周边环境信息实时采集窗体标题文本Size500,500窗体宽,高label1Text选择串口标签文本label2Text波特率标签文本label3Text数据返回标签文本label4Text温度标签文本label5Text标签文本label6Text氧气标签文本label7Text%标签文本label8Text一氧化碳标签文本label9Text%标签文本groupBox2Text周边环境信息容器标题文本button1NamecontrolSports对象名称Text打开串口按钮标题文本button2Text退出系统按钮标题文本but

52、ton3Text数据采集按钮标题文本chart1Series(ChartType)点击添加成员,如图1-3所示chart1ChartTypeSpline图表类型comboBox1NamesportsName对象名称Text空获取的串口名称comboBox2NamesportsBaudRate对象名称Text空获取的串口波特率textBox1textBox4Text空获取显示数据 上述这些控件的添加完成,还需要添加timer 与 SerialPort 控件,这两个控件在最后的程序运行界面上是不显示的。程序中我们采用是自动的获取温度及气体浓度等信息,事件间隔为1S。完成设计界面如图4-3 所示:图

53、4-2 Chart1 添加成员图4-3 程序主界面4.3代码编写添加timer1_Tick事件前我们应在前面加几个变量来存放串口获取的数据,即温度、各项气体等。程序运行时,主要是向串口发送数据读取命令,并把数据显示在相应的textBox中,然后将要图形显示的数据添加到方法chatShow中,有两个参数一个是温度、一个是氧气。所以我们还要添加一个图形绘制的方法,将串口获取的数据转换为图形上的点。 private void chatShow(double wendu, double yangqi) Series series = chart1.Series0; int xCount = serie

54、s.Points.Count = 0 ? 0 : series.Points.Count - 1; double xLast = series.Points.Count = 0 ? 0 : series.PointsxCount.XValue + 1; double yLast = wendu; series.Points.AddXY(xLast, yLast); series = chart1.Series1; series.Points.AddXY(xLast, yangqi); while (chart1.Series0.Points.Count 13) foreach (Series

55、s in chart1.Series) s.Points.RemoveAt(0); double xMin = chart1.Series0.Points0.XValue; chart1.ChartAreas0.AxisY.Maximum = 90; chart1.ChartAreas0.AxisY.Minimum = 15; chart1.ChartAreas0.AxisX.Minimum = xMin + 1; chart1.ChartAreas0.AxisX.Maximum = xMin + 13; 4.4程序运行最终程序运行的界面如图4-4所示,将串口获取的温度和氧气以图形的方式显示出

56、来,同时程序在点击“数据采集”时按钮的文本会改变为“停止采集”。这时我们只需等待一秒钟,在图形上就可以看到温湿度模块所在位置的温度、湿度等信息。由于一氧化碳等气体的取值范围较大所以在图形上我们没做显示,而是将其值放在textBox中了。图4-4 程序运行结5 系统的调试及实验结果5.1实验步骤步骤一 完成硬件电路板的连接。步骤二 首先先将CD4主板与C8051F单片机相连,检验通信功能是否有问题。步骤三写入测量环境的程序。测试CD4主板部分硬件及软件部分性能。步骤四 将NRF24L01的收发部与C8051F单片机相连,写入发射一个常数的程序,检测收发模块及程序。步骤五 将显示、收发、环境检测程

57、序整合,检测系统是否能将发送端的环境测量出数值来发送到接收端在LCD和电脑上显示出来。5.2实验结果经实验要求及实验的目的,对系统进行了一些动态值的测量,具体结果如表5.1所示:表5-1 数据测试表测试数据值发送端电流2.6mA接收端电流9mA收发端电压3.3V发送端功率8.58mW接收端功率29.7mW收发距离10m氧气精度%vol甲 烷ppm一氧化碳ppm硫化氢%vol从表中看出接收端与发射端都维持在低功耗,基本达到了设计的初衷。另外收发距离与各种气体测试精度也达到了设计的要求。如图5.1就是环境监测系统传感集成板,发射端在接通电源的情况下会立即完成初始化,实时地发送周围实时环境数值。图5

58、-1 CD4多功能检测集成传感模块 如图5.2就是CD4上集成NRF24L01的无线发射模块。在开通电源的情况下实时监测数据发送到接收模块。图5-2 CD4上集成的无线发射模块如图5.2为嵌入在开发板上的NRF24L01无线接收模块。图5-3 NRF24L01无线接收模块如图5.2为整个基于NRF无线模块的环境监测系统。图5-4 基于NRF无线模块的环境监测系统结 论在老师的指导下,经过努力,本论文已经完成了预期的目标并且保存了完整的记录文档。相关工作总结如下:数据采集与处理是物联网传感层最基础的一部分,并通过网络层传输数据,最后通过数据处理程序显示到应应用层去。本设计介绍的环境监测系统就是一

59、个典型事例。本设计采用一种集成多种传感器的电路板(CD4),并通过C8051F单片机控制的环境系统。基于NRF24L01无线传感模块的实时监控系统具有精度高、抗干扰能力强、电路简单等诸多优点,但传感器收发数据有一定的局限性,传输范围比较小,基本上超过十米以上信号就无法。相较于传统的Wi-Fi、以及最几年新兴起来的ZigBee等,具有以下优点:小体积,QFN20 4x4mm封装; 宽电压工作范围,1.9V3.6V,输入引脚可承受5V电压输入; 工作温度范围,-40+80; 工作频率范围,2.400GHz2.525GHz; 发射功率可选择为0dBm、-6dBm、-12dBm和-18dBm; 数据传

60、输速率支持1Mbps、2Mbps; 低功耗设计,接收时工作电流12.3mA,0dBm功率发射时11.3mA,掉电模式时仅为900mA; 126个通讯通道,6个数据通道,满足多点通讯和调频需要; 增强型“ShockBurst”工作模式,硬件的CRC校验和点对多点的地址控制; 数据包每次可传输132Byte的数据; 4线SPI通讯端口,通讯速率最高可达8Mbps,适合与各种MCU连接,编程简单; 可通过软件设置工作频率、通讯地址、传输速率和数据包长度; MCU可通过IRQ引脚快判断是否完成数据接收和数据发送;通过使用NRF24L01无线传感模块使用其他无线组网方式的麻烦以及有线组网方式的不方便。在

61、此次设计过程中也遇到一些问题,比如,在单片机对于RF24L01高频模块的读写、操作等比较复杂,查找的资料也很难理解。还有就是C8051F单片机的时序也有一定难度。不过,通过这次的学习和实践,我学会了如何看待问题,解决问题。例如,调试无线收发时,LCD老显示乱码,而且一直跳跃不定,后来通过循环控制将接受的第一个数据显示出来才避免了乱码出现。又例如后来整合程序时,温度不正确,老是成不断上升趋势,后来检查程序后才发现是没有将温度的全局变量清零,导致每次循环累加。进入21世纪后,智能环境监测系统正朝着高精度、多功能、智能化、高可靠性及安全性、开发云端同步技术和网络环境监测、研制单片测温控温系统等高科技的方向迅速发展。1提高温度控制器测温精度和分辨力在20世纪90年代中期最早推出的智能温度控制器,采用的是8位A/D转换器,其测温精度较低,分辨力只能达到2C。目前,国外已相继推出多种高精度、高分辨力的智能温

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!