ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:182.18KB ,
资源ID:1976118      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/1976118.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(密码小键盘.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

密码小键盘.docx

1、密码小键盘课程设计任务书学生姓名: 专业班级: 指导教师: 工作单位: 自动化学院 题 目: 密码小键盘 课程设计的目的:本课程设计教学所要达到的目的是:1、培养学生理论联系实际的设计思想,提高学生综合运用汇编语言课程的理论分析问题、解决问题的能力。2、通过查找、运用设计资料,完成工程设计所必备的基本训练。3、使同学们更深入的了解计算机系统内部的有关知识,为以后的学习和系统开发奠定良好的基础。课程设计的内容和要求: 本次课程设计要求是建立在可编程并行接口芯片8255人机交互接口之“键盘接口”技术电路基础之上的,通过8255的三个并行输入/输出端口、以及利用8255的三种工作方式,来扩展一个外接

2、小键盘,并且能通过此外接键盘输入数字进行红绿灯校验,整个电路能够实现的功能就是:键盘包括数字键“09”和功能键“确认、取消”;程序设定初始密码,当输入的密码同初始密码相同时绿灯亮,当输入的密码错误时红灯亮。时间安排:1、 课程设计任务书的布置,讲解 (一天)2、 根据任务书的要求进行设计构思(一天)3、 编程调试(两天)4、 撰写说明书 (两天)5、 课程设计答辩(一天)指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日摘要微机原理与接口技术作为计算机科学领域的基础知识,尽管计算机科学高速发展,但基本原理依然不变,即是遵循冯诺依曼基本思想的。学习并能掌握好微机原理与接口技术这门知

3、识是非常重要的,通过对这门知识的了解可以简单的编写一些日常中经典的控制程序。本文主要是针对接口技术方面问题的一种设计方法,通过对8255A这个可编程并行接口芯片的所学知识,来扩展一个外接小键盘,并能够通过此键盘输入数据进行密码校正并有红绿灯显示的功能。本设计主要是通过软硬件结合的方法来加以实现所要求的功能,利用8255A端口单独作为输入/输出的功能同时实现扩展键盘和外接红绿灯显示的功能。其中,键盘键值的扫描是一个主要的问题,另外,密码比较和防抖延时等子程序也是一个应该关心的问题,解决了这部分关键点也就能很好的解决本设计要求。关键字:8255A 键盘 密码校验 红绿灯显示密码输入键盘1 设计要求

4、及其简明思路1.1 设计说明本文设计要求是建立在可编程并行接口芯片8255人机交互接口之“键盘接口”技术电路基础之上的,通过8255的三个并行输入/输出端口以及利用8255的三种工作方式,来扩展一个外接小键盘,并且能通过此外接键盘输入数字进行红绿灯校验,整个电路能够实现的功能就是:键盘包括数字键“09”和功能键“确认、取消”;程序设定初始密码,当输入的密码同初始密码相同时绿灯亮,当输入的密码错误时红灯亮。1.2 设计思路本文设计的思路也就能够围绕题目要求以及所学关于8255可编程并行接口芯片的知识得出解决此题的基本方法,简明介绍如下:通过8255基本输入输出端口C口七根I/O接口线分成34行列

5、形式外接12个键的矩阵式键盘电路,12个键的功能通过相应的程序进行控制,最终实现有09等10个数字键和确认、取消等2个功能键;另外,设定一个四位数字的初始密码,同初始密码进行比较的过程即为:从扩展的外接键盘输入数字直到按确认键后才使输入完毕输入的数据存入缓冲区、按取消即可清除之前输入的数字还可以重新输入数字直到按确认为止;输入的数据通过8255传送到CPU,再由CPU通过程序同初始密码确认比较,如果比较正确则8255通过B口输出使绿灯亮,否则红灯亮。本设计要完成的任务需要通过软、硬件设计来完成。软件设计需要实现键盘键值的读取、密码判断程序以及LED显示程序;硬件设计则需要硬件实验平台上相应的硬

6、件电路模块,包括键盘模块、LED发光二极管显示模块。2 密码输入键盘具体设计方法 2.1 可编程并行接口芯片8255A基本简介8255A是一种通用的可编程并行I/O接口芯片,具有3个带锁存或缓冲的数据端口,可与外设并行进行数据交换。用户可用程序来选择多种操作方式,它的各端口内具有中断控制逻辑,为外设与CPU之间的信息交换提供了方便。2.1.1 8255A的内部结构及功能简介8255A芯片内部结构图如图2.1.1所示,我们可以看到该芯片含有3个8位的控制端口,即A口、B口和C口,这三个端口可以作为CPU与外设通信时的缓冲器或锁存器,其中,一般情况下,作为缓冲器使用时就是输入接口,作为锁存器使用时

7、是输出接口。图2.1.1 8255A的内部结构图其实,8255A的三个端口实际上只有两组控制部件,其中将C口的八位分成高低各四位分别同A口、B口组合形成A组、B组两种独立的控制部件,它们可以同时接收来自读/写控制电路的命令和CPU送来的控制字。另外,8255A的数据总线缓冲器和读/写控制电路分别实现了8255A与CPU之间的联系,具体功能将在以下各节指出。2.1.2 8255A的管脚分配8255A是一个标准的40管脚芯片如图2.2.1所示,可以分为三个部分:与外设连接的I/O线,与CPU连接的总线,以及电源线。本设计中需要使用到与外设连接的各个端口,用于连接小键盘的C口和PB0端的红绿显示灯。

8、其中与CPU连接的8、9管脚决定了8255A的工作方式,本设计中采用的8255端口地址是奇地址即8255的A0、A1的管脚连接CPU的A0、A1管脚,CPU通过对8255A管脚的控制来控制其各个端口的工作方式。图2.1.2 8255A的管脚分布图2.1.3 8255A工作方式及其编程简介8255A有三种工作方式:方式0基本输入输出,方式1选通输入输出,方式2双向传输方式。本设计要使用该芯片来扩展小键盘,并实现密码校验的功能,为此,我们必须掌握8255A该芯片的编程方式,因为只有通过相应的软件来定义端口的工作方式,选择所需要的功能,硬件电路才能得以实现。首先对8255A的源程序初始化及其程序编程

9、应该有所了解,然而对其的初始化就必须使用到8255A的各种工作方式及其端口的地址,以便进行程序的控制。为此须要了解8255A的控制命令即其方式控制字,关乎8255A的端口工作情况。其基本规格如下各表所示: 表2.1方式控制字 表2 A口工作方式选择 表3 A口I/O选择D7 D6 D5 D4 D3 D2 D1 D01 A组控制 B组控制D4输入/输出选择0A口为输出1A口为输入D6D5 A口工作方式 00 方式0 01 方式1 1 方式2 表4 C口上半部I/O选择 表5 B口工作方式选择 表6 B口I/O选择 表7 C口上半部I/O选择D2B口工作方式0工作方式01工作方式1D3输入、输出选

10、择0C口高4位输出1C口高4位输入D0输入、输出选择0C口低4位输出1C口低4位输入D1输入/输出选择0B口为输出1B口为输入 本设计采用B口PB0端口输出外接显示灯,当管脚信号为低电平时绿灯亮,表示输入的数据同初始设置的值相同,相反当其管脚输出为高电平时红灯亮,表示输入的数据同初始设置的值不同。C口外接矩阵式键盘并且采用扫描法进行键盘信息的读取,通过使用的方式不同可以得出8255A可编程并行接口芯片的控制方式,在8255A的初始化及其编程当中需要用到。2.2 硬件接口电路原理2.2.1 键盘接口原理电路图由于本题设计要求要用户扩展的键盘按键有数字键09和功能键等共12个,因此键盘电路采用独立

11、式键盘将会占用很多的I/O线从而不实用。故采用矩阵式键盘电路来扩展带有12个按键的小键盘比较合适,根据本题要求只需34方式的矩阵即可,故其原理电路图如下图3所示: +5V 8255 PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7 0 1 2 3 4 5 6 7 8 9 10 11 图2.2.1 矩阵式键盘电路原理图矩阵式键盘电路其特点是由按键组成一个矩阵,矩阵的行线和列线分别作为两个传输方向相反的I/O接口信号线,如行线作为输入接口信号线,列线作为输出接口信号线,或反之。用独立式键盘相比这种电路所需要的I/O线很少,但键盘容量很大,按题目设计要求,本设计题只需用到C口的七根输入

12、/输出线,组成34式的矩阵即可达到要求组成带有12个按键的小键盘。2.2.2 键盘扫描法及程序处理的任务虽然矩阵式键盘对CPU的硬件资源要求不多,但相应的软件要复杂,目前扫描键盘的方法有两种,即扫描法和翻转法。其实现思想基本简介如下:扫描法是设定行线输出、列线输入,行线逐行输出0,如果某列有按键则列线输入为0;若无键按下列线输入全部为1,这样根据行线和列线提供的信息就可以确定是哪个键被按下。翻转法的实现思想是行、列线交换输入、输出,先输出一组所有为0的行值,读取列值并判断是否有0的位,然后输出所有为0的列值,读取行值并判断是否有0的位,从而两步进行确定获取键位置信息。因此,这种方法要比扫描法效

13、率高,本设计中采用的也是翻转法进行键盘信息的读取。其中,键盘的扫描同键位的确定有如下表2.2.2(a)所示的关系,扫描的程序将在附录中给出。表2.2.2(a) 34行列式键盘的按键编码表 按键 键 码 按键 键 码 行值 列值 行值 列值 011101110 611011011 111101101 711010111 211101011 810111110 311100111 910111101 411011110 10(确认)10111011 511011101 11(取消)10110111其中,功能按键只需要通过相应的程序进行调用说明其功能即可,其功能如下表2.2.2(b)所示:表2.2.

14、2(b) 按键对应的键名及其功能 按 键 键 名 功能说明 09键 数字键用于输入密码 10键 确认键当扫描到此键时结束扫描,即输入结束 11键 取消键当扫描到此键时重新扫描,即重新输入密码键盘处理程序的任务主要包括以下步骤:键输入、键译码和键处理三步。其中,键输入是键盘处理程序最主要的工作,由于键盘的机械结构,当键按下或松开时,键将有一个抖动过程,因此键输入的首要工作就是检查键盘是否有键被按下,消除按键抖动。然后再确定被按的键在矩阵中的位置,获取键号。消除抖动的方法可以采用软件延时。延时程序将在附录中给出。2.2.3 红绿灯显示电路部分由于设计的要求,需要通过扩展小键盘来输入数据并且与初始密

15、码进行比较,要求相同时绿灯亮,不同时红灯亮。故可以通过8255A端口输入/输出的功能加上相应的程序来实现,本设计采用B端口的一个输出端口通过非门的选择来实现红绿灯的亮灭,其部分接口电路如图2.2.3所示:图2.2.3 红绿灯显示电路部分电路图其中,红绿灯显示的原理是:当密码比较正确时绿灯D1亮,即B口PB0输出应该为0,所以B口输出为00H;当密码比较错误时红灯D2亮,即B口即PB0输出应该为1,所以B口输出为01H。其实现红绿灯亮的部分程序段如下: MOV AL,00H ;绿灯亮 MOV DX,B_PORT OUT DX,AL MOV AL,01H ;红灯亮 MOV DX,B_PORT OUT DX,AL2.2.4 硬

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1