1、摘要本文主要研究如何在尽可能节约能源的前提下,结合地下车库的特点,研究开发了一个基于无线芯片nRF24L01,以AT89S52单片机为控制器的地下车库智能控制通风系统。该控制系统能进行地下车库内环境参数的采集,并将数据发送到上位机,再通过继电器电路控制诱导风机最佳运转时间,从而调节地下车库内环境参数,达到最佳的节能效果。系统具有 CO 浓度检测、CO 浓度状态显示及温度检测、温度显示等功能。关键词:AT89S52 地下车库 无线监测 排风监测ABSTRACTIn order to solve saving energy sources problem, the author aim at th
2、e characteristic of underground garage, utilizing the result of the research, designed a intelligent ventilation control system which is based on nRF24L01 bus master-slaver supervisory network, which the controller is AT89S52 micro-controller produced by TI. The system can do obtain environment para
3、meters (concentration of CO) of the underground garage through a micro-controller linked with the sensors. Then the data are transmitted into the upper computer and with automatic control method transformed into time length signal, with which a motor is controlled to adjust the concentration of carb
4、on monoxide, then regulate the inner environment of the underground garage.Keywords:AT89S52 Underground Garage Wireless Monitoring Exhaust Monitoring摘要IABSTRACTII目录III1绪论- 1 -1.1 课题背景- 1 -1.2 论文研究的课题- 1 -2地下车库的设计要点- 3 -2.1 地下车库的电气设计要点- 3 -2.2 地下车库的通风设计要点- 3 -2.3 无线监测方案介绍- 3 -2.4 系统工作过程说明- 3 -3系统硬件电路
5、设计- 5 -3.1 概述- 5 -3.2 单片机介绍- 5 -4.单片机的应用领域- 7 -3.3 AT89S52芯片简介- 9 -3.4 AT89S52芯片的最小系统- 12 -3.5 RS-232串行通信接口设计- 12 -3.6 电源电路设计- 13 -3.7 无线芯片nRF24L01- 14 -3.7.1 采用无线的必要性- 14 -3.7.2 nRF2401芯片概述- 14 -3.7.3 nRF24L01最小系统图- 15 -3.7.4 系统整体硬件电路图- 16 -4系统软件设计- 17 -4.1 Keil Vision4编译软件介绍- 17 -4.2 软件流程图- 17 -4.
6、3 通信程序- 17 -结论- 23 -参考文献- 24 -致谢- 25 -附录- 26 -II目录目录摘要IABSTRACTII1绪论11.1 课题背景11.2 论文研究的课题12地下车库的设计要点32.1 地下车库的电气设计要点32.2 地下车库的通风设计要点32.3 无线监测方案介绍32.4 系统工作过程说明33系统硬件电路设计53.1 概述53.2 单片机介绍53.3 AT89S52芯片简介93.4 AT89S52芯片的最小系统123.5 RS-232串行通信接口设计123.6 电源电路设计133.7 无线芯片nRF24L01144系统软件设计174.1 Keil Vision4编译软
7、件介绍174.2 软件流程图174.3 通信程序17结论23参考文献24致谢25附录26黑龙江八一农垦大学毕业设计(论文)1绪论1.1 课题背景近几年来,随着我国国民经济的不断发展,社会经济水平和人民生活水平的不断提高,城市私家车辆越来越多。城市机动车数量飞速增长,停车成了城市交通的一大难题。这就要求建筑工程向大型化、多层次化、多功能化发展,以减少占用土地资源。为提高日益减少的城市可用土地的利用率,国家在城市公共用地和新型住宅小区内配套了大量的地下汽车库。地下车库以其面积大、节约建筑用地、管理集中等优势而越来越受到业主的青睐。因此,目前许多高层建筑都设有地下车库,以解决存车用地紧张的矛盾7。然
8、而,对于地下停车库,保证适当的温度和一氧化碳浓度不超过规定标准,是衡量地下车库空气环境质量的两个主要内容。由于地下车库在土壤的包围之中,而土壤具有较好的热稳定性,受大气温度变化的影响不大,在我国大部分地区,这个温度都能够达到。汽车在库内启动、行驶和上下坡道时,都要排出废气,主要有害气体是一氧化碳。因此,地下车库内一氧化碳的浓度应严格控制。我国虽然从国外引进了为数不少的现代化地下车库通风控制系统,但都是国外现成的产品,其控制策略并不一定适用于我国具体条件。所以,开发适合我国具体条件的通风控制系统就显得格外必要。通风控制系统的示范作用和现代化智能通风控制系统的推广还需要更多的研究。因此地下车库的通
9、风排烟问题显得十分重要。基于此,论文提出了一种新颖的解决方案,即“地下车库的无线监测系统”,该控制系统能进行地下车库内环境参数的采集,并将数据发送到上位机,再通过继电器电路控制诱导风机最佳运转速度与运转时间,从而调节地下车库内环境参数,达到最佳的节能效果7。同时,创新性的加入了无线信号收发模块,可以在一定距离范围内做到无线通信控制系统运行,增加了系统的应用范围。1.2 论文研究的课题本文主要研究如何在尽可能节约能源的前提下,结合地下车库的特点,研究开发了一套以AT89S52单片机作为控制核心的地下车库智能控制通风系统。该控制系统能进行地下车库内环境参数的采集,并将数据发送到上位机,再通过继电器
10、电路控制诱导风机最佳运转时间,从而调节地下车库内环境参数,达到最佳的节能效果。系统具有 CO 浓度检测、CO 浓度状态显示及温度检测、温度显示等功能。论文共分四个部分:第一部分介绍了论文的研究背景、意义、任务以及创新点。第二部分分析介绍了地下车库在设计时需要考虑的电气要点以及排风要点。介绍了无线监测系统的应用以及整个系统的工作方式。第三部分介绍了地下车库智能诱导通风控制系统硬件电路。该系统是由以AT89S52为核心的智能控制器、无线接收与发送芯片单元、直流无刷抽风机等模块组1成。着重设计了硬件控制芯片及无线收发芯片的最小系统。第四部分介绍了地下车库智能通风控制系统软件分析与设计,重点编写双机无
11、线信号接受与发送的整体程序,经过Keil软件编译成功验证了程序的可行性,并给出了参考程序。22地下车库的设计要点2.1 地下车库的电气设计要点地下车库就其使用功能来讲,比较明确和单一,总体来说,电气设计并不复杂。但是地下车库也有其自身的特点,在做电气设计时,应充分了解其特点及相关规范要求,保证电气系统设计的合理、可靠、先进且节能3。具体来说,要根据地下车库的区域结构来设计车库的负荷等级,包括风机是否能够满足排风要求,消防设备是否满足负荷要求等。此外还要注意供配电问题,包括系统布线,配电系统设置等问题。以上问题不是本文研究的重点问题。2.2 地下车库的通风设计要点地下车库的排风问题是车库设计中的
12、一个重点问题。在实际工作中要使得系统能够实时监测到车库内CO,烟尘等浓度的变化,在浓度超过某一阈值时将无线信号迅速传输给上位机,经过上位机运算,调节风机的运行转速及运行时间,以达到实时控制的效果7。2.3 无线监测方案介绍目前,无线数据通信的应用领域越来越多:遥控遥测,无线抄表,工业数据采集系统,身份识别,非接触RF智能卡,信息家电,无线语音图像传输,无线鼠标键盘等。凡是布线繁杂或不允许布线的场合都希望能通过无线方案来解决。大量射频IC(集成电路)芯片的出现与应用大大缩短了无线通信系统的开发周期19。为此,需要设计相应的接口系统,控制这些射频芯片工作,完成可靠稳定的无线数据通信。本系统采用了N
13、ordic 公司新推出的工作于2.4GHz ISM频段的nRF24L01射频芯片,由单片机AT89S52控制实现短距离无线数据通信。该接口设计具有成本低、功耗低、传输速率高、软件设计简单以及通信稳定可靠等特点2。2.4 系统工作过程说明当检测到 CO或车库内烟尘 超标时就开启整个系统,显然是不经济的。因此,系统设定第一次检测到 CO 超标时,只需开启检测点的诱导风机进行稀释。当同一台在工作了设定的稀释时间后,CO 浓度还是超标,系统有理由认为整个车库已经饱和,此时必须开启整个防火分区的诱导风机进行通风。整个诱导通风系统开启后,只是在车库内形成流场,使空气按照设计路线输送到排风口。必须开启排风竖
14、井里的排风机才能向外排放。所以,必须联动排风主机。同理,如果是完全内区,则要联动送风风机,补充新风。3本文设计了以AT89S52单片机为核心的基于无线芯片nRF24L01的控制系统,从而根本上有效地解决了地下停车场通风问题。当系统检测到车库内CO及烟尘超标的情况后,迅速产生信号,经过nRF24L01发出信号,由上位机接收该信号,而后产生控制信号对风机进行实时控制,最终形成闭环系统调节地下车库内的CO及烟尘含量,达到控制目的。4黑龙江八一农垦大学毕业设计(论文)3系统硬件电路设计3.1 概述地下车库排风无线监测系统采用AT89S52单片机作为整个系统的控制核心通过射频芯片nRF24L01实现数据
15、的无线传输。通过RS-232标准串行接口实现PC与单片机的串行通信。该部分着重介绍了每种芯片的详细规格,并给出了最小系统的连接方式。3.2 单片机介绍单片机也被称为微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机,它最早是被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳15。 早期的单片机都是8位或4位的。其中最成功
16、的是INTEL的8031,因为简单可靠而性能不错获得了很大的好评。此后在8031上发展出了MCS51系列单片机系统。基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。90年代后随着消费电子产品大发展,单片机技术得到了巨大提高4。随着INTEL i960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。而传统的8位单片机的性能也得到了飞速提高,处理能力比起80年代提高了数百倍。目前,高端的32位单片机主频已经超过300MHz,性能直追90年代中期的专用处理器,
17、而普通的型号出厂价格跌落至1美元,最高端的型号也只有10美元。当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单片机甚至可以直接使用专用的Windows和Linux操作系统15。 单片机比专用处理器更适合应用于嵌入式系统,因此它得到了最多的应用。事实上单片机是世界上数量最多的计算机12。现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。而个人电脑中也会有为数不少的单片机在工作。汽车上一般配备40多部单片机
18、,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过PC机和其他计算的总和,甚至比人类的数量还要多4。 单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。相当于一个微型的计算机,和计算机相比,单片机只缺少5了I/O设备。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。 单片机内部也用和电脑功能类似的模块,比如CPU,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑弱很多,不过价钱
19、也是低的,一般不超过10元即可12。用它来做一些控制电器一类不是很复杂的工作足矣了。我们现在用的全自动滚筒洗衣机、排烟罩、VCD等等的家电里面都可以看到它的身影。它主要是作为控制部分的核心部件4。 它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离线式计算机的(比如家用PC)的主要区别。 1.单片机芯片单片机是靠程序运行的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的12。一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000
20、系列这些纯硬件来搞定的话,电路一定是一块大PCB板。但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别。只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性4。 由于单片机对成本是敏感的,所以目前占统治地位的软件还是最低级汇编语言,它是除了二进制机器码以上最低级的语言了,既然这么低级为什么还要用呢?很多高级的语言已经达到了可视化编程的水平为什么不用呢?原因很简单,就是单片机没有家用计算机那样的CPU,也没有像硬盘那样的海量存储设备。一个可视化高级语言编写的小程序里面即使只有一个按钮,也会达到几十K的尺寸6。对于家用PC的硬盘来讲没什么,可是对于单片机来讲是不能
21、接受的。 单片机在硬件资源方面的利用率必须很高才行,所以汇编虽然原始却还是在大量使用。一样的道理,如果把巨型计算机上的操作系统和应用软件拿到家用PC上来运行,家用PC的也是承受不了的4。 可以说,二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。不过,这种电脑,通常是指个人计算机,简称PC机。它由主机、键盘、显示器等组成。还有一类计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予各种机械的单片机(亦称微控制器)14。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。因为它体积小,通常都藏在被控机械的“肚子”里1。它在整个装置中,起着有如人类头
22、脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等6。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词“智能型”,如智能型洗衣机等。现在有些工厂的技术人员或其它业余电子开发者搞出来的某些产品,不是电路太复杂,就是功能太简单且极易被仿制。究其原因,可能就卡在产品未使用单片机或其它可编程逻辑器件上。 2.单片机历史6单片机诞生于20世纪70年代末,经历了SCM、MCU、SOC三大阶段。 起初模型 (1)SCM即单片微型计算机(Single Chip Microcomputer)阶段,主要
23、是寻求最佳的单片形态嵌入式系统的最佳体系结构。“创新模式”获得成功,奠定了SCM与通用计算机完全不同的发展道路。在开创嵌入式系统独立发展道路上,Intel公司功不可没15。 (2)MCU即微控制器(Micro Controller Unit)阶段,主要的技术发展方向是:不断扩展满足嵌入式应用时,对象系统要求的各种外围电路与接口电路,突显其对象的智能化控制能力。它所涉及的领域都与对象系统相关,因此,发展MCU的重任不可避免地落在电气、电子技术厂家。从这一角度来看,Intel逐渐淡出MCU的发展也有其客观因素。在发展MCU方面,最著名的厂家当数Philips公司。 Philips公司以其在嵌入式应
24、用方面的巨大优势,将MCS-51从单片微型计算机迅速发展到微控制器。因此,当我们回顾嵌入式系统发展道路时,不要忘记Intel和Philips的历史功绩。 3.嵌入式系统单片机是嵌入式系统的独立发展之路,向MCU阶段发展的重要因素,就是寻求应用系统在芯片上的最大化解决;因此,专用单片机的发展自然形成了SOC化趋势。随着微电子技术、IC设计、EDA工具的发展,基于SOC的单片机应用系统设计会有较大的发展。因此,对单片机的理解可以从单片微型计算机、单片微控制器延伸到单片应用系统。 4.单片机的应用领域目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种
25、仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师15。 单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴: (1)在智能仪器仪表上的应用单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同
26、类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采7用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。例如精密的测量设备(功率计,示波器,各种分析仪)。 (2)在工业控制中的应用 用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管 (3)在家用电器中的应用 可以这样说,现在的家用电器基本上都采用了单片机控制,从电饭褒、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子秤量设备,五花八门,无所不在。 (4)在计算机网络和通信领域中的应用 现代的单片机普遍具备通信接
27、口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。 (5)单片机在医用设备领域中的应用 单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等等。 (6)在各种大型电器中的模块化应用 某些专用单片机设计用于实现特定功能,从而在各种电路中进行模块化应用,而不要求使用人员了解其内部结构。如音乐集成单片机,看似简单的功能,微缩在纯电子芯片中
28、(有别于磁带机的原理),就需要复杂的类似于计算机的原理。如:音乐信号以数字的形式存于存储器中(类似于ROM),由微控制器读出,转化为模拟音乐电信号(类似于声卡)。 在大型电路中,这种模块化应用极大地缩小了体积,简化了电路,降低了损坏、错误率,也方便于更换。 (7)单片机在汽车设备领域中的应用 单片机在汽车电子中的应用非常广泛,例如汽车中的发动机控制器,基于CAN总线的汽车发动机智能电子控制器,GPS导航系统,abs防抱死系统,制动系统等等。 此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途。83.3 AT89S52芯片简介单片机是一种集成的电路芯块采用了超大规模技术
29、把具有运算能力(如算术运算、逻辑运算、数据传送、中断处理)的微处理器(CPU),随机存取数据存储器(RAM),只读程序存储器(ROM),输入输出电路(I/O口),可能还包括定时计数器,串行通信口(SCI),显示驱动电路(LCD或LED驱动电路),脉宽调制电路(PWM),模拟多路转换及A/D转换器等电路集成到一块单片机上,构成一个最小然而很完善的计算机系统。这些电路能在软件的控制下准确快速的完成程序设计者事先规定的任务。总的而言单片机的特点可以归纳为以下几个方面:集成度高、存储容量大、外部扩展能力强、控制功能强、低电压、低功耗、性能价格比高、可靠性高这几个方面17。单片机有着微处理器所不具备的功
30、能,它可以独立地完成现代工业控制所要求的智能化控制功能这就是单片机的最大特点。然而单片机又不同于单板机,芯片在没有开发前,它只是具备功能极强的超大规模集成电路,如果赋予它特定的程序,它便是一个最小的、完整的微机控制系统16。它与单板机或个人电脑有着本质的区别,单片机属于芯片级应用,需要用户了解单片机芯片的结构和指令系统以及其它集成电路应用技术和系统设计所需要的理论和技术,用这样特定的芯片设计应用程序,从而使芯片具备特定的智能。AT89S52是一种低功耗、高性能CMOS 8位微控制器,具有8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业AT89S51
31、 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52在众多嵌入式控制应用系统中得到广泛应用17。AT89S51具有如下特点:40个引脚,8k Bytes Flash片内程序存储器,256 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个 全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器16。引脚图如图1此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲
32、模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断 系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求17。9图1 单片机管脚图主要功能特性: 兼容MCS-51指令系统 8k可反复擦写(1000次)ISP Flash ROM 32个双向I/O口 4.5-5.5V工作电压 2个16位可编程定时/计数器 时钟频率0-33MHz 全双工UART串行中断口线 256x8bit内部RAM 2个外部中断源 低功耗空闲和省电模式 中断唤醒省电模式 3级加密位 看门狗(WDT)
33、电路 软件设置空闲和省电功能 灵活的ISP字节和分页编程 双数据寄存器指针AT89S52单片机引脚介绍:引脚如图一所示,以下是各引脚的说明。VCC:AT89S52 电源正端输入,接+5V。VSS:电源地端。XTAL1:单芯片系统时钟的反向放大器输入端。10XTAL2:系统时钟的反向放大器输出端,一般在设计上只要在XTAL1和XTAL2上接上一只石英振荡晶体系统皆可以工作了,此外可以在两个引脚与地之间加入-20PF的小电容,可以使系统更稳定,避免噪声干扰而死机。RESET:AT89S52的重置引脚,高电平工作,当要对晶片重置时,只要对此引脚点评提升至高电平并保持两个机器周期以上的时间,AT89S
34、51便能完成系统重置的各项动作,使得内部特殊功能寄存器内容均被设成已知状态,并且至地址0000H处开始读入程序代码而执行程序。EA/VDD:“EA”为英文“External Access”的缩写,表示存取外部程序代码之意,低电平动作,也就是说当引脚为低电平后,系统会调用外部的程序代码(存于外部EPROM中)来执行程序。因此在8031及8032中,EA引脚必须接低电平,因为其内部无程序存储器空间。如果使用8751内部程序空间时,引脚要接成高电平。此外,在将程序代码烧录至8751内部EPROM时,可以利用此引脚来输入21V的烧录高压(VDD)。PORT0(P0.0P0.7):端口0是一个8位宽的开
35、路电极(Open Drain)双向输出入端口,共有8个位,P0.0表示位0,P0.1表示位1,依此类推。其他三个I/O端口(P1、P2、P3)则不具有此电路组态,而是内部有一提升电路,P0在当做I/O用时可以推动8个LS的TTL负载。如果当EA引脚为低电平时(即取用外部程序代码或数据存储器),P0就以多工方式提供地址总线(A0A7)及数据总线(D0D7)。设计者必须外加一个锁存器将端口0送出的地址锁住成为A0A7,再配合端口2所送出的A8A15合成一个完整的16位地址总线,而定位地址到64K的外部存储器空间。PORT1(P1.0P1.7):端口1也是具有内部提升电路的双向I/O端口,其输出缓冲
36、器可以推动4个LS TTL负载,若将端口1的输出设为高电平,使是由此端口来输入数据。如果是使用8052或是8032的话,P1.0又当作定时器2的外部缓冲输入脚,而P1.0可以有T2EX功能,可以做外部中断输入的触发引脚。PORT2(P2.0P2.7):端口2是具有内部提升电路的双向I/O端口,每一个引脚可以推动4个LS的TTL负载,同样地,若将端口2的输出设为高电平时,此端口便能当成输入端口来使用。P2除了当做一般I/O端口使用外,若是在AT89S51扩充外接程序存储器或数据存储器时,也提供地址总线的高字节A8A15,这个时候P2便不能当做I/O来使用了。PORT3(P3.0P3.7):端口3
37、也具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个TTL负载,同时还多工具有其他的额外特殊功能,包括串行通信、外部中断控制、计时计数控制及外部数据存储器内容的读取或写入控制等功能。 其引脚分配如下: P3.0:RXD,串行通信输入。 P3.1:TXD,串行通信输出。 P3.2:INT0,外部中断0输入。 P3.3:INT1,外部中断1输入。 P3.4:T0,计时计数器0输入。 P3.5:T1,计时计数器1输入。11 P3.6:WR,外部数据存储器的写入信号。 P3.7:RD,外部数据存储器的读取信号。 P1.0:T2(定时器/计数器T2的外部计数输入),时钟输出 P1.1:T2EX(
38、定时器/计数器T2的捕捉/重载触发信号和方向控制) P1.5:MOSI(在系统编程用) P1.6:MISO(在系统编程用) P1.7:SCK(在系统编程用)3.4 AT89S52芯片的最小系统单片机控制模块由AT89S52最小系统组成,其中包括单片机,晶振电路和复位电路17。(1)、晶振电路晶振电路由两个30pF电容和一个12MHz晶体振荡器构成,接入单片机的X1、X2引脚。(2)、复位电路单片复位端低电平有效。单片机最小系统如图2所示:图2 单片机最小系统3.5 RS-232串行通信接口设计由于不同设备串行接口的信号线定义、电气规则等特性都不尽相同,因此要使这些设备能够互相连接,需要统一的串
39、行通信接口。采用标准接口还能提高通信速度和传输距离11。 RS-232定义了数据终端设备DTE与数据通信设备DCE之间的物理接12口标准,接口标准包括引脚定义、电气特征和电平转换几方面内容。在微型计算机通信中RS-232接口常使用的有9根信号引脚。 由于RS-232是早期为促进公用电话网络进行数据通信而制定的标准, 其逻辑电平对地是对称的要用负逻辑,逻辑0电平规定为+5V +15V,逻辑1电平为-5V -15V,因此51系列的单片机与微型计算机的RS-232接口不能直接对接,必须进行电平转换。常见的电平转换器有MC1488,MC1489和MAX202/232/232A等芯片。该设计选用MAX2
40、32芯片作为电平转换器,它能满足RS-232的电气规范,内置电子泵电压转换器将+5V转换为-10V +10V,该芯片与TTL/COMS电平兼容,片内有两个发射器、两个接收器,在单片机应用系统中得到广泛应用。MAX232的内部逻辑功能和电平转换硬件接口电路如图3:图3 RS-232串行通信接口设计3.6 电源电路设计A、本系统单片机需要一组5V电源,采用的电源电路如图4所示。该电路是把市电220V交流电压经电压器降压至8V,输入进行全桥整流,成为脉动直流,经过,一级滤波后送至三端稳压集成电路lm7805稳压,再经二级滤波后即为5V输出,图四的四个二极管组成了全桥整流电路,C1和C3是一级滤波电容
41、,U1是稳压管lm7805,C4是二级滤波电容。13图4 +5V电源电路B、本系统无线模块需要一个3.3V电源,采用电源电路如图5所示。该电路把先前转换得到的5V电源经过低压差电压调节器lm1117转换为3.3V电源。图5 无线模块+3.3V电源供电电路3.7 无线芯片nRF24L013.7.1 采用无线的必要性无线通信技术迅速发展,使得远程监控成为可能。现如今,有多种通讯方案可供选择。这里从实用,经济和实现等方面进行综合的考虑分析系统,选出合适的无线设计方案。无线控制比较传统控制更加灵活,适用于地下车库系统9。3.7.2 nRF2401芯片概述nRF24L01是一款新型单片射频收发器件,工作
42、于2.4 GHz2.5 GHz ISM频段。内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合了增强型ShockBurst技术,其中输出功率和通信频道可通过程序进行配置。nRF24L01功耗低,14在以-6dBm的功率发射时,工作电流也只有9mA;接收时,工作电流只有12.3mA,多种低功率工作模式(掉电模式和空闲模式)使节能设计更方便10。 nRF24L01主要特性如下: GFSK调制; 硬件集成OSI链路层; 具有自动应答和自动再发射功能; 片内自动生成报头和CRC校验码;数据传输率为l Mb/s或2Mb/s;SPI速率为0 Mb/s10 Mb/s;125个频道; 与其他nR
43、F24系列射频器件相兼容; QFN20引脚4 mm4 mm封装;供电电压为1.9 V3.6 V。3.7.3 nRF24L01最小系统图 图6 nRF24L01最小系统153.7.4 系统整体硬件电路图图7 系统整体硬件电路图164系统软件设计4.1 Keil Vision4编译软件介绍Keil公司是一家业界领先的微控制器(MCU)软件开发工具的独立供应商。Keil公司由两家私人公司联合运营,分别是德国慕尼黑的Keil Elektronik GmbH和美国德克萨斯的Keil Software Inc18。Keil公司制造和销售种类广泛的开发工具,包括ANSI C编译器、宏汇编程序、调试器、连接器
44、、库管理器、固件和实时操作系统核心(real-time kernel)。有超过10万名微控制器开发人员在使用这种得到业界认可的解决方案。其Keil C51编译器自1988年引入市场以来成为事实上的行业标准,并支持超过500种8051变种18。2009年2月发布Keil Vision4,Keil Vision4引入灵活的窗口管理系统,使开发人员能够使用多台监视器,并提供了视觉上的表面对窗口位置的完全控制的任何地方。新的用户界面可以更好地利用屏幕空间和更有效地组织多个窗口,提供一个整洁,高效的环境来开发应用程序。新版本支持更多最新的ARM芯片,还添加了一些其他新功能18。本文采用Keil Visi
45、on4进行软件部分的程序设计,采用C语言编程。重点编写通过无线芯片发送和接收无线信号的接口程序,编译并通过,验证了程序的正确性18。4.2 软件流程图图8 系统设计流程图4.3 通信程序接收程序:17void init_NRF24L01(void) inerDelay_us(100); CE=0; CSN=1; SCK=0; SPI_Write_Buf(WRITE_REG + TX_ADDR, TX_ADDRESS, TX_ADR_WIDTH); SPI_Write_Buf(WRITE_REG + RX_ADDR_P0, RX_ADDRESS, RX_ADR_WIDTH); SPI_RW_Re
46、g(WRITE_REG + EN_AA, 0x01); SPI_RW_Reg(WRITE_REG + EN_RXADDR, 0x01); SPI_RW_Reg(WRITE_REG + RF_CH, 0); SPI_RW_Reg(WRITE_REG + RX_PW_P0, RX_PLOAD_WIDTH); SPI_RW_Reg(WRITE_REG + RF_SETUP, 0x07); SPI_RW_Reg(WRITE_REG + CONFIG, 0x0e); uint SPI_RW(uint uchar)uint bit_ctr; for(bit_ctr=0;bit_ctr8;bit_ctr+) MOSI = (uchar & 0x80); uchar = (uchar 1); SCK = 1; uchar |= MISO;