博主福利:100G+电子设计学习资源包!

http://mp.weixin.qq.com/mp/homepage?__biz=MzU3OTczMzk5Mg==&hid=7&sn=ad5d5d0f15df84f4a92ebf72f88d4ee8&scene=18#wechat_redirect
--------------------------------------------------------------------------------------------------------------------------

基于AT89C52单片机设计一个四层电梯单片机控制系统。该系统应满足的功能要求为:4层电梯运行控制,轿内外呼叫,运行状态显示。独立键盘、LED显示楼层、指示灯。

本设计采用AT89C52单片机作为核心,配以适当接口作为输入输出通道。采用三行按键矩阵开关电路作为外呼内选呼叫控制。实际电梯控制系统每层装有一个传感器,从而判断车厢所在位置,本模型由10个独立按键作为楼层到达信号传输给单片机,而后通过内部电路从串口驱动数码管显示楼层数。

当电梯到达所选层,电梯开门延时等待进人并选层,然后延时关门执行请求,若无请求则停在本层等待请求。软件部分使用C语言,利用查询方式来检测用户请求的按键信息。

本系统硬件主要由复位模块、显示系统、扩展部分、矩阵控制模块几部分组成。各模块的主要功能如下:

1) 复位的功能其一用于程序初始化,其二也用于摆脱互锁和跑飞;

2) 显示系统的功能分为显示led灯显示触发楼层数和数码管显示当前楼层数的两个部分,用于显示电梯系统此时正在运行的状态;

3) 扩展部分:因为单片机芯片的接口有限,故使用8155扩展串行口用以连接更多功能;

4) 矩阵控制模块:即内呼外叫控制程序,用于控制电梯内外电路。

单片机最小系统电路设计

单片机最小系统包括复位电路和时钟电路。本复位电路采用上电自动复位和手动复位组合。上电自动复位是在加电瞬间电容通过充电来实现的,在通电瞬间,电容C3通过R1K电阻充电,RST端出现正脉冲,用以复位。

只要电源Vcc的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就完成了系统的复位初始化。手动复位是通过按下S111后,通过电阻RR直接给服务端一个高电平使之复位。编程初始化设置数码管显示为1,并且等待楼层模拟传感器读取数据。

开关控制电路设计

实际上即为一个内呼外叫系统,现以呼叫信号的输入为例,来说明信号输入及单片机识别原理。如图3所示,采用P0口外接上拉电阻的并行输入形式,来输入外呼叫信号,本电路采用4×4中的10个矩阵键盘,行扫描法识别键值的原理,具体原理如下:

a) 判断键盘中有无键按下 将全部行线PC.0-PC.3置低电平,然后检测列线的状态。只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。若所有列线均为高电平,则键盘中无键按下。

b) 判断闭合键所在的位置 在确认有键按下后,即可进入确定具体闭合键的过程。其方法是:依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。

由于没有电梯控制硬件模型,只能用按键来模拟电梯到达位置的触发信号。本电路采用独立式按键非编码键盘接口查询方式。当任何一个键按下时,与之相连的输入数据线即被清0(低电平),而平时该线为1(高电平)。

要判断是否有键按下,用单片机的位处理指令十分方便。这种键盘结构的优点是电路简单;缺点是当键数较多时要占用较多的I/O口。 查询方式键盘的处理程序比较简单。本处理程序中没有使用散转指令,并且省略了软件去抖动措施,只包括键查询、键功能程序转移。

led楼层触发显示灯电路设计

当前楼层显示电路设计

运用7SEG-MPX-4CA来实现输出楼层信息和当前楼层上下信息,7seg-mpx8-ca是共阳极数码管显示器,它左下侧的abcdefg dp是LED数码管显示器的I/O口,是段选信号,右下侧的12345678是它的位选信号,就是从左到右分别是第一位到第八位,段选信号与位选信号分别接到单片机的不同输出口。

8155串行口扩展电路设计

8155是一个有40引脚的塑封芯片,功能较强,广泛的应用在计算机电路中。它有两个8位口A、B和一个6位口C,总共可以扩展出22条接线。它含一个可预置的计数器,计数范围从2到16383,可用于延时、计数或分频。它内部还有256字节的RAM,可以补充CPU内存的不足。为了能够设置芯片的工作方式和了解芯片的状态,内部还有命令寄存器和状态寄存器。

