编号0814147
课 程 设 计
( 2008级本科)
题 目:一种由微机实现的多功能密码锁设计 系(部)院: 物理与机电工程学院 专 业: 电气工程及其自动化 作者姓名:
指导教师: 职称: 副教授 完成日期: 2011 年 6 月 28 日
二〇一一年六月
河西学院本科生课程设计任务书
学生姓名 专业方向 题目名称 电力系统 学号 班级 08级1班 一种由微机实现的多功能密码锁 一、设计内容及技术要求: 密码锁在输入密码正确的条件下输出开锁电平,控制电控锁开启,同时显示00字样。当输入密码错误时,发出错误警告声音,同时显示FF字样。当六次误码输入的条件 下,产生报警电平报警。采用90秒定时中断,输出控制信号,防止长时间无 效操作。 二、课程设计总结报告要求 1、选用8086和适当的存储器及接口芯片完成相应的功能。 2、用LED显示器显示电子锁的当前状态。 3、画出详细的硬件连接图。 4、给出程序设计思路、画出软件流程图。 5、给出所有程序清单并加上必要注释。 6、完成设计说明书(包括封面、目录、设计任务书、硬件设计思路、硬件原理图、软件设计思路、程序流程框图、程序清单、所用器件型号、总结体会、参考文献等)。 三、设计进度 第一周: 星期一上午 讨论设计题目 星期一下午 查资料 星期二至星期五 完成对硬件电路的基本设计 第二周: 星期一至星期二 完成软件流程图及软件设计 星期三至星期四 软硬件统调,写说明书,画图 星期五 答辩 指导教师签字:
目录
一、设计目标 ………………………………………………………… 1 二、设计要求 ………………………………………………………… 1 三、整体功能描述 …………………………………………………… 1 四、设计思路 ………………………………………………………… 1 五、硬件设计功能模块 ……………………………………………… 2 1.键盘…………………………………………………………… 2 2.中断控制……………………………………………………… 2 3.计时…………………………………………………………… 2 4.按键响应……………………………………………………… 2 5.报警…………………………………………………………… 3 6.储存器及片选………………………………………………… 3 7.整机电路……………………………………………………… 5 五、程序流程图……………………………………………………… 6 六、程序清单………………………………………………………… 6 七、设计总结………………………………………………………… 14
一、 设计目标
1.密码锁在输入密码正确的条件下输出开锁电平,控制电控锁开启,同时显示00字样。 2.当输入密码错误时,发出错误警告声音,同时显示FF字样。 3.当六次误码输入的条件下,产生报警电平报警。
4.还可以实现对密码的修改,修改成功后,蜂鸣器发出确认音。
二、 设计要求
1、选用8086和适当的存储器及接口芯片完成相应的功能。 2、用LED显示器显示电子锁的当前状态。 3、画出详细的硬件连接图。
4、给出程序设计思路、画出软件流程图。 5、给出所有程序清单并加上必要注释。
6、完成设计说明书(包括封面、目录、设计任务书、硬件设计思路、硬件原理图、软件设计思路、程序流程框图、程序清单、所用器件型号、总结体会、参考文献等)。
三、 整体功能描述
本设计为多功能密码锁,使用存储器保存密码防止断电后密码丢失。工作时按下按键蜂鸣器会发出声音提示按键有效并在数码管有“- -”闪烁字样,若相隔1分钟无按键按下,则清零。在输入密码正确的条件下输出开锁电平,控制电控锁开启,同时显示00字样。开锁后可按下“复位/修改密码键”实现修改密码功能的转入,之后先输入密码再输入同样的密码确认才可成功修改,修改成功后蜂鸣器会发出三声,数码管“00”闪烁三次提示修改密码成功。当输入密码错误时,发出错误警告声音,同时显示FF字样,当输入密码错误次数累积够6次后,蜂鸣器会产生90秒的报警声响进行报警。
四、设计思路
在本次设计中,因为密码锁的基本功能使可以判断密码是否正确,以及完成对密码的修改,所以需要用到输入设备以及CPU的接口电路以及相关存储设备;因为有报警提示功能,所以要用到相关的输出设备以及接口电路。
首先,因为要完成逻辑运算功能,所以必须要有CPU,CPU就选用我们最常用也最熟悉的8086,分别用一个A28F512作为外部存储设备,因为ROM只读不可断电信息不丢失,用来存储相关程序,而ram可读可写,但断电信息会丢失,故用来存储运行期间产生的相关数据。考虑到8255的端口兼具输入输出功能,灵活方便,所以选用一片8255作为输入输出设备与8086间的借口;采用0到9数字按键以及相关功能选择的输入;输出设备方面,采用两位
数码管实现题目的状态提示要求,用一个蜂鸣器作为相关的警报,提示的声音输出。另外,为简化编程,采用8259中断控制器来触发中断实现密码锁工作模式的转换,其中的密码输入及判断功能与密码修改功能分别用两个外部中断来触发中断服务程序来实现。本设计的密码位数为6位。
五、硬件设计功能模块
本设计使用了8086、8259A、8255、8253、A28F512、74LS138、74LS148、地址锁存器、数码管以及74系列逻辑门、蜂鸣器、开关等芯片与元器件,实现了键盘输入、中断控制、计时、按键响应、开锁及报警等功能模块。以下一一详述。
1.键盘
本设计8255A的A口与两片级联的74LS148组合接用于输入键盘,实现对输入键号的读入。工作时,8086通过程序扫描键盘,当无键盘按下时,74LS148工作于无输入状态,GS口输出高电平,接到PA4作为识别有无按键按下信号,PA口输入为10H;当有按键输入时,74LS148输入口接到低电平,输入有效,经编码后键号转换为相应二进制编码送到PA口,成为能为CPU识别的代表键值的有效信号。读入的按键信号经8086判断后,根据不同的功能,输出不同的按键响应,并转移到相对应的功能服务程序。
本设计总共用到11位按键,包括10位数码输入按键及一位“复位/修改密码”按键,电路设计总共可用按键有16位,供升级功能使用。键盘电路如下图1所示:
2.中断控制
用一片8259A芯片作为中断控制接口电路。其中IR0与IR1中断开放,单片工作于非缓冲方式,电平触发,优先级是普通全嵌套方式。可通过编程开中断,通过编程或者8253计时器关中断。电路连接如图2所示:
3.计时
采用8253计时器控制中断的关断,实现单次输入密码超时则退出输入密码中断子程序、报警器响铃时间控制等功能。电路如图2所示。
4.按键响应
8255PC0、PC1接到数码管片选、PC2接到蜂鸣器、PC3接到电子锁。电路连接如图3所示:
5.报警功能
同时用8255A的B口控制数码管的显示,C口片PC0、PC1选数码管,PC2用来驱动SPEAK发出报警。电路如图3所示。