网站大量收购独家精品文档,联系QQ:2885784924

嵌入式课程设计报告电子密码锁.doc

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式课程设计报告 设计题目:电子密码锁 摘要 随着科技和人们的生活水平的提高,实现防盗的问题也变得尤为突出,传统机 械锁构造简单,电子锁的保密性高,使用灵活性好。根据需要设计运用 W90P170开发板,制作一款电子密码锁,密码锁通过键盘输入密码,通过在 LCD的文字和图片显示当前密码锁的状态。实现设置密码,密码验证,错误密 码自锁、图片显示的功能。 目录 一、 选题意义及系统功能3 二、 硬件设计及描述 4 三、 软件设计及描述 5 四、 程序代码 6 1 2 七、 心得体会 12 八、 参考文献 13 九、 附录13 选题意义及功能描述 1、选题意义 电子密码锁是通过密码输入来控制电路或是芯片工作,从而控制机械的开 关闭合、开锁的电子产品。随着科技提高和人们生活水平的提高,对电子密码 锁的需求增加。电子密码做较传统的机械锁安全性能更高。 特点如下: 保密性好,编程量大,随机开锁的成功率几乎为零。 密码可变,用户可以随时改变密码,防止密码被盗,同时也可 以避免人员的更替而使锁的密级下降。 误码输入保护,输入密码多次错误是,系统进行自锁。 无活动零件,不会磨损,寿命长。 使用灵活性好,无需佩戴钥匙,操作简单。 2、功能描述 基本功能: 从键盘输入任意6位数字作为密码,将这六位数字经过USI总线存储到FI ash芯片中,设置密码完成。 ⑵从键盘输入密码,比较键盘输入的密码与Fl ash屮存储的密码是否相同。 (3)如果密码正确,则LE D灯点亮;如果密码不正确,则LED灯闪烁,而且如 果连续三次输入密码错误则系统锁定,不允许再次输入密码。 扩展功能: ⑴首先显示“请输入密码:”,显示密码锁背景图片1。 如果密码正确则显示“密码正确”,显示成功进入系统的背景图片2。 如果密码不正确则显示“密码不正确,请重新输入「 如果连续三次输入密码错误则显示“对不起,您已经连续三次输入密码错 误,系统锁定”,显示图片 3、个人开发流程 ⑴了解开发板的硬件结构编写适应其硬件结构的程序。 (2 )掌握并编写LCD显示文本和图片程序。 ⑶通过EBI对外部LED灯进行控制。 (4)键盘键值读取,及密码锁密码比对,密码锁状态转换的程序编写。 6. 硬件设计及描述 1、LED灯模块 CPU的数据总线低8位连接到锁存器74HC273的信号输入端,CPU外部总 线接M(EBI )的nECSO片选信号连接到锁存器的锁存控制信号,当CPU访问 BANKO的任一地址空间是,数据总线的低八位的数据被锁存输出,作为控制8 个LED等的发光状态的控制信号,当写入Oxff是,8个LED灯都灭,写0x00,8 个LED灯都亮。硬件连接图如下。 2、KPI工作模块 行列式键盘以矩阵形式排列,每个键有一常开触点,其两端分别于输出扫描线 和输入状态线相连,键盘中有无键按下,是由列线扫描输出、读入行线状态来 判断。每个键都有一个键值和键号,通常将行、列按二进制顺序组合成酱汁, 经过查表获得键号。硬件连接图如下 3、LCD工作模块 该模块由40个引脚与外界电路相连,由于本身没有寄存器,需要W90P710提 供的LCD控制寄存器來控制选择对应的液晶类型及显示形式,FIFO的使用,颜 色的显示模式和时序的设置,并通过配置相应的寄存器就可实现。 1. 软件设计及描述 1、 KPI模块设计 实验屮的GPIO为键盘模式,使用的是GPI O_CFG2,查找相应的寄存器进行设 置,打开键盘中断,设定中断触发方式和优元级,扫描功能打开,时间约为 lOOmSo 2、 LCD显示模块 初始化呢控制寄存器,设定led控制器和中断服务程序,并写到AIC中断向量表 屮。关闭FIF01和FIFOO,关闭绿的控制器,重置控制器,再讲显示的数据发送 到缓存区中,根据时序的配置,从缓冲区中将数据读入液晶。 3、 整体模块设计及程序流程图 在主程序中进行按键初始化,在中断程序中实现,按键值的读取和存储,通过 设定状态标志位,数组。对存储的密码和输入的密码进行比较,判断对错从而 改变状态标志位,在屮短结束,回到主程序后通过识别状态标志位,显示相应 的图形和文字。 程序代码(主要程序,函数部分见附录) 1 m ain.c #incl .h #includ e 710defs .h /*头文件声明*/ #inclu de HB」t.h“ #include main.h #inelude I cd_pattern .h” extern U8 a[6]; ex tern int p ; extern U3 2 Key Value ; int main (void) { U32 FLL; int ent ,i; U8 wchar[]=设置密码”; U8wcharl[]=H 请输密码“; U8 wch ar2[]= ”密码正确”; U

文档评论(0)

ggkkppp + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档