云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 基于51单片机电子密码锁设计

基于51单片机电子密码锁设计

  • 62 次阅读
  • 3 次下载
  • 2025/5/6 3:58:59

号。

一般地,电容C2和C3取30pF左右,晶体的振荡频率范围是1.2-12MHz。如果晶体振荡频率高,则系统的时钟频率也高,单片机的运行速度也就快。

单片机复位使CPU和系统中的其他功能部件都处在一个确定的初始状态下,并从这个状态开始工作。单片机复位条件:必须使9脚加上持续两个机器周期(即24个振荡周期)的高电平。 3.3.3 显示系统

图4 显示电路

3.3.4 矩阵按键模块

图5 矩阵按键模块

8

4 软件设计与分析

4.1 软件设计的组成

该系统由延时子函数、LCD12864液晶测忙子函数、LCD12864液晶写数据子函数、LCD12864液晶初始化子函数、矩阵键盘扫描子函数、密码子函数、密码修改子函数、主函数和数据定义这几部分组成。

4.2 各子程序设计

4.2.1 键盘扫描子程序

键盘扫描流程图如图6:

开 始 设置处值 送入行扫描处值 调消除抖动 子 程 序 Y C=0? N N R5=0? A=0? 读P1值 设C=1左移测列 Y 设C=1右移扫描列 调用显示子程序 N C=0? Y 结束 图6 键盘扫描流程图

键盘扫描子程序如下:

void keyscan() {

uchar temp1,temp2;

P1=0xfe;//令第一列为低电平,检测第1列 temp1=P1;

if(temp1!=0xfe) {

delay(5); //去抖 temp2=P1;

if(temp1==temp2) {

switch(temp2) {

case 0xf6: if(num<4){key=1;keycmp[num]=key;num++;display();} else alarm();

break;

4.2.2 LED显示子程序

LED显示流程图如图7: 开 始

载入按键值

按键值+74LS138的扫描值

送P0口输出

图7 LED显示流程图

LED显示子程序如下: void display()

{ uchar i,j,cs=0x7f; for(i=num;i>0;i--) {

P0=table[0]; cs=_crol_(cs,1); P2=cs;

10

delay(10); }

for(j=4-num;j>0;j--) {

P0=table[1]; cs=_crol_(cs,1); P2=cs; delay(10); } }

4.2.3 密码比较和程序报警

密码比较和报警流程图如图8:

开 始 比较第一位 Y 比较下一位 Y N 清除显示 N 记录错误次数 N 6位比较完? 3次则报警 Y 正确开锁

清 零 图8 密码比较和报警流程

密码比较和报警程序: if((sk[11]==1)&(cp[0]==0))

{ GotoXY(0,0); print(\提示输入旧密码 count7=1;count2=1;count6=0;sk[11]==0;}

搜索更多关于: 基于51单片机电子密码锁设计 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

号。 一般地,电容C2和C3取30pF左右,晶体的振荡频率范围是1.2-12MHz。如果晶体振荡频率高,则系统的时钟频率也高,单片机的运行速度也就快。 单片机复位使CPU和系统中的其他功能部件都处在一个确定的初始状态下,并从这个状态开始工作。单片机复位条件:必须使9脚加上持续两个机器周期(即24个振荡周期)的高电平。 3.3.3 显示系统 图4 显示电路 3.3.4 矩阵按键模块 图5 矩阵按键模块 8

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com