其中,与 CPU相连的引脚有:CE是片选信号,当CE=0时,芯片才与CPU交换信息。CE接到地址译码器上,由整个系统分配给高位地址,以保证任何时刻只有一个芯片可与CPU交换信息,不发生地址冲突;IO/M是接口或内部RAM寄存器的选择线。

当IO/M=1时,CPU是对I/O接口操作,当IO/M=0时,CPU是对RAM进行操作,它一般接到CPU的地址线A8上;AD0~AD7为地址数据总线;ALE 是地址锁存信号输入线;RD、WR分别是读、写控制线;RESET是复位线。

当RESET=1时,8155被复位。与外部设备连接的引脚有:TMRIN(timerin)是计数输入线;接到待测的脉冲源;TMROUT(timerout)是计数输出线;PA0~PA7为A口的8位输入/输出线;PB0~PB7为B口的8位输入/输出线;PC0~PC5为C口的6位输入/输出线。各接口的工作方式由控制命令决定。

主程序设计

1)显示模块显示当前楼层,主程序不断地执行键盘扫描程序,当有键盘输入时,主程序调用定时器中断程序,并通过行列扫描方式读取到是哪个键盘输入。

2)读取到键盘之后,主程序调用显示子程序,通过显示上下和当前楼层信息和LED输出当前按下键的信息以及开关门的信息向操作人员传递信息。

定时器子程序设计

定时器子程序主要任务是完成3秒的定时,使显示模块能保持一段时间,使人能够观察到具体信息。如果没有这一模块,靠系统时钟来控制,一些中间过程根本看不出来,也给软件仿真和硬件仿真带来不小的困难。

盘扫描子程序设计

扫描子程序主要任务是通过行列扫描方式确定具体键盘的输入,先让PA口输出低电平,逐行扫描,直到能确定哪行有输入,然后读取PC口的信息,再与设定值进行比较,最后通过选择环节,确定最终的键盘号,PC0-PC3作为行线,PA0-PA2作为列线,相互配合完成扫描确认工作,最终转到输出子程序并将所输入的信息转化为具体的上下和数字输出,完成键盘扫描子程序的基本任务。

系统初始状态在1楼等候,以下为遇到的情况:

1)当按下2楼上,显示栏会显示上和上到2楼的信息,同时到2楼之后,开门LED会同时点亮。上楼按法和显示同上。

2)当楼层上升到4楼,按下下楼按键,显示栏会显示经过的楼层以及到达楼层,同时LED在开门时会点亮,下楼按法和显示同上。

3)当在电梯外部按完,开门LED点亮之后,接下来按你所要去的楼层,到达目标楼层之后,开门LED会点亮,同时显示上下和楼层信息。

