STM32F103触摸屏指纹密码锁

1.硬件

1.1 硬件组成

1.正点原子战舰V3开发板
2 AS608指纹模块
3 继电器+5V小灯
4 2.8寸电阻触摸屏

1.2 硬件连接

1,DS0(LED0)(连接在PB5),DS1(LED1)(连接在PE5)
2,蜂鸣器(连接在PB8)
3,按键KEY1(PE3)开锁/KEY2(PE2)关锁
4.继电器(连接在PE1)
5.AS608的接线
	红Vi--------3.3V
	黄Tx--------Rx(PA3)
	白Rx--------Tx(PA2)
	黑GND---------GND
	蓝WAK---------PA6(感应信号输出,默认高电平有效),GPIO(PA6)读取指纹模块触摸感应信号
	绿Vt----------3.3V(触摸感应电源输入端,3.3v 供电)
	
	串口2(波特率:57600,PA2/PA3)与指纹模块AS608通讯
	ALIENTEK 2.8寸TFTLCD模块(通过FSMC驱动,FSMC_NE4接LCD片选/A6接RS)
	W25Q128(SPI FLASH芯片,连接在SPI1上,用于存储字库)16M字节
	EEPROM24C02(用于存储LCD触摸屏一些参数和密码)256字节

在这里插入图片描述

2.功能实现

2.1概述

用继电器加一个5V小灯来模拟门锁的开关,用K1和K2按键来模拟钥匙开锁关锁,K1按下继电器吸合小灯亮代表门锁打开,K2按下继电器弹开小灯灭代表门锁关闭。触摸屏通过四位密码来控制继电器,也可以设置密码,密码保存在EEProm里,触摸屏按下指纹按键时跳转为指纹解锁界面,指纹比对成功继电器吸合,也可以新增指纹和删除指纹

2.2触摸屏解锁主界面

在这里插入图片描述

2.3指纹解锁界面

在这里插入图片描述

2.4 视频演示

视频演示

3.主要代码

	while(1)
	{		
		//延时状态切换		
		switch(processsum)
		{
			case 0:
				MAIN_MENU();//切回主页面
				processsum=2;
				break;
			case 1:
				PS_MAINMENU();				
					while(1)
					{
						key_num=AS608_get_keynum(0,170);
						if(key_num)
						{
							if(key_num==1)Del_FR();		//删指纹
							if(key_num==3)Add_FR();		//录指纹									
						}
						if(PS_Sta)//检测PS_Sta状态,如果有手指按下跳转指纹解锁界面比对指纹
						{
							press_FR();//刷指纹
						}	
						delay_ms(20);
						cnt++;
						if(cnt%500==0)break;//延迟10s后跳转主界面
					}
					processsum=0;
					break;
			case 2:			
				num=PW_GET_NUM();			
				if(num==0xff00)
				{
					SET_PW();		//设置新密码
				}
				if((num!=0xffff)&&(num!=0xff00))
				{
					VERIFY_PW(num);	//密码验证		
				}
				if(num==0xffff)//跳转指纹解锁
				{
					delay_ms(500);
					processsum=1;
        			break;
				}
		}
					
	}

4.下载链接

STM32F103触摸屏指纹密码锁

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值