基于STC15单片机的智能密码锁(矩阵按键输入)设计 您所在的位置:网站首页 基于单片机的蓝牙遥控开关设计 基于STC15单片机的智能密码锁(矩阵按键输入)设计

基于STC15单片机的智能密码锁(矩阵按键输入)设计

2023-06-13 15:44| 来源: 网络整理| 查看: 265

目录

一、项目背景

二、功能需求

 三、功能组成

四、总结

一、项目背景

        智能门锁是一种基于现代智能化技术,与传统门锁进行比较的创新型的电子门锁产品。传统门锁通常采用钥匙旋转来开启门锁,但传统门锁存在钥匙遗失、易被复制等问题,特别是具有主动性质的人员如不法分子,可以通过主动窃取、复制钥匙等手段,轻松翻越传统门锁,进入家庭、企事业单位或其他场所,造成不必要的经济和社会损失。智能门锁则通过密码、指纹、身份验证等技术,提供更加安全、便捷、舒适的门锁体验,实现智能门锁物联网系统。

        智能门锁结合了多个技术:如无线通信技术、计算机技术、集成电路技术和自动控制技术等。同时在保证安全性的前提下,实现开锁过程的智能和自动化。

        智能门锁是现代化、智能化、人性化、网络化、绿色化、安全性齐备的新型门锁产品,得到越来越多人的青睐和使用。

二、功能需求

智能门锁的核心功能是使用数字密码进行解锁,另外还加入密码修改功能以及对密码错误次数过多的报警和禁止操作功能。

在功能上需要有欢迎界面,主界面的时间显示,以及在按键按下时可以自由切换界面,主要有界面一为输入密码界面,界面二为更改密码界面。 

 三、功能组成

        在功能实现过程中需要用到LCD1602来显示,首先我们需要对LCD1602进行初始化,其次呢,还要用到LCD1602的显示功能,在智能锁的开机界面我们想让它来显示我们设置字符串,首先就要用到字符串显示函数

void LCD_ShowString(unsigned char Line,unsigned char Column,char *String) { unsigned char i; LCD_SetCursor(Line,Column); for(i=0;String[i]!='\0';i++) { LCD_WriteData(String[i]); } }

通过这个函数,我们就可以在LCD屏的指定位置开始显示我们指定的字符串,同时考虑到,在我们输入密码的过程中,密码是通过在屏幕上一个一个显示,所以我们还需要一个可以在指定位置来显示单个字符的函数

void LCD_ShowChar(unsigned char Line,unsigned char Column,char Char) { LCD_SetCursor(Line,Column); LCD_WriteData(Char); }

此外LCD1602还为我们预留了8个可以存放自定义字符的地址,我们可以通过取模软件来自定义自己想要显示的字符,那我们要如何来显示呢,这时就要用到下面这个函数了

/** * @brief 在指定位置显示自定义字符 * @param X 列0~15; Y 行 0~1; Num 字符存储位置0~7;*LCD_Cust 自定义字模表 * @retval */ void LCD_Show_Customer(unsigned char X,unsigned char Y,unsigned char Num,unsigned char *LCD_Cust)// { unsigned char i; unsigned char Com = Num; X&=0X0F; Y&=0X01; if(Y) { X=X+0X40; } X=X+0X80; Com=Com


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有