基于单片机的电梯(四层)控制系统设计相关推荐

  1. 智能窗帘传感器c语言程序,基于单片机的智能窗帘控制系统设计(附程序代码)

    基于单片机的智能窗帘控制系统设计(附程序代码)(论文18000字,程序代码) 摘要:二十一世纪初以来,科学技术不断发展,智能家居涌现于各家各户,人们越来越重视生活质量的提高.但是传统的手动开合窗帘耗时 ...

  2. 交通灯控制系统c语言编程,基于单片机的交通灯控制系统设计(本科)毕业论文设计.doc...

    基于单片机的交通灯控制系统设计 摘 要 当你路过一个十字路口时,你是否注意到各个方向车辆和行人有有条不紊的通过十字路口.这样井然有序的情境靠什么来实现的呢?靠的是交通灯控制系统.在论文中我使用单片机S ...

  3. 基于单片机c语言的豆浆机,基于单片机的全自动豆浆机控制系统设计.doc

    论文题目: 基于单片机的全自动豆浆机控制系统设计 摘 要 全自动豆浆机基本工作过程是将事先泡好的大豆放入豆浆机内,并加入适量冷水后将电热管通电加热至80°C,粉碎电机通电工作.进行磨豆浆期间断续工作三 ...

  4. 基于单片机双路温度检测报警系统设计-基于单片机声光控智能开关控制灯设计-基于单片机热电偶智能体温检测设计-基于单片机小型家用燃气锅炉控制系统设计-基于单片机一氧化碳有毒气体采集报警系统设计

    1628基于单片机双路温度检测报警系统设计(串口上位机控制) 基于pcf8591 tlc2543的双路温度检测报警系统 带串口上位机控制带仿真 源程序 温度传感器是 LM35 两路测温通道所用的ad芯 ...

  5. 【分享】基于单片机嵌入式的家用智能节水淋浴控制器的设计-基于单片机的电子贺卡控制系统设计-基于单片机的倒计时牌控制系统设计-基于单片机的彩灯控制器系统设计-多模式彩灯-单片机的八路路数字电压表控制设计

    1334基于单片机嵌入式的家用智能节水淋浴控制器的设计-全套毕设课设设计资料 三个ds18b20分别采集进水口热水  冷水 和温水的水温,然后分别显示出来,按下开始按键,系统初始化,自动设置出水温度为 ...

  6. 基于单片机室内节能灯光控制系统设计(毕业设计资料)

    摘要: 室内照明节能系统,本设计设有定时模式.检测是否有人模式.检测光线强度模式和手动模块等四种控等模式,各种模式之间可以通过按键互相切换,方便使用. 1.通过继电器来控制照明灯的开启或关闭: 2.有 ...

  7. 单片机升降机c语言程序,基于单片机的货运升降机控制系统设计

    基于单片机的货运升降机控制系统设计 本文介绍以MSP430F2232单片机为核心的货运升降机控制系统.该系统完成了各楼层呼叫.货运升降机运行.急停.货运升降机位置.货运升降机门.照明.故障等 (本文共 ...

  8. 基于计算机控制的电压跟随器的设计,基于单片机的汽车转弯信号灯控制系统设计...

    <基于单片机的汽车转弯信号灯控制系统设计.doc>由会员分享,可免费在线阅读全文,更多与<基于单片机的汽车转弯信号灯控制系统设计>相关文档资源请在帮帮文库(www.woc88. ...

  9. 【单片机毕业设计】【mcuclub-109】基于单片机的智能抽油烟机控制系统设计-标准版【实物设计】

    设计简介: 项目编号:mcuclub-109 项目名:基于单片机的智能抽油烟机控制系统设计 单片机:STC89C52 功能: 1.通过MQ-2烟雾传感器检测厨房内烟雾浓度,若烟雾浓度小于设定最小阈值, ...

最新文章

  1. python中ht_python – 解析HTSQL时处理语法歧义
  2. Symfony学习笔记
  3. DataReader方式 获取数据
  4. 计算机英语仲裁合词,仲裁 arbitration 法律英语常用词
  5. 无人驾驶图像数据集_自动驾驶数据集
  6. 反思PHP多个字符串函数
  7. 运维经验 清空大量日志
  8. Bash Shell学习笔记一
  9. 还没搭建过Vue3.x项目?几行代码搞定~
  10. navicat连接oracle 报 ORA-12737 set CHS16GBK
  11. python读取hadoop库数据_使用Python访问HDFS
  12. android Handler更新UI
  13. Android测试——在Python中如何将Windows程序前台显示
  14. java只有值传递_为什么说java中只有值传递
  15. SAP HANA XS 专栏
  16. php在线拍照代码,基于jQuery+PHP在线拍照
  17. 如何注册ocx文件。。。
  18. 计算机网络之数据传输方式:电路交换、报文交换和分组交换
  19. 常用0x000000类型颜色代码表
  20. 在Windows中如何通过命令行创建快捷方式

热门文章

  1. 命令提示符已被系统管理员停用.请按任意键继续……
  2. Flutter-Wrap的使用说明
  3. 水经微图位置标注功能快速入门
  4. vue.js项目中配置mapbox可视化地图api
  5. top-性能分析命令
  6. java算法竞赛必备之快读快写(超详细解读)
  7. 快排及7种优化 (海贼班 胡船长 第四次直播笔记 )
  8. 游戏开发制作流程详细介绍
  9. 优酷无线路由器怎么设置连接服务器,192.168.11.1
  10. 50首经典好听的英文歌曲![转]