版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、( 此文档为 word 格式,下载后您可任意编辑修改!)I本科生毕业论文(设计)题目: 电梯控制系统的设计与实现学院计算机学院学科门类工科专业计算机科学与技术学号姓名指导教师年月日摘要随着当前时代的进步和发展,单片机技术已经普及到我们生活、工作、科研以及各个领域,已经成为一种比较成熟的技术。本文主要介绍了一个基于 STC89C52单片机的电梯控制系统,详细描述了一个电梯控制系统的调度模块,即根据每个楼层不同用户的按键需求,让电梯做出合理的判断,正确高效地知道电梯完成各项载客任务,重点是对整个电梯控制系统在单片机下的软件编程、硬件连接和各个控制模块系统流程进行的一步步透彻分析,同时对各部分硬件电
2、路也进行了一一介绍。整个电梯控制系统,以单片机为核心,再辅以各楼层按键和控制程序来控制整个电梯的运行,并通过数码管和发光二极管来显示电梯的实时运行状态,具有成本低、通用性强、灵活性大及易于实现复杂控制等优点,适合于我们的日常生活中的电梯控制,应用前景较广泛。关键词: 单片机;电梯控制;调度模块AbstractWith the progress and development of the current era, microcontroller technology elevator control system based on STC89C52 micro-controller, a de
3、tailed description of the scheduling module of an elevator control system,ac-cordingto different user needs buttons on each floor, the elevator to make a reasonable jud-gment, know correctly and efficiently finish the passengerelevator, key is connected and eac- one one. The ele vator control system
4、, singlechi-pmicrocomputer as the core, supplementedby the floo r buttons and the control program co-ntrol the operation of the elevator, and through t he digitaltube and the light emitting diod-e to display the realtime operation state o f elevator, daily life, wide application prospect.Key Words:s
5、ingle chip microcomputer; elevator control system;scheduling module目录摘要 . .I IIAbstract.I V1.引言 . .12.设计目的及功能需求 .22.1设计目的 .22.2设计功能需求 .23.课题的开发环境简介 .23.1电路仿真图制作软件 .23.2 C51 的程序开发软件 .34.系统方案论证与设计 .44.1主控制器模块的选用 .44.2电梯楼层显示模块的选择 .54.3电梯楼层按键模块的设计 .55.系统的硬件设计 .55.1主控制模块的设计 .55.1.1单片机 STC89C52概述 .65.1.2单
6、片机时钟电路 .95.1.3单片机复位电路 .95.2显示模块的设计 .105.3按键模块的设计 .105.4蜂鸣器鸣响模块的设计 .116.系统的软件设计 .126.1程序设计思路 . .126.2系统主程序框图 . .126.3系统程序流程图 . .137.系统实物的焊接与调试 .137.1系统焊接步骤 . .137.2系统电路的调试 . .147.3系统实物展示 . .148.结语 . .14参考文献 . .15附录 . .15致谢 . .221. 引言近年来我国的经济飞速发展,人民生活水平的迅速提高,座座高楼大厦崛地而起,工作居住条件得到了巨大的改善。在高楼大厦中,为了提高人们的生活工
7、作效率,电梯便进入人们的生活,它作为高层建筑中安全、可靠、垂直上下的运载工具,对改善劳动条件、减轻劳动强度起到很大的作用。电梯的应用范围很广,可用于宾馆、饭店、办公大楼、商场、娱乐场所、仓库以及居民住宅大楼等。在当今社会中,电梯已成为人类必不可少的垂直运输交通工具。追溯电梯的历史,发现电梯进入人们的生活已经 150年了。 1854年,在纽约水晶宫举行的世界博览会上,美国人伊莱沙·格雷夫斯·奥的斯第一次向世人展示了他的发明历史上第一部安全升降梯。从那以后,升降梯在世界范围内得到了广泛应用,以奥的斯的名字而命名的电梯公司也开始了她辉煌的旅程。一个半世纪的风风雨雨,翻天覆地的历史
8、变迁,科技在发展,电梯也在进步,人们的生活也因此变得更加美好。中国最早的一部电梯出现在上海,是由美国奥的斯公司于 1901年安装的。 1932年由美国奥的斯公司安装在天津利顺德酒店的电梯至今还在安全运转着 1 。十一届三中全会后,沐浴着改革开放的春风,我国电梯业进入了高速发展的时期。未来的社会是城镇与城市渐渐融合,并相互影响,电梯将是现代人不可或缺的代步工具,随着科技的不断进步,经济的深入发展,科技将引领电梯进行质的飞跃,电梯将越来越智能,越来越安全。本文给出了一种基于单片机的电梯控制系统设计,通过在单片机上完成电梯的调度控制系统,单片机又称单片微控制器, 是一种集成电路芯片,采用超大规模集成
9、电路技术把具有数据处理能力的中央处理器、随机存储器、只读存储器、多种 IO口和中断系统、定时器计数器等功能集成到一块硅片上构成的完善的微型计算机系统,它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件,同时也在工业控制领域广泛应用。2. 设计目的及功能需求2.1 设计目的本设计的主要任务是完成一个电梯系统的调度模块, 即根据每个楼层不同顾客的按键需求,让电梯做出合理的判断,正确高效地知道电梯完成各项载客任务。根据此任务,本课题需要研究的内容有:(1)根据系统的设计技术要求,进行系统硬件的总体方案设计;(2)研究 51 单片机的相关知识,掌握并且加以运用;(3)学习 C 语言编程,并
10、且规定电梯的工作规则,用C 语言编程加以实现,以完成电梯的各项功能;(4)学习Proteus电路仿真系统,学会软件的使用并且画出电梯仿真图,以便编程时进行代码调试;(5)在软件编程和硬件电路焊接完成后,对软件和硬件进行调试,让其协调工作,完成指定任务。2.2 设计功能需求本设计为八层电梯的控制系统,如下为系统的功能需求及设计内容:本电梯控制系统设计拟实现通电后,系统默认电梯停在一层;按下不同的按键电梯可以到达不同的楼层,如果电梯在上行,下面的楼层有呼叫电梯会继续上行,直到上行完了才会下行。同样如果电梯在下行,上面的楼层有呼叫电梯会继续上行,直到下行完了才会上行;如需上行,请按下所要到达楼层的上
11、行呼叫按钮,电梯显示开始上行, 所经楼层号用数码管进行显示,到达,楼层号持续显示,并有蜂鸣器鸣叫以示到达;当轿厢停留在中间楼层时,可实现上或下行呼叫,行进方向按呼叫顺序进行,如同时呼叫, 则坚持先上行, 后下行原则;由 LED箭头指示电梯是上行和下行的方向。3. 课题的开发环境简介3.1 电路仿真图制作软件Proteus 是世界上著名的EDA工具 ( 仿真软件 ) ,从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持、8051、AVR、ARM
12、、8086 和 MSP430等,可以仿真 51 系列、 AVR、 PIC、ARM、等常用主流单片机。还可以直接在基于原理图的虚拟原型上编程,再配合显示及输出,能看到运行后输入输出的效果2 。Proteus是单片机课堂教学的先进助手。在PROTEUS绘制好原理图后,调入已编译好的目标代码文件: *.HEX,可以在 PROTEUS的原理图中看到模拟的实物运行状态和过程。PROTEUS不仅可将许多单片机实例功能形象化,也可将许多单片机实例运行过程形象化。前者可在相当程度上得到实物演示实验的效果,后者则是实物演示实验难以达到的效果。它的元器件、连接线路等却和传统的单片机实验硬件高度对应。使用Prote
13、us 软件进行单片机系统仿真设计,是虚拟仿真技术和计算机多媒体技术相结合的综合运用,有利于培养学生的电路设计能力及仿真软件的操作能力;在单片机课程设计和全国大学生电子设计竞赛中,使用 Proteus开发环境进行培训, 在不需要硬件投入的条件下,对单片机的学习比单纯学习书本知识更容易接受,更容易提高。对于我们来说课程设计、毕业设计是我们走向就业的重要实践环节。由于Proteus 提供了实验室无法相比的大量的元器件库,提供了修改电路设计的灵活性、提供了实验室在数量、质量上难以相比的虚拟仪器、仪表,因而也提供了培养学生实践精神、创造精神的平台。 实践证明,在使用 Proteus 进行系统仿真开发成功
14、之后再进行实际制作,能极大提高单片机系统设计效率。因此, Proteus 有较高的推广利用价值。3.2 C51 的程序开发软件单片机开发中除必要的硬件外, 同样离不开软件。我们写的汇编语言源程序要变为 CPU 可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,目前已极少使用手工汇编的方法了3 。机器汇编是通过汇编软件将源程序变为机器码,用于 MCS-51单片机的汇编软件有早期的A51,随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil软件是目前最流行开发MCS-51系列单片机的软件。Keil C51软件是众多单片机应用开发
15、的优秀软件之一,它集编辑,编译,仿真于一体,支持汇编 ,PLM 语言和 C 语言的程序设计, 界面友好,易学易用。 Keil 提供了包括 C 编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境将这些部分组合在一起。掌握这一软件的使用对于使用 51 系列单片机的爱好者来说是十分必要的,如果使用C语言编程,那么Keil几乎就是不二之选。在设计中,我使用的就是程序开发软件就是 Keil C51 。当开始一个新项目,只需简单的从设备数据库选择使用的设备芯片, uVision IDE 将设置好所有的编译器、汇编器、链接器和存储器选项。 C51 工具包的整体
16、结构, Vision与 Ishell分别是 C51 for Windows和 for Dos 的集成开发环境 (IDE ),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用 IDE 本身或其它编辑器编辑 C 或汇编源文件。然后分别由 C51及 C51编译器编译生成目标文件(.obj )。目标文件可由LIB51 创建生成库文件,也可以与库文件一起经 L51 连接定位生成绝对目标文件 (.abs )。abs 文件由 OH51 转换成标准的 hex 文件,以供调试器 dScope51 或 tScope51 使用进行源代码级调试 4 。4. 系统方案论证与设计该电梯控制系统主要由楼层按
17、键和楼层鸣响及各楼层实时状态显示三部分电路组成,下面将一一介绍实现此系统功能的方案。4.1 主控制器模块的选用方案 1:采用可编程逻辑器件CPLD作为控制器。 CPLD主要是由可编程逻辑宏单元围绕中心的可编程互连矩阵单元组成,它编程灵活集成度高、设计开发周期短、适用范围宽、开发工具先进、对设计者的硬件经验要求低、标准产品无需测试保密性强等特点,采用并行的输入输出方式,提高了系统的处理速度,其中MC结构较复杂,并具有复杂的IO 单元互连结构可由用户根据需要生成特定的电路结构,完成一定的功能,适合作为大规模控制系统的控制核心。但本系统不需要复杂的逻辑功能,对数据的处理速度的要求也不是非常高,且从其
18、编程语言也不熟悉的角度考虑我们放弃了此方案5 。方案 2:采用 STC89C52单片机作为整个系统的核心,用其控制电梯运行功能,分析我们的系统,其关键在于实现电梯各个楼层的运行记录并显示,完成电梯的调度功能,而在这一点上,单片机就显现出来它的优势控制简单、方便、快捷。这样一来,单片机就可以充分发挥其资源丰富、有较为强大的控制功能及可位寻址操作功能、价格低廉等优点。STC89C52是一种带 8K 字节闪烁可编程可檫除只读存储器的低电压, 高性能 COMOS8的微处理器。其主要特点为采用 Flash 存贮器技术,降低了制造成本,其软件、硬件与 MCS-51完全兼容,且采用高密度非易失存储器制造技术
19、制造,将多功能8 位CPU和闪烁存储器组合在单个芯片中,另外其程序的电可擦写特性,使得开发与试验比较容易,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案6 。综合考虑,还是选择方案2,使用 STC89C52作为主控制模块。4.2 电梯楼层显示模块的选择方案 1:用 LED点阵进行显示各个楼层及电梯上下行状态。 LED点阵具有显示清晰,显示内容丰富、清晰,显示原理简单、控制方便,显示快速的特点。但单对于此系统我们不需要显示丰富的内容,而且 LED点阵价格贵,且使用起来易损坏。方案 2:用数码管和发光二极管进行显示。数码管由于显示速度快,亮度强,高频特性好,使用简单,显示效果简洁明了,体积小,
20、重量轻,寿命长,价格低廉而得到了广泛应用,且在此系统中可以用单个数码管显示楼层, 使用不同颜色的发光二极管来区分电梯处于上下行。综上所述选择方案 2。4.3 电梯楼层按键模块的设计由于本系统的电梯是八层楼使用,电梯外部每一层一般要使用一个上行按键和一个下下行按键,电梯内部每一楼层一个按键,所以加起来一共是24 个按键,由于芯片上的IO引脚有限,所以使用一个 4*4 的矩阵按键和 8 个按键组合起来完成按键模块,且共使用 16个 IO 引脚,既有足够的按键控制电梯运行,也留下了足够的芯片引脚供其他模块使用。5. 系统的硬件设计5.1 主控制模块的设计如图 5-1 所示为单片机最小系统。图5-1单
21、片机最小系统单片机最小系统, 或者称为最小应用系统, 是指用最少的元件组成的单片机可以工作的系统。在本设计中,最小系统应该包括:单片机、晶振电路、复位电路等。单片机 STC89C52概述STC89C52是美国 ATMEL公司生产的低电压、高性能 CMOS8位单片机,片内 4bytes 的可反复擦写的只读程序存储器( PEROM)和 128 bytes 的随机存取数据存储器( RAM),器件采用 ATMEL公司的高密度、非易失性存储技术生产,兼容标准 MCS-51指令系统,片内置用 8 位中央处理器( CPU)和 Flash 存储单元,功能强大。 STC89C52单片机可灵活应用于各种控制领域
22、7 。STC89C52单片机提供以下标准功能: 4K 字节 Flash 闪速存储器, 128 字节内部 RAM, 32 个 IO 口线,两个 16 位定时、计数器,一个 5 向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时, STC89C52单片机可降至 0Hz 的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止 CPU的工作,但允许 RAM,定时、计数器,串行通行口及中断系统继续工作。掉电方式保存 RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位 8 。STC89C52的引脚图如下图5-2 所示。图5-2STC89C52引脚图下面对 ST
23、C89C52的各个引脚作如下说明:VCC:供电电压。GND:接地。P0 口: P0 口为一个 8 位漏级开路双向 IO 口,每脚可吸收 8TTL门电流。当 P1 口的管脚第一次写 1 时,被定义为高阻输入。 P0 能够用于外部程序数据存储器, 它可以被定义为数据地址的第八位。在 FIASH 编程时, P0 口作为原码输入口,当 FIASH 进行校验时, P0 输出原码,此时 P0 外部必须被拉高。P1 口:P1 口是一个内部提供上拉电阻的 8 位双向 IO 口,P1 口缓冲器能接收输出 4TTL 门电流。 P1 口管脚写入 1 后,被内部上拉为高,可用作输入, P1 口被外部下拉为低电平时,将
24、输出电流,这是由于内部上拉的缘故。在 FLASH编程和校验时, P1 口作为第八位地址接收。P2 口: P2 口为一个内部上拉电阻的8 位双向IO口, P2 口缓冲器可接收,输出4 个TTL 门电流,当P2 口被写“ 1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2 口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16 位地址外部数据存储器进行存取时,P2 口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2 口在FLASH编程和校验时接收高八位地址信号和
25、控制信号。P3 口: P3 口管脚是 8 个带内部上拉电阻的双向IO 口,可接收输出4 个 TTL 门电流。当 P3 口写入“ 1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平, P3 口将输出电流( ILL )这是由于上拉的缘故。P3 口也可作为 STC89C52的一些特殊功能口,如下所示:口管脚备选功能P3.0RXD (串行输入口)P3.1TXD (串行输出口)P3.2INT0(外部中断 0)P3.3INT1(外部中断 1)P3.4T0 (记时器 0 外部输入)P3.5T1 (记时器 1 外部输入)P3.6WR (外部数据存储器写选通)P3.7RD (外部数据存储
26、器读选通)P3 口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALEPROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在 FLASH编程期间,此引脚用于输入编程脉冲。在平时, ALE端以不变的频率周期输出正脉冲信号, 此频率为振荡器频率的 16。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是: 每当用作外部数据存储器时, 将跳过一个 ALE脉冲。如想禁止 ALE的输出可在 SFR8EH地址上置 0。此时, ALE 只有在执行 MOVX,MOVC指令是 ALE才起作用。另外,该引脚被
27、略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次 PSEN有效。但在访问外部数据存储器时,这两次有效的 PSEN信号将不出现。EAVPP:当 EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1 时, EA 将内部锁定为RESET;当 EA端保持高电平时,此间内部程序存储器。 在 FLASH编程期间,此引脚也用于施加12V编程电源( VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2 :来自反向振荡器的输出9 。单片机时
28、钟电路单片机时钟电路如图5-3 所示。图5- 3单片机时钟电路图如图 5-3 所示,晶振电路由 C1 与 C2和晶振组成,晶振是给单片机提供工作信号脉冲的。它的速率就是单片机的工作速率,简单地说,没有晶振,就没有时钟周期,没有时钟周期,就无法执行程序代码, 单片机就无法工作。 并在晶振的两引脚处接入两个 10pF-50pF 的瓷片电容接地用来削减偕波对电路的稳定性的影响。 晶振的频率越高则系统的时钟频率也越高,单片机的运行速度也越快。但反过来运行速度越快对内存的速度要求就越高,对印刷电路板的工艺要求也越高,即要求产生的寄生电容要小,晶振和电容应尽可能安装得与单片机芯片靠近,以减少寄生电容,更好
29、的保证振荡器稳定、可靠的工作。基于以上本设计我们考虑选择频率为12MHz的晶振,当振荡脉冲频率为12MHz时,一个机器周期为 1us。单片机复位电路单片机复位电路如图5-4 所示。图5- 4单片复位电路图复位是单片机的初始化操作,程序给单片机的复位引脚RST加大于 2 个机器周期(即24 个时钟振荡周期)的高电平就可使单片机复位。STC89C52的复位是由外部的复位电路来实现的。复位电路通常采用上电复位和手动复位两种方式,手动复位有电平方式和脉冲方式两种,我们采用了手动复位为电平方式的复位。如图5-4 所示,我们通过RST端经由电阻与电源 VCC接通而实现,当按键按下时, RST端为高电平复位
30、。 当时钟频率选用12MHz时,C1 取 10uF,R1 取 10K 时,电容 C1充放电时间 =R1*C1=0.1s>2us(2 个机器周期)。如果 RST持续为高电平,单片机就处于循环复位状态。每次复位后,单片机的程序都会从第一条开始从新执行。另外,还额外设计了滤波防干扰电路,由C13与R12组成,电源先经过它们再接入单片机的电源Vcc 端,可以有效的减少杂波带来的干扰,影响电路10 。5.2 显示模块的设计电梯控制系统显示模块如图5-5 所示。图5- 5 显示模块图电梯在运行过程中,通过数码管显示所经过楼层,D12 和 D13 显示电梯处于上行或下行状态。5.3 按键模块的设计电梯
31、楼层按键模块如图5-6 和 5-7 所示。图5- 6按键模块图图5- 7按键模块图图 5-6 为电梯外部按键,每层楼有上下行请求按键,图5-7 为电梯内部按键,分别为1 到 8 楼的按键。5.4 蜂鸣器鸣响模块的设计当电梯到达目地楼层,蜂鸣器响鸣,电梯开门并等待3s。蜂鸣器鸣响模块如图5-8所示。图5- 8蜂鸣器鸣响模块图6. 系统的软件设计6.1 程序设计思路本设计是为一八层电梯设计调度系统,即使电梯能够合理高效地运行,完成各楼层顾客的接送任务。形象地说,就是要应对不同楼层顾客的不同需求,作出合理高效的判断,使所有顾客在整体运用时间最短的条件下将其运往各自的目的地。在整个电梯控制中,我们首先
32、必须得合理考虑按键的响应问题。一段时间内可能有多个不同的按键有动作,程序必须记录每一个按键的动作,并根据电梯本身所处的楼层情况与按键楼层之间的位置关系,合理判断出电梯应当做出上升或下降的响应动作。然后,两个楼层之间应考虑有一段运行时间,而且也要设置在一个楼层的停留时间。本设计中两个楼层之间的运行时间设为 1s,当电梯到达目的层时蜂鸣器要及时鸣响, 每层停留时间设为 3s。另外,当电梯上升或者下降时, 相应的状态指示灯应及时同步准确点亮。这个设计的成品应该可以作为真实电梯的控制系统一样,遵守以下两个原则:一是高效性,二是人性化。 而实际电梯所面临的情况无比复杂,故本设计的难点除了硬件上面外,还有
33、对这些复杂的情况归类化,分为若干个基本情况,另外是用恰当的C语言描述来表达这些复杂的逻辑 11 。6.2 系统主程序框图系统主程序框图如6-1 所示。6.3 系统程序流程图系统程序流程图如图6-2 所示。图 6-2 电梯程序流程图7. 系统实物的焊接与调试7.1 系统焊接步骤按电路图买好元件后首先检查买回元件的好坏,按各元件的检测方法分别进行检测,一定要仔细认真。而且要认真核对原理图是否一致,在检查好后才可上件、焊件,防止出现错误焊件后不便改正。按原理图的位置放置各元件,在放置过程中要先放置、焊接较低的元件,后焊较高的和要求较高的元件。特别是容易损坏的元件要后焊,在焊集成芯片时连续焊接时间不要
34、超过 10s,注意芯片的安装方向,以及各器件的正负极,以免出错,使电路烧坏。7.2 系统电路的调试首先烧入显示程序,看显示正不正常。在调试程序时,发现有的指令用的不正确,导致电路功能不能完全实现,另外软件程序中的延时有的过长、有的过短。7.3 系统实物展示系统实物如图7-1 所示。图 7-1 系统实物8. 结语经过了近半年的毕业设计的制作,通过在图书馆、互联网上查阅有关资料,不仅了解了电梯的起源和发展过程,而且加深了对电梯的运行过程、控制系统的认识,同时也对单片机有了更加进一步的学习和认识。由于是第一次完成单片机系统的设计,在开始阶段感到很困难,但坚持下来并在同学和老师的帮助下,一步步解决了。
35、在整个设计过程中,也将原来所学的知识系统化、理论化、实用化,对如何使用已有知识及获取相关资料方面的能力又有了提高,也认识到无论做什么,都需要踏、勤奋、严谨的工作态度,这对以后的工作产生深远的影响。总的来说,本次毕业设计的成品完成了我们生活中电梯的调度系统,而且本程序的编写不仅仅是为了应对八层楼的电梯,更多层的电梯也可以实现,如果对单片机的其他IO再进行扩展的话,可以实现十几层电梯的需求。当然,如果更高层的电梯,就会受到单片机管脚资源的限制了。而程序本身的思想本身是可以支持更多层电梯的运行调度的,如果用其他管脚多的处理器的话(如ARM型处理器),则这一设想完全可以实现。不过本次电梯系统的设计也有
36、不足之处,比如由于没有电机模块,所以无法控制电梯的运行速度;也需要优化电梯的选向功能,使之随客流量的变化而改变,打到高效运送乘客的目的,增加出现紧急情况时的电梯处理办法等等,有待改进。参考文献1 杨正新 . 单片机在电梯控制系统中的应用 J. 计算机应用 ,2001.92 李勋等 . 单片机实用教程 M. 北京航空航天大学出版社 ,20003 Lauener J.The lift in the 100-storeyed building disposesA.2000.4 谢宜仁 . 单片机实用技术问答 M. 北京 : 人民邮电出版社 ,2003.5.5 何立民 . 单片机高级教程 M. 北京航
37、空航天大学出版社 ,19956 张佳薇 . 数字电子技术基础 . 哈尔滨工程大学出版社 ,20097 陈志强 , 胡辉 . 单片机应用系统设计实践指南 J. 科学出版社 ,20058YeagerBrent.HowtotroubleshootyourelectronicscaleJ.BulkEngineering. 19959 李朝青 . 单片机原理及接口技术 M. 北京航空航天大学出版社,199810 马忠梅 . 单片机 C语言应用程序设计 . 航空航天大学出版 ,1997.1011 谢自美 . 电子线路设计 . 华中科技大学出版社, 2000.5附录附录 1:程序代码#include<
38、reg51(uint8._t cf);uint8_t code LED=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90; struct floorBOOL up;BOOL down;BOOL stop;F10;void main()uint8_t curf=1,reaf=1,i;char dir = 0;upLED_OFF();downLED_OFF();EA=1;中断优先级PT1PT0ET0=1;ET1=1;TMOD=0x11;TR0=1;TR1=1;P0 = LEDcurf;for(i=0;i<10;i+)Fi.up = FALSE
39、;Fi.down = FALSE;Fi.stop = FALSE;while(1)if (dir = 0)dir=0if (Fcurf.up)dir = 1;Beep();delayMs(3000);Fcurf.up = FALSE;else if (Fcurf.down)dir = -1;Beep();delayMs(3000);Fcurf.down = FALSE;else if (Fcurf.stop)Beep();delayMs(3000);Fcurf.stop = FALSE;if (isUp(curf)dir = 1;else if (isDown(curf)dir = -1;if
40、 (dir = 1)if (isUp(curf)upLED_ON();curf+;P0 = LEDcurf;delayMs(1000);if (Fcurf.up | Fcurf.stop)Fcurf.up = FALSE;Fcurf.stop = FALSE;upLED_OFF();Beep();delayMs(3000);elsedir = 0;upLED_OFF();if (dir = -1)if (isDown(curf)downLED_ON();dir = -1;curf-;P0 = LEDcurf;delayMs(1000);if (Fcurf.down | Fcurf.stop)F
41、curf.down = FALSE;Fcurf.stop = FALSE;downLED_OFF();Beep();delayMs(3000);elsedir = 0;downLED_OFF();BOOL isUp(uint8_t cf)uint8_t i;for(i=cf+1;i<=MAX;i+)if(Fi.up | Fi.down | Fi.stop)return TRUE;return FALSE;BOOL isDown(uint8_t cf)uint8_t i;for(i=cf-1;i>=1;i-)if(Fi.up | Fi.down | Fi.stop)return TR
42、UE;return FALSE;void Beep(void)uint8_ti=0,j,k;beep=1;while(voicei != 0)for(k=0;k<voicei+3*20;k+)beep=beep;for(j=0;j<voicei3;j+);i+;void delayMs(uint time)uint8_t i;while(time-)for(i=0;i<110;i+);void delay20ms(void)uint8_t i,j;for(i=0;i<100;i+)for(j=0;j<60;j+);void time0(void) interrupt 1 using 1P1 = 0x0f;if(P1&0x0f) = 0x0f)return;delay20ms();if(P1&0x0f) != 0x0f)P1 = 0xef;if(P10 = 0)P0 = LED9;if(P11 = 0)F2.down
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 破碎承包合同模板
- 纺织采购合同范例
- 焊接防盗合同模板
- 农机租赁合同完整版
- 幼儿园承包经营合同标准版
- 金融居间助贷合同模板
- 装修质保正规合同模板
- 简易艺人经纪合同范例
- 2024版建筑工程材料调度与运输合同3篇
- 年度市场营销与策划合同04
- 2024年社区工作者考试必背1000题题库及答案(必背)
- 工程项目部安全生产治本攻坚三年行动实施方案
- 【课件】体量与力量-雕塑的美感+课件-高中美术人美版(2019)美术鉴赏
- 生态文明通识智慧树知到期末考试答案2024年
- 创新设计产品说明书
- 2024年重症监护护理专科护士培训试题
- 火电厂检修培训课件
- 学校文印室外包服务 投标方案(技术方案)
- 北京市各区2023年高三(上)期末语文文学文本阅读汇编
- 太原公交公司管理试题
- 健康养生新概念课件
评论
0/150
提交评论