基于51单片机的智能指纹考勤系统设计

收藏和点赞,您的关注是我创作的动力

概要

  随着科学技术的不断发展带动着电子行业的地位越来越重,现在电子产品几乎在社会的各个领域都可以见到。这些技术的发展有效的带动着社会生产力的发展和信息化的提高,同时电子产品也越来越智能。

  指纹识别技术作为生物识别技术研发的开端,并且得到了广泛的应用,在我们日常生活中随处可见,最常见的就是如今的手机指纹解锁。这种指纹识别技术能够识别独一无二的指纹特征,从而确定主人的身份,相对传统采用RFID刷卡的方式考勤这种指纹识别的系统可以避免替打卡的特点。

关键词:51单片机;指纹识别;液晶显示

一、系统硬件方案选择

本章节主要介绍系统所用到的器件的选择与对比,进行综合的对比考虑选择出最适合本设计的一组方案。

1 硬件方案的选择

  在硬件电路的搭建之前必须明确设计的方案,通过各个模块之间进行比较选择出最适合本设计的硬件,以发挥器件的最大功效。

二、主控芯片的选择

方案一:

  采用STC89C52单片机作为主控芯片。STC89C52是宏晶科技公司生产的一款低功耗、高性能的八位CMOS微处理器,片内具有8k在线编程Flash存储器。STC89C52单片机的内核采用的是MCS-51内核,指令完全兼容MCS-51,但是该单片机越做了升级使得芯片具有很多传统的51单片机不具备的功能,例如该芯片还有4K的EEPROM存储,在需要使用到掉电存储数据的时候就可以直接使用单片机内部的存储,不在需要在外接存储芯片进行存储。STC89C52单片机具有的开发简单、可在线编程下载、成本低是非常不错的选择。

方案二:

  采用MSP430单片机作为主控芯片。MSP430单片机称之为混合信号处理器,它可以将多个不同功能的模拟电路、数字电路模块和微处理器集成在一个芯片上,MSP430系列单片机是美国德州仪器(TI)1996年开始推向市场的一种16位超低功耗、具有精简指令集(RISC)的混合信号处理器(Mixed Signal Processor)。该系列单片机多应用于需要电池供电的便携式仪器仪表中。而却开发难度相对比较大、价格昂贵。所以在一些简单的设计中不宜采用。

方案三:

  采用PIC16F877A单片机作为主控芯片。PIC16F877A是由Microchip公司所生产开发的新产品,属于PICmicro系统8位单片机微机,具有Flash程序内存功能,可反复擦写程序。但是开发成本高,难度相对大。

  综合上述的描述,考虑到资源的合理利用和成本以及开发的难易程度最终决定采用宏晶科技的STC89C52单片机作为主控芯片。

三、指纹模块的选择

  其硬件结构主要包括:数据采集模块、最小系统模块、超重报警模块、键盘和显示模块。其中,数据采集模块包括称重传感器和A/D转换电路;最小系统部分主要包括AT89S51、晶振电路和复位电路;超压量程调节键盘;显示部分由LCD1602液晶显示。软件部分由C语言编程,实现对各部分的控制。该压力计可以实现测压、过压报警、压力量程调节和显示等功能。其压力范围为0~10Kg,分度值为0.001g。整个系统结构简单,使用方便。

/*************************************************************
                         指纹考勤系统
 
补充说明:
***************************************************************/
#include<reg52.h>            //头文件
#include<LCD12864.h>
#include<AT24C02.h>
#include<KEY.h>
#include<AS608.h>
#include<DS1302.h>
 
#define uchar unsigned char    //宏定义
#define uint unsigned int
#define ulong unsigned long
 
#define AT24Cxx_MAX 255//AT24Cxx最大地址
#define MAX 34         //指纹最大数量
 
#define ID_MAX 3 //输入ID最大位数
 
/*****************变量定义*********************/
uchar mode=0;    //0正常打卡,1管理界面,2注册模式,3删除模式
                 //4查询模式,5修改密码,6校准时钟,7工作时间
 
uchar mode_num=0;
 
uint ID=0;          //存储输入编号ID
uchar n=0;         //输入的位数
bit zhiwen_f=0;     //1=标记进入指纹采集
uchar chaxun_num=0;//查询编号
 
uchar a;         //存储按键值
uchar num;         //记录输入的密码位数
bit   in_f;         //输入密码的标志
bit   reset_f;     //重设密码的标志
bit   input_f;     //六位密码按完的标志
uchar reset_num; //标记修改密码阶段,=1输入旧密码,=2输入新密码,=3再次输入新密码
 
ulong low_mima=0;//系统密码
ulong in_mima=0; //暂存输入的密码
ulong new_mima=0;//暂存输入新密码
 
uchar set_f=0;     //设置选择变量
uchar temp[5]="    \0";//显示暂存变量 
uint fen[5]={0}; //存储工作时间
uchar date=0;    //0今天,1昨天,2前天
uchar day[2];     //记录查询的日期

四、 原理图

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

五、 文章目录

目 录

摘要…………………………………………………………Ⅰ
Abstract…………………………………………………………Ⅱ
1绪论……………………………………………………………… 1
2系统总体设计……………………………………………………4
2.1电路总体设计…………………………………………2
2.2电路总原理图………………………………………………2
3系统各部分硬件电路……………………………………………4
3.1显示电路………………………………………………………2
3.2单片机的接口电路……………………………2
4软件部分设计……………………………………………………4
4.1主程序流程图…………………………………………………2
4.2各子程序流程图………………………………………………2
5系统测试…………………………………………………………4
5.1系统测试………………………………………………………2
5.2测试结果………………………………………………………2
6结论………………………………………………………………60
参考文献………………………………………………………… 61
致谢………………………………………………………………62
附录………………………………………………………………62

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值