当前位置:首页 » 《随便一记》 » 正文

基于stm32单片机的按键智能电子密码锁

12 人参与  2022年11月14日 18:08  分类 : 《随便一记》  评论

点击全文阅读


资料编号:127  下面是相关功能视频演示:

127-基于stm32单片机的按键智能电子密码锁(源码+仿真+原理图+PCB+参考论文)

功能介绍:

采用stm32单片机作为主控,矩阵键盘来进行密码输入,LCD1602显示当前状态,初始密码为147258,可以在程序里进行更换,密码输入正确会亮红灯蜂鸣器提醒代表开锁成功,如果密码输入错误会红灯闪烁并且蜂鸣器报警。绿灯是运行闪烁灯

下面是原理图展示:采用AD绘制 

 下面是PCB展示:采用AD绘制

下面是部分程序展示:

while(1)
  {        
        Key_Value = Key_Scan();
            
        if(Key_Value < 10)
        {
            disp_num[i] = Key_Value;
            i++;
            if(i > 5)
                i = 0;
            
            Key_Value = 27;
        }                

        if(Key_Value == 16)
        {                
            for(i = 0; i < 6; i++)
            {
                if(disp_num[i] != password[i])
                {
                    flag = 1; //输入错误
                    break;
                }
                else
                {
                    flag = 0;
                }
            }
            
            if(flag == 1) //输入错误
            {
                LCD_write_string(6, 1, Disp_NO);
                LED_Blink (3, 200);        
                BEEP_Blink(3, 200);        
                LCD_write_string(6, 1, Disp_NONE);
            }
            else          //输入正确
            {
                LCD_write_string(6, 1, Disp_YES);
                LED_Blink (1, 500);        
                BEEP_Blink(1, 500);        
                LCD_write_string(6, 1, Disp_NONE);
            }
            
            memset(disp_num, 27, 6);
            Key_Value = 27;
            i = 0;            
        }

        if(Key_Value == 13)
        {
            memset(disp_num, 27, 6);
            Key_Value = 27;
            i = 0;            
        }

        for(uint8_t j = 0; j < 6; j++)
        {
            if(disp_num[j] > 9)
                disp_num_tmp[j] = 0;
            else
                disp_num_tmp[j] = disp_num[j];
        }
        sprintf(toDisplay, DISP_FORMAT, disp_num_tmp[0], disp_num_tmp[1], disp_num_tmp[2], disp_num_tmp[3], disp_num_tmp[4], disp_num_tmp[5]);

        HAL_Delay(20);        
  }
}

 下面是该资料的分享下载链接:

https://pan.baidu.com/s/1y3c53dMmSn9-F7TRxaxIZQ?pwd=zwmp


点击全文阅读


本文链接:http://m.zhangshiyu.com/post/48408.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1