- 1、本文档共14页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机系统与应用课程设计报告矩阵式键盘数字密码锁设计成绩评语:教师:年月日班级: 1403013学号: 14030130057姓名:林泳聪实验地点: E-II-311实验时间:第二批课题八矩阵式键盘数字密码锁设计一、课程设计目的1. 掌握微机系统总线与各芯片管脚连接方法,提高接口扩展硬件电路的连接能力。2. 初步掌握键盘扫描,密码修改和计时报警程序的编写方法。3. 掌握通过矩阵式键盘扫描实现密码锁功能的设计思路和实现方法。二、课程设计的内容根据设定好的密码,采用4x4 矩阵键盘实现密码的输入功能。当密码输入正确之后,锁就打开(绿灯亮),10 秒之后,锁自动关闭(红灯亮);如果连续输入三次密码不正确,就锁定按键5 秒钟,同时发出报警(黄灯闪),5 秒后,解除按键锁定,恢复密码输入。三、系统功能与设计要求1.基本功能要求1)具有开锁、修改用户密码等基本的密码锁功能。2)对于超过3 次密码密码错误,锁定键盘5 秒,系统报警。5 秒后解除锁定。4)通过LCD 字符液晶和LED 指示灯(红,绿,黄)实时显示相关信息。5)用户密码为6 位数字,显示采用“*”号表示。6)密码锁键盘设计合理,功能完善,方便用户使用。数字密码锁操作键盘数字密码锁操作键盘参考上面设定,也可以自行设计键盘。用户初始密码为“123456”,系统加电运行后,密码锁初始状态为常闭(红灯亮),用户可以选择开锁或修改密码:如果选择开锁就按“Open”键,系统提示输入密码,输入用户密码+“#”键后,如果密码正确,就打开锁(绿灯亮),系统等待10 秒,然后重新关闭密码锁,若密码错,提示重新输入,连续三次错误,提示警告词同时报警(黄灯闪),锁定键盘5 秒,然后重新进入初始状态;如果选择修改密码就按”Modify Secret”键,系统提示输入旧密码,输入旧密码+“#”键后,如果正确,系统提示输入新密码,输入新密码+“#”后,新密码起效,重新进入初始状态;如果旧密码错,不能修改密码,密码锁直接进入初始状态。2.发挥部分(1)增加管理员(Admin)功能,如果用户忘记密码可向管理员求助。管理员密码为8 位数字(系统内预先已设定),管理员按“Admin”键后,系统提示输入管理员密码,输入管理员密码+“#”键后,如果正确,系统自动恢复用户初始密码为“123456”;如果错误,程序停止运行,系统退出。(2)增加组合键(Shift)功能,使系统的密码选择范围除数字外,另外增加a,b,c,d,e,f,g,h,i,j 等10 个字母。数字直接输入,字母“Shift”+“字母”。(3)增加输入清除功能(delete),在输入密码过程中,如果中途按下“delete”键,则清除前面的输入,开始重新输入密码。四、设计思路延时时间可以通过计数/定时器(8253)来控制。8253 的时钟源采用时钟信号发生器与分频电路提供,通过计算获得计数初值,按照设定的工作方式获得精确的延时时间。密码锁键盘采用4x4 矩阵键盘,液晶显示LCD 和LED 灯可以采用系统提供的相应模块。控制可以通过8255 可编程并行接口,如:PA 口控制LCD 液晶显示,PB 口和PC 口低四位控制键盘扫描,PC 口高四位控制LED 灯,也可使用基本并行I/O 接口(74LS245,74LS273)。编程通过键盘扫描实时处理键盘输入数据,完成密码锁相关操作。五、操作步骤1.提交设计方案编程语言:C硬件设备:QTH2008-PCI实验箱2.方案审核系统设计方案经过指导老师审核后,方可以实施操作。3.硬件系统实现按照硬件设计方案及硬件连线图连线4.按照功能要求编程,运行,调试#include StdAfx.h#include QTH9054fun.h#include QTH9054ioctl.h#define P8255A0x00#define P8255B0x01#define P8255C0x02#define P8255MODE0x03#define REDL 0xEF //1110 1111#define GREENL 0xDF //1101 1111#define YELLOWL0xBF //1011 1111#define DARKALL0xFF //1111 1111#define LCD_WC0x0046#define LCD_WD0X0047#define LCD_WC10x0044#define LCD_WC20x0042#define LCD_WD10x0045#define LCD_WD20x0043#define LCD_RD10x004D#define LCD_RD20x004B#define LCD_RC10x004C#define LCD_RC20x004Aunsigned char adminPass[6
文档评论(0)