您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 述职报告 > 基于8255驱动的数码管显示和键盘电路设计与编程
基础课程设计(论文)基于8255驱动的数码管显示和键盘电路设计与编程专业:电气工程及其自动化指导教师:小组成员:信息技术学院电气工程系2014年10月28摘要—I—摘要本文主要是基于8255微处理器芯片,设计中包括数码管显示和矩阵键盘输入部分,可以完成一些简单4位以内的十进制计算。全文较为详细的介绍了芯片工作原理,硬件和软件的设计以及各部分的驱动程序和流程图。关键词:矩阵按键,数码显示,运算目录—II—目录摘要...................................................I绪论...................................................11课程设计任务要求及规定............................................................21.1课程设计要求................................................................................21.2课程设计规定............................................................................22整体设计思想...............................................................................23硬件设计........................................................................................33.1原器件件清单................................................................................33.2微处理器8086芯片.....................................................................33.3可编程并行接口芯片8255A.......................................................43.4LED数码管......................................................................................63.54×4矩阵按键...............................................................................63.6硬件原理图....................................................................................74软件设计.......................................................................................84.1程序流程图....................................................................................84.2总程序设计..................................................................................104.3按键扫描程序设计.....................................................................104.4矩阵键盘程序设计.....................................................................124.5运算程序设计..............................................................................174.6显示程序设计...................................184.7延时子程序.....................................20参考文献........................................................................................211绪论课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识,解决实际工程设计和应用问题的能力的重要教学环节。它具有动手、动脑和理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一个重要教学环节。通过课程设计,要求学生熟悉和掌握微机系统的软件、硬件设计的方法、设计步骤,使学生得到微机开发应用方面的初步训练。让学生独立或集体讨论设计题目的总体设计方案、编程、软件硬件调试、编写设计报告等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,实现由学习知识到应用知识的初步过渡。通过本次课程设计使学生熟练掌握微机系统与接口扩展电路的设计方法,熟练应用8086汇编语言编写应用程序和实际设计中的硬软件调试方法和步骤,熟悉微机系统的硬软件开发工具的使用方法。通过课程设计实践,不仅要培养学生事实求是和严肃认真的工作态度,培养学生的实际动手能力,检验学生对本门课学习的情况,更要培养学生在实际的工程设计中查阅资料,撰写设计报告表达设计思想和结果的能力。21课程设计任务要求及规定1.1课程设计要求1.四位数码管动态显示左向移位的数据,例如显示12352.完成4位数的十进制加法运算,结果显示3.完成3位数的十进制加法运算,结果显示在4位LED上4.完成一个4位十进制数除2位十进制数的除法运算,并将结果以十进制形式显示5.完成2位十进制数的乘法运算,结果显示4位1.2课程设计规定设计硬件线路,用protel画图。按单元电路详细说明硬件线路设计思路,元件参数,选取根据。附详细的元件清单。软件设计。只设计键盘扫描和LED显示部分程序。有完整的程序流程图,完整的程序清单,并加注释。总结设计过程和设计体包括总流程图和模块流程图。对程序设计思想做详细说明。2整体设计思想首先利用程序不断扫描键盘是不是有输入,如果没有就一直扫描,如果有就调用子程序进行判断,是数值则进行存储并同时进行显示,是运算符号等就调用相应的子程序进行操作,操作后则继续利用程序不断扫描键盘是不是有输入,从而实现4位十进制数以内的加减乘除法运算。运算完成后将运算的结果储存并显示到LED显示器上。如下图:3图1整体思路流程图3硬件设计3.1原器件件清单表一元器件清单原件名称原件个数808618255A18位4字共阴极数码管174LS1381按钮开关16电阻4直流5V电源13.2微处理器8086芯片当引脚接高电平时,CPU工作于最小模式。此时,引脚信号24~31的含义及其功能如下:(1)IO/M/(memoryI/Oselect):存储器、I/O端口选择控制信号。信号4指明当前CPU是选择访问存储器还是访问I/O端口。为高电平时访问存储器,表示当前要进行CPU与存储器之间的数据传送。为低电平时,访问I/O端口,表示当前要进行CPU与I/O端口之间的数据传送。(2)WR/(write):写信号,输出,低电平有效。信号有效时,表明CPU正在执行写总线周期,同时由信号决定是对存储器还是对I/O端口执行写操作。(3)INTA/(interruptacknowledge):可屏蔽中断响应信号,输出,低电平有效。CPU通过信号对外设提出的可屏蔽中断请求做出响应。为低电平时,表示CPU已经响应外设的中断请求,即将执行终端服务程序。(4)ALE(addresslockenable):地址锁存允许信号,输出,高电平有效。CPU利用ALE信号可以把AD15~AD0地址/数据、A19/S6~A16/S3地址/状态线上的地址信息锁存在地址锁存器中。(5)DT/(datatransmitorreceive):数据发送/接收信号,输出,三态。DT/信号用来控制数据传送的方向。DT/为高电平时,CPU发送数据到存储器或I/O端口;DT/为低电平时,CPU接收来自存储器或I/O端口的数据。(6)DEN/(dataenable):数据允许控制信号,输出,三态,低电平有效。信号用作总线收发器的选通控制信号。当为低电平时,表明CPU进行数据的读/写操作。(7)HOLD(busholdrequest):总线保持请求信号,输入,高电平有效。在DMA数据传送方式中,由总线控制器8237A发出一个高电平有效的总线请求信号,通过HOLD引脚输入到CPU,请求CPU让出总线控制权。(8)HLDA(holdacknowledge):总线保持响应信号,输出,高电平有效。HLDA是与HOLD配合使用的联络信号。在HLDA有效期间,HLDA引脚输出一个高电平有效的响应信号,同时总线将处于浮空状态,CPU让出对总线的控制权,将其交付给申请使用总线的8237A控制器使用,总线使用完后,会使HOLD信号变为低电平,CPU又重新获得对总线的控制权。3.3可编程并行接口芯片8255A微机系统的信息交换有两种方式:并行通信接口方式和串行通信接口方式。接口电路在CPU和I/O设备之间起着信号的变换和传输的作用。8255A可为86系列CPU与外部设备之间提供并行输入/输出的通道。由于它是可编程的,可以通过软件来设置芯片的工作方式,因此,用8255A连接外部设备时,通常不用再附加外部电路,使用教方便。并行接口是在多根数据线上,以数据字节/字与I/O设备交换信息。5图28255A引脚图在输入过程中,输入设备把数据送给接口,并且使状态线“输入准备好”有效。接口把数据存放在“输入缓冲寄存器”中,同时使“输入回答”线有效,作为对外设的响应。外设在收到这个回答信号后,就撤消数据和“输入准备好”信号。数据到达接口中后,接口会在“状态寄存器”中设置输入准备好标志,或者向CPU发一个中断请求。CPU可用查询方式或中断方式从接口中读取数据。接口中的数据被读取后,接口会自动清除状态寄存器中的标志,且撤消对CPU的中断请求。在输出过程中,每当输出寄存器可以接收数据,接口就会将状态寄存器中“输出准备好”状态置1或向CPU发一个中断请求,CPU可用查询或中断方式向接口输出数据。当CPU输出的数据到达接口后,接口会清除“输出准备好”状态,把数据送往外设,并向外设发一个“数据输出准备好”信号。外设受到驱动后,便接收数据,并向接口电路发一个“输出回答”信号,接口收到该回答信号后,又将状态寄存器中“输出准备好”置位,以便CPU输出下一个数据。定义工作方式控制字:6图3寄存器位图3.4LED数码管LED为发光二极管构成的显示器件,亦称数码管。由7个字符段和一个小数点段组成,每段对应一个发光二极管,当发光二极管点亮时,相应的字符段点亮。LED有共阴极和共阳极两种供应状态。共阴极显示时,将LED显示的COM接地,将八个字符段端a、b、c、d、e、f、g、dp依次与一个8位I/O口的最低到最高位连接,当I/O给LED的哪个字符段送入一个高电平时,该段就被点亮,从而可从这7个字符段中被点亮的构成相应的字符显示出来。同理,COM阳极即将COM端接Vcc,其显示原理与COM阴极的基本相同,但I/O口送入低电平是相应的段才被点亮。图4protel中LED图引脚控制图3.54×4矩阵按键键盘是常用信息输入元件,其实键盘也是由一个个按钮组成,如果是独立按钮的话必须要需要一个I/O口对它进行检测,而键盘往往这需要键盘按钮数一半7的I/
本文标题:基于8255驱动的数码管显示和键盘电路设计与编程
链接地址:https://www.777doc.com/doc-4250614 .html