您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > 基于单片机80C51设计地下车库车位显示及控制
自动化课题制作论文设计题目名称:基于单片机80C51设计地下车库车位显示及控制专业名称:______________________班级:______________________姓名:______________________学号:______________________指导教师:______________________摘要..................................................................................................................................................1一说明.............................................................................................................................................2二硬件组成.....................................................................................................................................22.1、80C51...............................................................................................................................22.2、74LS164...........................................................................................................................42.3、LED数码管.....................................................................................................................5三、流程图.......................................................................................................................................73.1、中断流程图......................................................................................................................73.2、主程序流程图..................................................................................................................7总结..................................................................................................................................................8参考文献...........................................................................................................................................8附录1程序....................................................................................................................................10附录2Proteus仿真图....................................................................................................................141摘要随着经济的发展、社会的进步,越来越多的土地被用来建设,随之而来的就是合理利用资源的一系列问题。本实验课题就基于合理利用土地资源而进行的简单设计。本次课题设计应用的是80C51芯片实现地下停车位的控制显示,利用串行口通信,外加74LS164扩展芯片。由80C51的两个中断实现灯闪烁以及紧急情况中断和清除紧急情况中断。车位显示由两个共阳极七段数码管显示,外加74LS164实现数码管的静态显示。检测原件用按钮开关代替。关键词:80C51、74LS164、数码管、中断2一说明本次设计的思路大致是:(1)当进车无出车进车指示灯闪烁,提醒此时有进车,出车的等待。等进车过程结束,方可出车;(2)当出车无进车出车指示灯闪烁,提醒此时有出车,进车的等待。等出车过程结束,方可进车;(3)同时有进车和出车当同时有进车和出车,或者在第一个进车未结束时,又有出车等待,同时有另一个进车等待,则第一个进车结束后,优先出车,出车结束后才允许等待进车的进车;(4)紧急情况中断0设置中断0为紧急情况中断,当出现紧急情况时,按下紧急情况按钮,此时中断0响应,进车、出车口黄灯常亮;(5)清除紧急情况中断1设置中断1为高优先级中断,当紧急情况清除后,按下清除紧急情况按钮,中断1响应,并把紧急情况中断0清除。二硬件组成课题设计所用到的硬件主要有:80C51芯片一个,74LS164扩展芯片一个,七段数码管两个,LED灯三个,按钮开关和刀闸开关若干,电阻若干,电容三个,晶振一个。2.1、80C51(1)80C51的硬件结构图图2-1-1(2)组成51单片机内部含有一个8位CPU,4个8位并行口,一个串行口,两个16位定时器,5个中断源,128ByteRAM,4KROM,21ByteSFR。3(3)引脚80C51表面贴装有44个引脚,其中4个是空引脚。电源及时钟引脚:Vcc、Vss、XTAL1、XTAL2控制引脚:PSEN、ALE、EA、RSTI/O口引脚P0、P1、P2、P3图2-1-2(4)中断MCS51单片机的5个中断源分为两种类型:一类是外部中断源,包括INT0和INT1:另一类是内部中断源,包括两个定时/计数器(T0和T1)的溢出中断和串行口的发送/接受中断。[1]图2-1-3本次课题设计用到了串行口中断、外部中断1和外部中断0、定时器0中断。4串行口中断主要是负责把数码管要显示的数字的代码通过串行口通信发送到74LS164,通过串行中断判断发送数据是否结束。定时器0中断主要是负责让LED灯闪烁,有定时器0定时,每10ms产生一次中断。产生中断控制LED点亮和熄灭的时间,实现LED灯闪烁。定时器0中断还有一个作用是判断进车、出车情况。如果进车时间超过设定值,就会复位,返回主函数中。外部中断0和外部中断1是进行紧急情况的中断。当出现紧急情况时,按下紧急按钮,则外部中断0响应,禁止进出车,同时控制LED长亮。等紧急情况清除后,按下清除紧急按钮,则外部中断1响应,将设备复位并清除中断0.(5)定时器在MCS-51单片机中,与定时器/计数器应用有关的控制器有4个,分别为定时器控制寄存器(TCON)、定时/计数器工作方式控制寄存器(TMOD)、中断允许控制寄存器(IE)、中断优先级控制寄存器(IP)。2.2、74LS16474ls164、74lsT164是高速硅门CMOS器件,与低功耗肖特基型TTL器件的引脚兼容。74HC164、74HCT164是8位边沿触发式移位寄存器,串行输入数据,然后并行输出。数据通过两个输入端(DSA或DSB)之一串行输入;任一输入端可以用作高电平使能端,控制另一输入端的数据输入。两个输入端或者连接在一起,或者把不用的输入端接高电平,一定不要悬空。图2-2-1时钟(CP)每次由低变高时,数据右移一位,输入到Q0,Q0是两个数据输入端(DSA和DSB)的逻辑与,它将上升时钟沿之前保持一个建立时间的长度。主复位(MR)输入端上的一个低电平将使其它所有输入端都无效,非同步地清除寄存器,强制所有的输出为低电平。本次课题设计是把两个74LS164级联进行驱动数码管静态显示的。两个74LS164的级联如图所示。5图2-2-22.3、LED数码管LED数码管又分共阴和共阳两种如图2-3-1。如果把7段数码管的每一段都等效成发光二极管的正负两个极,那共阴就是把abcdefg这7个发光二极管的负极连接在一起并接地;它们的7个正极接到7段译码驱动电路74LS164的相对应的驱动端上(也是abcdefg);共阳就是把abcdefg的7个发光二极管的正极连接在一起并接到5V电源上,其余的7个负极接到译码驱动集成电路74LS164相应的abcdefg输出端上。无论共阴共阳7段显示电路,都需要加限流电阻,否则通电后就把7段译码管烧坏了。点亮显示器有静态和动态两种方法。所谓静态显示,就是当显示某一字符时,相应的发光二极管恒定的导通或截止,这种显示方式每一位都需要有一个8位的输出控制;所谓动态显示就是一位一位地轮流点亮图2-3-1显示器各位,对于显示器的每一位来说,每隔一段时间点亮一次。显示器的亮度既与导通的电流有关,也与点亮时间和间隔时间的比例有关。调整电流和时间参数,可以实现亮度较高稳定的显示。若显示器的位数不大于8位,则控制显示器公共极电位只需一个I/O口,控制显示器的各位显示的字型也需要一个8位口。图2-3-2为89C51的显示接口电路。本设计选用静态显示方式。8个74LS164afbgecdGNDGNDdpVccafbgecddpVcc6作为4位七段显示器的静态显示口,静态显示方式显示器的亮度大,很容易作到显示不闪烁。而且静态显示时CPU不要频繁地为显示服务,因而主程序可以不必扫描显示器,软件设计简单,从而使单片机有更多的机会处理其它的事务。图2-3-2数码管接口电路7三、流程图3.1、中断流程图图3-1-13.2、主程序流程图图3-2-18总结此次课题制作过程比较长,从构思,到画流程图,画原理图,写程序,可谓是一波三折。制作过程中也遇到了很多麻烦的问题。比如说控制LED灯的闪烁,刚开始想利用数组实现对不同LED灯的控制,可是写程序事又遇到了新的问题,就是数组与对应端口的对应。又进行对数组和端口的对应定义,因为数组利用的是变量,说以#define的时候定义未成功。就利用了定时器进行LED灯闪烁的控制。还遇到的问题是判断进出车的函数,怎样实现优先出车,当进车函数进行时,又有出车时,怎样进行函数的优先执行。74LS164的级联,也是通过网上收索相关信息才得以实现。通过本次设计,使我真正认识到所学知识的不足和局限性。巩固了有关单片机的知识,也学到了很多新的知识。本次设计,锻炼了我理论和实际结合的能力,通过不断的遇到问题解决问题,弥补不足中提高自己。由于能力有限,本次课题制作中不免有设计不合理的地方,还有未能实现的功能。以后还需多加努力。再此,还要感谢老师,也正是老师授课时把问题实际化,易理解化,一遍一遍不厌其烦的重复单片机基本内容后,才能让我们更容易接受,了解的更全面。参考文献9[1]姜志海赵艳雷陈松单片机的C语言程序设计与应用——基于Proteus仿真(第2版)2012年7月第2次印刷[2]张齐单片机应用系统设计技术----基于C语言编程[M].北京电子工业出版社,2004。[3]潘永雄新编单片机与应用[M]西安
本文标题:基于单片机80C51设计地下车库车位显示及控制
链接地址:https://www.777doc.com/doc-2574069 .html