使用Keil编写具有基本功能的密码锁,可通过以下方案实现,核心功能包括密码验证、状态反馈和错误处理:一、6位密码锁功能实现初始密码与开锁逻辑 默认密码设置为123456,用户通过矩阵键盘输入密码后按"D"键确认。若密码正确,单片机控制指示灯亮起(如LED),同时锁具状态切换为开启。仿真显示:上电后数码管初始显示000
uchar code PassWord[]={1,2,3,4,5}; //定义初时密码表uchar PassInBuf[6]; //保存输入的密码字符uchar PassPosi; //用户输入密码字符存放在PassInBuf[]的位置。bit TimerBit; //20ms定时时间到uchar SysMode; //系统所处模式 0:输入密码模式 1:报警模式 2:开锁模式uchar ErrorCnt; //用户连续输入密...
while(keyval!=D[1]) //第二位密码输入不正确,等待 ;while(keyval!=D[2]) //第三位密码输入不正确,等待 ;while(keyval!=D[3]) //第四位密码输入不正确,等待 ;while(keyval!=D[4]) //第五位密码输入不正确,等待 ;while(keyval!=D[5]) //第六位密码输入不正确,...
S18---重试密码、重新设定 S19---关闭密码锁初始密码:000000 密码位数:6位注意:掉电后,所设密码会丢失,重新上点时,密码恢复为原始的000000与P1相连的8位发光LED点亮代表锁被打开;熄灭代表锁被锁上程序功能: 本程序结合了24C02存储器的存储功能,可以掉电保存密码。第一次运行时,若输入000000原始密码后无反应,...
1、系统工作原理 本系统以STCC52单片机为核心,使用4X4矩阵键盘作为数据输人方式,驱动1602显示器提示程序运行过程和*的步骤。本系统的密码判断过程如下:当使用者输人6位密码后按下BESURE键,单片机通过密码逐个比较,如果输入的6位蜜码和设定的密码完全相同,那么能成功驱动*模拟灯将锁打开。若输入6位...
密码储存于单片机内部自带的的EEPROM中,不需要外置AT24C01保存密码,是学习电子密码锁比较好的教学试验系统,主要功能如下:1、1602液晶菜单显示。2、6位密码,密码可重置,重置密码时,先输入原始密密,正确后输入新密码,再交输入新密码,两次输入的密码一致辞时,密码修改成功。开锁时,密码通过键盘输入,...
void main(){ char psw[30]="123456",str[30];PR("系统原始密码123456\n");int sum=0;do { gets(str);if(strcmp(str,psw)==0){ PR("请设置密码:\n");gets(psw);PR("密码设置成功!\n");break;} else { sum++;if(sum==3) {PR("非法用户!\n");exit(0);} PR("密码错误...
在图1所示电路中,P1口连接8个密码按键AN1~AN8,开锁 信号由P3.2输出,报警和提示音由P3.7输出。BL是用于报警与声音提示的喇叭,K是继电器控制电磁线圈。软件设计 图2给出了该单片机密码锁电路的软件流程图。图中�AA1~AA8以及START、SET、SAVE是程序中的标号,是为了理解程序而专门标...
用以74LS112双JK触发器构成的数字逻辑电路作为密码锁的核心控制,共设了9个用户输入键,其中只有4个是有效的密码按键,其它的都是干扰按键,若按下干扰键,键盘输入电路自动清零,原先输入的密码无效,需要重新输入;如果用户输入密码的时间超过40秒(一般情况下,用户不会超过40秒,若用户觉得不便,还...
1. 程序缓冲区溢出;2. 16位变量溢出,只能到65535,6位数不行;3. 其他可能就不知道了,连代码都没有,就靠嘴说谁知道问题在哪,呵呵