智能密码锁设计与开发 - 图文(7)

2019-05-18 15:22

开始 初始化 指纹录入修改子程序 密码输入界面 切换键 输入密码 错误次数加1 确认密码 次数大于等于3? Y N 输入密码正确? Y 开锁 N 报警程序 报警 返回 N 手指接触? Y N 指纹一致?

图4.1 主程序流程图

Y

28

4.2矩阵键盘模块流程图

矩阵键盘模块由4个部分组成,分为为:键盘扫描、延时去抖、寻找键值和返回键值。键盘扫描是使一行端口变为低电平通过查看是否有列变为低电平,来判断按下情况的。所以这个扫描过程是需要循环往复的,程序编写则要实现这个过程。如果扫描结果表示并无按键按下,系统进入等待状态;如果扫描到有按键按下,则进行延时去抖的步骤。经过延时去抖,根据具体行列的检测确定按键的位置。找到按键后,确定键值并返回键值,并执行闭合按键释放。流程图如图4.2所示

键盘扫描 有键闭合? Y 延时去抖 N 找到闭合键 计算键值 闭合键释放 返回键值 图4.2矩阵键盘模块流程图

4.3 LCD1602液晶屏显示模块流程图

LCD1602液晶屏显示模块的软件设计部分主要包括开始、初始化LCD、清除LCD、写LCD四个过程。 LCD1602写命令程序如下所示:

29

void write_com(uchar com) {

e=0; rs=0; rw=0; P0=com; delay_uint(3); e=1;

delay_uint(25); e=0; }

初始化LCD的程序如下所示: void init_1602() {

write_com(0x38); }

write_com(0x0c); write_com(0x06); delay_uint(1000);

write_string(1,0,\ write_string(2,0,\lcd1602_guanbiao(1,7+0x40); //开光标

30

液晶显示模块的流程图4.3:

开始 初始化LCD 清除LCD 写LCD 结束 图4.3 液晶屏显示模块流程图

4.4 开锁和报警模块流程图

如图4.4开锁和报警模块流程图,开始时按开锁键并输入密码,输入的密码将与单片机内部保存的密码相比较,如果输入正确,则提示开锁成功。如果输入错误,错误次数则开始累积,3次以上错误后则执行报警程序,蜂鸣器持续鸣叫。

31

开始 初始化 按开锁键 输入密码 错误次数加1 确认密码 次数大于等于3? Y N 输入密码正确? Y 开锁 N 报警程序 报警 返回 图4.4 开锁和报警模块流程图

4.5密码修改流程图

修改密码模块主要是在输入密码正确之后,按下密码修改键就能进入修改密码界面,其流程分为四个步骤,分别为按下密码修改键、输入修改的密码、按下确认键、LCD的显示。修改密码的部分程序如下图4.5

32


智能密码锁设计与开发 - 图文(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:《嵌入式系统开发》课程设计 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: