全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > LED照明 >

求一种基于51单片机的电子密码锁设计方案

时间:2023-08-23 15:39

人气:

作者:admin

标签:   一种  单片机  基于   

导读:求一种基于51单片机的电子密码锁设计方案-输入密码即可开锁,可删除信息,可通过输入123456789ABCDEF等字符...

要求:

设计一个电子密码锁

1.输入密码即可开锁,可删除信息,可通过输入123456789ABCDEF等字符
2.密码错误发出警报
3.用LCD1602显示相关信息

当输入正确时 D2会亮灯,表示输入正确

密码输入错误时蜂鸣器会发出警报

部分程序:

#include

typedef unsigned char u8;

typedef unsigned int u16;

//sbit 特殊功能位声明:声明某特殊功能寄存器中的一位

#define key P1 //按键io口

sbit fen=P3^0; //蜂鸣器io口

sbit rs=P3^1; //LCD控制口

sbit rw=P3^2;

sbit e=P3^3;

sbit led=P3^4; //LED灯io口

//bit 位变量声明:定义一个位变量的值

u8 keyz=17,j=0,biao1=0,a=10,b=10,c=10,d=10;

bit biao=0;

u16 zh;

u8 shu[]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,

0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f};

u8 zi[]={"lnput password:"};

u8 num[]={"0123456789ABCDEF"};

void delay(u16 i){

while(i--);

}

/ 蜂鸣器 /

void Fen(u8 a,b) //蜂鸣器发声函数

{

u8 i,j;

for(i=0;i

{

for(j=0;j<100;j++)

{fen=~fen;delay(b);}

}

}

/ LCD /

void writecom(u8 com){ //LCD写指令

rs=0;

rw=0;

e=0;

P0=com;

delay(5);

e=1;

e=0;

}

void writedat(u8 dat){ //LCD写数据

rs=1;

rw=0;

e=0;

P0=dat;

delay(5);

e=1;

e=0;

}

void initlcd(){ //LCD初始化函数

writecom(0x38); //显示模式设置

writecom(0x0c);

writecom(0x06);

}

void xian(){ //LCD显示数字函数

writedat(num[keyz]);

if(a==10){a=keyz; } //对abcd,四位数的单独赋值

else if(b==10){b=keyz;}

else if(c==10){c=keyz;}

else{d=keyz;}

if(j!=3){j++;}biao=0;

}

/ 键盘 /

void Key(){u8 a=0; //矩形式键盘函数

if(key!=0x0f){delay(1000);

if(key!=0x0f){

key=0x0f;

switch(key){

case 0x07: keyz=0;biao=1;break;

case 0x0b: keyz=1;biao=1;break;

case 0x0d: keyz=2;biao=1;break;

case 0x0e: keyz=3;biao=1;break;

}

key=0xf0;

switch(key){

case 0x70: keyz=keyz;biao=1;break;

case 0xb0: keyz=keyz+4;biao=1;break;

case 0xd0: keyz=keyz+8;biao=1;break;

case 0xe0: keyz=keyz+12;biao=1;break;

}

}

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信