电子信息工程基于指纹IC卡的楼宇门禁系统的设计


    

    基指纹IC卡楼宇门禁系统设计

    Design of building access control system based on fingerprint IC card

    容摘

    着科技发展生活水提高现中国社会家庭物质财产十年质飞跃提高防盗意识提升锁具安全系数成务急传统机械锁构造简单已许久没技术更新导致安全系数降撬事件屡见鲜反观电子锁出现智时代势趋保密性高灵活性安全系数高智门锁算强行破门失窃情况配合智设备监控嫌疑生物特征进行采集期案件侦破重帮助
    设计旨设计款基stc89c52单片机集成指纹认证IC卡认证智密码锁设计stc89c52微控制处理器芯片作控采指纹识模块IC卡认证模块组成安全认证系统通矩阵键盘输入电子密码设置指纹密码解锁IC认证两种解锁方式采LCD12864液晶进行显示交互反馈测试结果表明系统项功已达设计求
    关键字:防盗安全智门锁stc89c52单片机IC卡

    Abstract

    With the development of science and technology and the improvement of people's living standards the material property of the family in China has made a qualitative leap over the past decade It is an urgent task to improve the awareness of antitheft and the safety factor of locks In the past the traditional mechanical lock because of its simple structure and no technical update for a long time leads to the decrease of safety factor There are many cases of being prized In contrast the emergence of electronic lock is the general trend of the coming of the intelligent age It has high security good flexibility and high safety factor Even if the intelligent door lock is broken by force it can cooperate with other intelligent devices such as monitoring to collect the biological characteristics of the suspect in the case of theft It is of great help to the investigation of later cases
    The purpose of this design is to design an intelligent password lock based on STC89C52 which integrates fingerprint authentication and IC card authentication In this design STC89C52 chip is used as the main controller and fingerprint identification module and IC card authentication module are used as the security authentication system Fingerprint password unlocking and IC authentication can be set through the electronic password input by matrix keyboard LCD12864 liquid crystal is used for display and interactive feedback The test results show that all the functions of the system have reached all the requirements of the design
    Key words Anti theft security intelligent door lock STC89C52 single chip microcomputer IC card



    目录
    第章 引言 2
    11 前言 2
    12 行业背景 3
    13 设计特点 3
    第二章 系统设计 5
    21 硬件模块选择 5
    22 系统整体设计 8
    第三章 系统硬件电路设计 9
    31 stc89c52系统设计 9
    32 LCD12864液晶显示器电路设计 10
    33 AS608指纹识模块电路设计 12
    34 蜂鸣器电路设计 13
    35 电磁继电器电路设计 14
    36 整体电路设计图 15
    第四章 系统软件设计 16
    41 软件开发环境 16
    42 函数设计 16
    43 指纹通信设计 19
    44 LCD12864显示设计 21
    第五章 测试 22
    第六章 结 23
    参考文献 24
    致 谢 25
    附 录 26





    第章 引言

    11 前言
    着科技发展生活水提高现中国社会家庭物质财产十年质飞跃提高防盗意识提升锁具安全系数成务急传统机械锁构造简单已许久没技术更新导致安全系数降撬事件屡见鲜反观电子锁出现智时代势趋保密性高灵活性安全系数高智门锁算强行破门失窃情况配合智设备监控嫌疑生物特征进行采集期案件侦破重帮助
    回顾锁历史画卷锁中华文化中历史悠久锁历史远追溯中国五千年前仰韶文化时期时已锁诞生商周时期锁较文字记载春秋战国战争发诞生促机关术发展促锁技术发展发展速度说突飞猛进锁技术逐步发展出现诸青铜锁叶片锁弹子锁等机械结构锁具 目前常门锁便弹子锁叶片锁发展改进实叶片锁弹子锁技术早公元8世纪便出现通现代机械工业设计思想进行次技术提升结构升级然说现锁具门非常非常艺术熟知门锁解三类相信知道三类锁具设计师偷开锁匠成熟开锁匠开生活常锁具仅仅需分钟
    传统锁具脆弱实纯机械结构构成设计提高复杂度旧法避免锁锁间趋性目前锁具实未真正拥防盗智门锁兴起必然通生物特征数字加密做独二安全防护


    12 行业背景
    着科学技术进步物联网技术出现智硬件两年快速民众中遍技术进步降低智家居设备生成成越越家庭开始智化生活着科学技术进步门锁已传统铜制纯机械结构机械锁具发展出夹杂着现代电子科技类门锁甚脸解锁
    智门锁说智家居入门类产品重产品智门锁年发展说非常迅速行业断技术探索智门锁未越越明显发展趋势逐渐明朗两年间国家智门锁开始井喷式爆发 生物特征技术快速发展迅速提高智门锁安全级众生物特征认证技术中指纹认证说老牌生物特征认证技术稳定安全认证技术指纹识应场景银行取款道手机支付说指纹财产保护特征认证手段指纹识作广泛生物特征认证技术早已渗透进生活点点滴滴指纹生活中常种身份认证手段便IC卡认证水卡饭卡校卡身份证银行卡类IC卡开发款基指纹认证智门锁安全系数稳定性市场性十分明智选择

    13 设计特点
    设计旨设计款基stc89c52单片机集成指纹认证IC卡认证智密码锁设计stc89c52微控制处理器芯片作控采AS608指纹识模块IC卡认证模块组成安全认证系统通矩阵键盘输入电子密码设置指纹密码解锁IC认证两种解锁方式采LCD12864液晶进行显示交互反馈
    单片机微控制器MCU普通逻辑芯片相区基础计算机硬件系统集成片芯片具体包括数运算处理CPU机存储RAM读存储器ROMIO口中断务系统定时器计数器功说完整微型计算机单片机计算机相缺少许外部设备接口许高级功拓展正丰富拓展性定制性成智硬件应芯片块芯片稍加拓展成台基础计算机设备单片机体积质量轻价格十分便宜应开发提供许便利条件
    次设计基指纹IC卡楼宇门禁系统特点
    (1) 户通指纹认证者IC卡认证进行开门动作
    (2) 户输入理员密码进行添加删新户信息
    (3) 通矩阵键盘输入理密码
    (4) 进入理员界面修改理员密码
    (5) 密码输入错误会进入锁死状态然蜂鸣器警报开启


    第二章 系统设计

    21 硬件模块选择
    211 控芯片选择
    方案:STM32F103微控制处理器STM32F103微控制处理器芯片意法半导体生产设计STM32F系列基ARM32位微控制处理器芯片中低端微控制处理器市场F103系列中入门级微控制处理器芯片
    方案二:MSP430单片机MSP430微控制处理器德州仪器公司设计芯片具优点超低功耗超高信号处理力集成套精简指令集(RISC)常规单片机具备美国德州仪器公司特点处理芯片集成MSP430MSP430款具出色混合信号处理力MCU常规单片机相较 德州仪器(TI)公司针电信号处理实际需求MSP430里集成高精度模拟数字信号处理电路优良特点集成高效DSP处理器单片机微处理器集成MSP430单芯片提供单片机DSP优秀综合设计方案
    方案三:STC89C52RC单片机STC89C52RC微控制处理器芯片款8位单片机微控制处理器芯片STC公司设计STC89C52RC微控制处理器芯片MCS51指令架构核拥51优良传统特点超低功耗高性STC公司MCS51指令架构核做优秀改良升级STC89C52RC微控制处理器芯片继承老牌51单片机功优点51没创新功STC89C52RC置8KFlash足够存储般基数STC89C52RC性拥常规8 位CPUSTC89C52众嵌入式设计特控制类应设计频繁采
    方案分析:首先stm32f103c8t6款32位微控制处理器芯片32位结构说明具超高运算性设计控芯片需负担量数字运算选取更低成低数位MCU次MSP430单片机混合信号处理控制芯片通常MSP430常信号处理DSP居常控制领域适合作设计控芯片选定stc89c52rc作控芯片stc89c52作老牌单片机芯片具稳定低功耗8位性足胜设计指令处理工作
    212 键模块选择
    方案:矩阵键盘矩阵键盘单片机设计中常外部输入设备矩阵结构普通键样中断检测方法常矩阵键盘检测方法般扫描法常矩阵键盘般列线识通外接电阻接单片机芯片VCC口然行线接单片机芯片检测IO口
    方案二:电容式感应触摸键触摸键盘具扁化美观化特点键反馈传统键盘
    方案分析:设计采矩阵键盘作输入设备设计稳定性安全性高求电容式薄膜键盘会手指出汗手湿空气湿润等原导致误触矩阵键盘解决问题矩阵键盘键回弹力够更提供户反馈体验
    213 IC卡读写模块选择
    方案:型号MF RC522读写模块IC卡读写模块中发射低电压低成尺寸非接触读卡器芯片MF RC522读写模快1356MHz频段非接触场通信频带场通信模块具集成高端dsp处理力IC卡读卡器
    方案二:DK25L读写模块DK25L读写模块基1356MH2 高频卡读写模块 采UART 通讯接凵 兼容性 通性强户通UART 模块发送简单指令实现NFC 卡片进行读写操作 简单易 户该模块高效快速开发NFC 读写功产品
    方案分析:次设计IC卡模块选择更加成熟更加安全MF RC522体积更
    214 显示模块选择
    方案:液晶显示器型号LCD1602LCD1602电子设计中常显示器件显示字符图案液晶显示屏(LCD)驱动电路组成驱动电路般带少量电阻电容器件作显示屏稳定工作保障
    方案二:液晶显示器型号LCD12864LCD12864电子设计中常显示器件显示字符图案液晶显示屏(LCD)驱动电路组成驱动电路般带少量电阻电容器件作显示屏稳定工作保障LCD12864设计初带中文字库简单说LCD12864液晶显示屏宽128高64LCD液晶单元组成液晶点阵通通入电流点亮应lcd液晶单元绘制分辨率128*64图置字库灵活绘制出文字交互界面
    方案三:led数码led数码早接触显示器件7LED半导体发光元器件数字排列组成 8字型器件显示数字1234567890支持显示部分英文字母AEC等等
    方案四:LED机半导体显示器型号OLED12864OLED技术年科技发展新产物种优良显示材料OLED1286显示OLED面板驱动电路组成驱动电路般带少量电阻电容器件作显示屏稳定工作保障
    方案分析:选定LCD12864模块作设计显示反馈窗口首先智门锁交互显示字符元素繁数字中文英文等等种繁杂字符见LED数码显然适合设计LCD1602液晶显示器LCD12864液晶显示器选择显然LCD12864液晶显示器显示素更优势中文字符天然支持置中文字库反观LCD1602液晶显示器显示中文诸便显示两行字符OLED12864显示屏OLED作新显示技术然巧高密度高亮度等特点日光视性没传统LCD液晶显示oled烧屏通病智门锁需长时间工作烧屏影响LCD12864液晶显示器显示方案

    215 指纹模块选择
    方案:AS608 指纹识模块指采杭州晟元公司 AS608芯片进行指纹识信息处理集成供2次开发指纹模块基AS608芯片指纹模块控制电路控制协议样厂家性已
    方案二:正点原子ATK301电容式指纹模块
    方案分析:正点原子ATK301电容式指纹模块学指纹模块产品应着许限制相成熟AS608 指纹识模块讲稳定性安全性皆达标电容式指纹模块通病湿手出汗等法识选择AS608 指纹识模块
    216 数存储芯片选择
    方案:通单片机部EEPROM进行存储数STC89C52芯片置4KB EEPROM
    方案二:AT24C02数存储芯片
    方案分析:次设计需储存量数快速读写数作记录户标记置EEPROM足够需外置专数储存芯片

    22 系统整体设计
    通面模块选择述已准确设计框架设计采stc89c52微控制器芯片作次设计控芯片AS608 指纹识模块进行门锁生物特征采集识IC卡进行次身份认证手段然LCD12864液晶显示屏进行交互容显示信息反馈信息提醒通矩阵键盘进行户信息编辑修改交互输入设备
    指纹智门锁电stc89c52控芯片便会模块进行初始化初始化完成LCD12864便会显示交互页面通矩阵键盘交互界面进行切换进入模式进入理员模式输入理员密码正确增删户信息修改理密码指纹模块检测正确户指纹通电磁继电器开关闭模拟开门关门动作
    图21设计系统方案简图

    图21 系统方案


    第三章 系统硬件电路设计

    31 stc89c52系统设计
    STC89C52RC微控制处理器芯片款8位单片机微控制处理器芯片STC公司设计STC89C52RC微控制处理器芯片MCS51指令架构核拥51优良传统特点超低功耗高性STC公司MCS51指令架构核做优秀改良升级STC89C52RC微控制处理器芯片继承老牌51单片机功优点51没创新功
    单片机系统少电子元器件构建芯片外围电路芯片组成完整计算机硬件系统首先电子产品说电源供电电路电子设计首务设计微电子智产品电源选择5V直流电足够
    电源供完成单片机芯片工作需关重部件——晶振晶振晶体振荡器简称单片机需晶振产生规律震荡波形进行构建统系统运行机制
    次选晶振110592MHz110592MHz晶振产生9600波特率0误差
    晶振电路图31

    图31

    然单片机复位电路设计复位电路单片机恢复初始状态次设计两种复位方式电复位电时候电容电压突变电容RESET相连激活STC89C52芯片键手动复位手动键时候电路导通激活STC89C52芯片
    复位电路图32


    图32
    里STC89C52单片机系统搭建完毕完整系统电路图图33

    图33 STC89C52系统


    32 LCD12864液晶显示器电路设计
    LCD12864显示字符图案液晶显示屏(LCD)驱动电路组成驱动电路般带少量电阻电容器件作显示屏稳定工作保障LCD12864设计初带中文字库简单说LCD12864液晶显示屏宽128高64LCD液晶单元组成液晶点阵通通入电流点亮应LCD液晶单元绘制分辨率128*64图置字库灵活绘制出文字交互界面
    LCD12864液晶显示器置中文字库外通点阵绘制现实简图案分辨率128×64 指令操作十分简单快速构成全中文机交互图形界面
    图34LCD12864原理图

    图34 LCD12864原理图

    LCD12864引脚相关说明
    3~VO调节度相调节点显示出深浅然亮亮两种选择亮模式相调节点底亮
    4~RS1时候表示发送发送数0表示发送命令
    5~RW控制LCD12864读数(1)写数(0)控制LCD然里面写数(0)
    6~E信号
    17~RST复位脚
    DB0~DB7传输数字节八位 8线行
    详细参考表


    图35 LCD12864详细引脚图


    图36 LCD12864操作时序图


    33 AS608指纹识模块电路设计
    AS608 指纹识模块指采杭州晟元公司 AS608芯片进行指纹识信息处理集成供2次开发指纹模块驱动指纹模块格式发送指令数
    指令数包分三类:
    1包标识01 命令包
    2包标识02 数包续包
    3包标识08 数包结束包
    数包加包头:0xEF0

    矩阵键盘电路设计
    减少io口资源浪费次矩阵扫描方式进行设计
    图37

    1
    2
    3
    进入理
    4
    5
    6
    选择项
    7
    8
    9
    选择项
    退格
    0
    确定
    返回
    图37


    34 蜂鸣器电路设计
    选择电磁蜂鸣器5V源蜂鸣器蜂鸣器工作电流单片机法驱动样设计间接驱动蜂鸣器开关晶体图38蜂鸣器电路

    图38


    35 电磁继电器电路设计


    图39

    36 整体电路设计图

    图310


    第四章 系统软件设计

    41 软件开发环境
    软件开发环境选择keil5KeilIRA嵌入式单片机领域名IDE(集成开发环境)构建开发完善度开发体验超越许芯片厂商提供官方开发工具keil单片机开发必开发软件

    42 函数设计
    函数整系统父级函数功模块连接关系网节点
    次设计系统逻辑单片机电进入运行状态首先进行显示界面初始化然开串口通信读取存储空间中户信息然初始化指纹模块IC卡模块切初始化完成程序正式进入循环中通循环串联功模块通判断功模块返回信息进行功调串联部分关键代码详细循环逻辑结构参考图41
    *********************************************************
    函数名称void main()
    函数作函数
    参数说明
    *********************************************************
    void main()
    {
    uchar i
    akeycan()
    if(a1)
    {
    AT24C02_write_date(2000)
    AT24C02_write_date(2010)
    AT24C02_write_date(2020)
    }
    LCD12864_init() 初始化LCD12864
    UartInit() 串口初始化
    T2_init()
    low_mimaAT24C02_read_date(200) 读取存储AT24C02密码
    low_mimalow_mima*100+AT24C02_read_date(201)
    low_mimalow_mima*100+AT24C02_read_date(202)

    diaplay_mode0() 显示初始界面
    while(1)
    {
    i++
    akeycan() 矩阵键盘检测
    chuli() 矩阵键盘处理

    if(mode1)
    display_guanli()
    else
    if(mode2) 录入指纹
    {
    if(zhiwen_f1)
    cunchu() 录入指纹
    }
    else
    if(mode3) 注销指纹
    {
    if(zhiwen_f1)
    shanchu() 注销指纹
    }
    else
    if(mode0&&in_f0)正常解锁界面
    {
    if(i>150)
    {
    i0
    xunzhiwen()指纹解锁
    }

    }
    }
    }

    图41



    43 指纹通信设计
    指纹模块实独立单片机系统厂家提供固件处理指纹信息需做芯片厂商提供接口进行二次开发首先收集指纹信息载入模块中然新指纹信息进行终返回匹配结果结果匹配警告指纹错误匹配正确进行开门动作关键驱动代码详细代码见附录程序基逻辑结构参考图43
    ********************************************************
    函数名称void xunzhiwen()
    函数作查找指纹
    参数说明
    ********************************************************
    void xunzhiwen()
    {
    searchnumsearch() 搜索指纹
    if((searchnum>1&&searchnum {
    if(searchnum>1&&searchnum {
    temp[0]searchnum1000100+0x30
    temp[1]searchnum10010+0x30
    temp[2]searchnum10+0x30
    temp[3]' '
    LCD12864_display_string(32temp)显示卡号
    LCD12864_display_string(33指纹解锁)
    LCD12864_display_string(14 )
    in_mima0 清输入密码
    num0 清输入密码位数
    input_f0 清输入密码标志
    jdq0 开电磁锁
    T2_num0 开启重新开始计时
    TR21
    }
    else 正确指纹
    {
    LCD12864_display_string(33效指纹)
    didi(3) 报警三次
    }
    delay1ms(500) 延时动清显示容
    LCD12864_display_string(32 )
    LCD12864_display_string(33 )
    }
    }

    图43


    44 LCD12864显示设计
    交互界面面众化产品说缺重组成部分程序进行初始化操作显示界面进入欢迎界面界面切换组函数指令进行控制程序结构判断程序指令具体函数逻辑结构参考图44


    图44



    第五章 测试

    测试工具:KEIL5软件
    测试台:Windows10智指纹门锁系统硬件
    智指纹门锁系统软件KEIL5开发台软件进行编写编译固件通PL2303载器载51单片机中然进行智指纹门锁系统白盒测试验证功完整性观察智指纹门锁运行状态然进行反复修改调试程序终完善程序
    系统软件调试遇问题:
    (1)LCD12864显示出现花屏
    解决方法:首先检查LCD12864液晶显示屏接线否牢固否短路错接等问题果没问题检查LCD12864液晶显示屏驱动代码时序否错误否初始化进行显示数初始化果法排错误尝试更换块新LCD12864液晶显示屏


    第六章 结

    着科技发展生活水提高现中国社会家庭物质财产十年质飞跃提高防盗意识提升锁具安全系数成务急传统机械锁构造简单已许久没技术更新导致安全系数降撬事件屡见鲜反观电子锁出现智时代势趋保密性高灵活性安全系数高智门锁算强行破门失窃情况配合智设备监控嫌疑生物特征进行采集期案件侦破重帮助
    设计旨设计款基stc89c52单片机集成指纹认证IC卡认证智密码锁设计stc89c52微控制处理器芯片作控采指纹识模块IC卡认证模块组成安全认证系统通矩阵键盘输入电子密码设置指纹密码解锁IC认证两种解锁方式采LCD12864液晶进行显示交互反馈测试结果表明系统项功已达设计求
    次毕业设计实践中说获益良第次产品研发思维进行设计制作电子产品开始题目时候智门锁没少概念历漫长资料查询专业知识复终开始进行整体产品框架设计进行材料选择制作出简单雏形断测试中慢慢完善整智门锁
    次设计说次机遇次挑战次设计程中学东西电子工程师工作流程工作思维深刻理解通次实践增强动手力通实际工程设计解书知识实际应差实际应中遇问题需问题进行具体分析步步解决

    参考文献

    [1] 石文轩宋薇基单片机MCS51智密码锁设计[M]武汉工程职业技术学院学报2004(01)
    [2] 祖龙起刘仁杰种新型编程密码锁[J]连轻工业学院学报2002(01)
    [3] 叶启明单片机制作新型安全密码锁[J]家庭电子2005(10)
    [4] 李明喜新型存储柜锁设计[J]机电产品开发创新2004(03)
    [5] 董继成种新型安全单片机密码锁[J]电子技术2004(03)
    [6] 杨茂涛种存储柜锁实现[J]福建电脑2004(08)
    [7] 瞿贵荣实存储柜锁[J]家庭电子2000(07)
    [8] ATmegaATmega8L8AC2006(01)
    [9] Wireless World1998vol84No1509p69
    [10] 王千实电子电路全[M]电子工业出版社2001p101
    [11] 立民单片机应技术选编[M]北京:北京航空学出版社1998
    [12] 李华MCS51系列单片机接口技术[M]北京航空航天学出版社1993
    [13] 彭单片机典型系统设计实例精讲[M]北京:电子工业出版社2006
    [14] 潘永雄新编单片机原理应[M]西安:西安电子科技学出版社2003
    [15] 童诗白华成英模拟电子技术基础[M]北京:高等教育出版社2000
    [16] 阎石数字电子技术基础[M]北京:高等教育出版社1998
    [27] 樊昌信曹丽娜通信原理[M]北京:国防工业出版社2007
    [28] 李瀚荪电路分析基础[M]北京:高等教育出版社1991
    [19] 郭海英基单片机电子安全密码锁设计[M]现代电子技术2005(13)
    [20] 希杜煜实电子电路设计[M]北京:电子工业出版社1998
    [21] 康华光电子技术基础(第四版)[M]北京高等教育出版社1998
    [22] 俞睆卿智家居终端研究设计[D ]海交通学2008
    [23] 林旭东智家居系统相关技术发展趋势[J]创新科技导报2008656
    [24] 李方浅谈种智家居系统网络技术[J]计算机网络2006年5(2)98101
    [25] 陈文智嵌入式系统开发原理实践清华学出版社2005
    [26] 贾宗璞许合利C语言程序设计中国矿业学出版社2007
    [27] 谭浩强 C程序设计清华学出版社2005
    [28] 余发山王福忠单片机原理应技术中国矿业学出版社2008
    [29] 沈星星丛露微基ZigBee智家具控制系统文选粹2011第3期
    [30] 冯培昌周晓云陈孝伟线传感器网络探讨[J]电气动化2005年27(5)7375
    [31] 周健明江玲ZigBee网络层关键技术研究实现黄石理工学院学报200925


    致 谢
    文撰写程中李俊杰老师作指导老师治学严谨学识渊博视野广阔营造种良学术氛围置身间耳濡目染潜移默化仅接受全新思想观念树立明确学术目标领会基思考方式掌握通研究方法明白许接物处世道理严律宽崇高风范朴实华易格魅力微感深文关怀令沐春风倍感温馨正百忙中次审阅全文细节进行修改文撰写提供许中肯宝贵意见文成型
    特李俊杰老师致衷心谢意挑剔敬业精神严谨认真治学态度深厚专业修养易方式表示深深敬意


    附 录

    *************************************************************
    指纹密码锁

    补充说明:
    ***************************************************************
    #include 头文件
    #include
    #include
    #include
    #include
    #include

    #define uchar unsigned char 宏定义
    #define uint unsigned int
    #define ulong unsigned long

    ************************引脚定义************************
    sbit buzzP3^7 蜂鸣器
    sbit ledP0^0 LED灯

    ************************变量定义************************
    #define MAX 5 指纹数量
    #define ID_MAX 3输入ID位数

    uchar mode0 0正常解锁1理界面2注册模式3删模式4修改密码

    uchar mode_num0理界面选择项

    uint ID0 存储输入编号ID
    uchar n0 输入位数
    bit zhiwen_f0 1标记进入指纹采集

    uchar a 存储键值
    uchar num 记录输入密码位数
    bit in_f 输入密码标志
    bit reset_f 重设密码标志
    bit input_f 六位密码输完标志
    uchar reset_num 标记修改密码阶段1输入旧密码2输入新密码3次输入新密码

    ulong low_mima0系统密码
    ulong in_mima0 暂存输入密码
    ulong new_mima0暂存输入新密码

    uchar temp[5] \0存储显示容
    ********************************************************
    函数名称void delayms(uint ms)
    函数作毫秒延时函数
    参数说明
    ********************************************************
    void delayms(uint ms)
    {
    unsigned char i100j
    for(msms)
    {
    while(i)
    {
    j10
    while(j)
    }
    }
    }
    ********************************************************
    函数名称void didi(uchar i)
    函数作蜂鸣器鸣
    参数说明i鸣次数
    ********************************************************
    void didi(uchar i)
    {
    uchar j
    for(j0j {
    led0 开启LED蜂鸣器
    buzz0
    delayms(20)
    led1 关闭LED蜂鸣器
    buzz1
    delayms(15)
    }
    }
    ********************************************************
    函数名称void diaplay_mode0()
    函数作显示卡界面
    参数说明
    ********************************************************
    void diaplay_mode0()
    {
    LCD12864_display_string(11指纹密码锁)
    LCD12864_display_string(02编号 )
    LCD12864_display_string(03状态 )
    }
    ********************************************************
    函数名称void xunzhiwen()
    函数作查找指纹
    参数说明
    ********************************************************
    void xunzhiwen()
    {
    searchnumsearch() 搜索指纹
    if((searchnum>1&&searchnum {
    if(searchnum>1&&searchnum {
    temp[0]searchnum1000100+0x30
    temp[1]searchnum10010+0x30
    temp[2]searchnum10+0x30
    temp[3]' '
    LCD12864_display_string(32temp)显示卡号
    LCD12864_display_string(33指纹解锁)
    LCD12864_display_string(14 )
    in_mima0 清输入密码
    num0 清输入密码位数
    input_f0 清输入密码标志
    jdq0 开电磁锁
    T2_num0 开启重新开始计时
    TR21
    }
    else 正确指纹
    {
    LCD12864_display_string(33效指纹)
    didi(3) 报警三次
    }
    delay1ms(500) 延时动清显示容
    LCD12864_display_string(32 )
    LCD12864_display_string(33 )
    }
    }

    ********************************************************
    函数名称void cunchu()
    函数作存储指纹
    参数说明
    ********************************************************
    void cunchu()
    {
    LCD12864_display_string(03状态 )

    if(ID>0&&ID {
    if(enroll()1)采集两次生成1指纹模板成功
    {
    if(savefingure(ID)1)保存指纹成功
    {
    LCD12864_display_string(33录入成功)
    }
    else 保存指纹失败
    LCD12864_display_string(33存储失败)
    }
    else 采集指纹失败
    LCD12864_display_string(33采集失败)
    }
    else 输入指纹编号错误
    LCD12864_display_string(33编号错误)

    n0 清输入编号位数
    ID0 清输入编号
    zhiwen_f0关闭指纹采集
    }
    ********************************************************
    函数名称void shanchu()
    函数作删指纹
    参数说明
    ********************************************************
    void shanchu()
    {
    LCD12864_display_string(03状态 )
    if(ID>0&&ID {
    if(dellfingure(ID)1)删指纹成功
    {
    LCD12864_display_string(33删成功)
    }
    else 删指纹失败
    LCD12864_display_string(33删失败)
    }
    else
    {
    if(ID999) 果输入999表示清空指纹
    {
    if(Clear_All()1)清空指纹成功
    LCD12864_display_string(33清空指纹)
    else 清空指纹失败
    LCD12864_display_string(33清空失败)
    }
    else 输入错误编号
    LCD12864_display_string(33编号错误)
    }

    n0 清输入编号位数
    ID0 清输入编号
    zhiwen_f0关闭指纹采集
    }

    ********************************************************
    函数名称void display_guanli()
    函数作显示理界面
    参数说明
    ********************************************************
    void display_guanli()
    {
    LCD12864_display_string(01 理系统界面 )
    LCD12864_display_string(02 录入指纹 )
    LCD12864_display_string(03 删指纹 )
    LCD12864_display_string(04 修改密码 )
    switch(mode_num)
    {
    case 0 LCD12864_display_string(02 >> ) break
    case 1 LCD12864_display_string(03 >> ) break
    case 2 LCD12864_display_string(04 >> ) break
    default break
    }
    }
    *********************************************************
    函数名称void chuli()
    函数作键进行处理
    参数说明
    *********************************************************
    void chuli()
    {
    if(key_f1) 先判断否键
    {
    if((mode2||mode3)&&a<10)果输入ID状态数字键
    {
    if(n {
    if(n0)判断编号第1位
    {
    LCD12864_display_string(32 )
    LCD12864_display_string(03 )
    }
    LCD12864_display_char(3+n2a+0x30)显示出输入数字 ASCII[a]

    IDID*10+a编号计算
    n++ 编号输入位数+1
    }
    }

    if((mode0||mode4)&&input_f0&&a<10)果in_f1(输入密码状态)数字键
    {
    if(in_f1||mode4)
    {
    if(num0) 清显示显示输入新密码
    LCD12864_display_string(13 )
    if(reset_f1&&reset_num>1) 重置密码时候输入新密码阶段
    LCD12864_display_char(num+12a+0x30)显示输入数字
    else 情况输入密码显示*
    LCD12864_display_char(num+12'*') 显示*
    }
    else
    LCD12864_display_char(num+14'*')显示*
    in_mimain_mima*10+a读入密码
    num++ 密码输入次数加
    if(num6) 六位密码输入完成
    input_f1 标记六位密码输入完成
    }

    if(a10) 进入理界面
    {
    if(mode0&&in_f0) 输入密码
    {
    num0 重置输入密码
    in_f1
    in_mima0
    input_f0 清密码输入完成标志
    write_com(0x01) 清显示
    LCD12864_display_string(01请输入理密码 )显示输入密码
    }
    }
    if(a15) 返回级菜单
    {
    if(mode>1) 理操作中
    {
    reset_f0
    reset_num0
    write_com(0x01) 清显示
    LCD12864_clear12864()
    mode1 回理选择界面
    }
    else 非理界面
    {
    if(mode0||in_f1)果输入密码阶段
    {
    write_com(0x01)清显示
    mode0
    diaplay_mode0()显示界面
    in_f0
    num0
    input_f0 清密码输入完成标志
    }
    }

    if(jdq0) 果电磁锁开该键手动关门
    {
    jdq1 关闭继电器
    T2_num0 清计时
    TR20
    }
    }

    if(a11) 选择项
    {
    if(mode1)选择项理
    {
    if(mode_num0)
    mode_num2
    else
    mode_num
    }
    }
    if(a12) 选择项
    {
    if(mode1)选择项理
    {
    if(mode_num>2)
    mode_num0
    else
    mode_num++
    }
    }
    if(a13) 退格
    {
    if(mode0||mode4)输入密码状态
    {
    if(num0)
    {
    num输入密码数减1
    if(in_f1||mode4)
    LCD12864_display_char(num+12' ')
    else
    LCD12864_display_char(num+14' ')

    in_mimain_mima10
    input_f0
    }
    }
    if(mode2||mode3)ID编号输入状态
    {
    if(n0)
    {
    LCD12864_display_char(2+n2' ')
    n
    IDID10
    zhiwen_f0
    }
    }
    }

    if(a14)确定
    {
    if(mode1) 确定选择理操作
    {
    write_com(0x01)清显示
    modemode_num+2
    n0
    ID0
    zhiwen_f0
    input_f0 清确定标志
    num0
    in_mima0
    new_mima0
    switch(mode_num)
    {
    case 0
    LCD12864_display_string(01>> 录入指纹)
    LCD12864_display_string(02编号 )
    break
    case 1
    LCD12864_display_string(01>> 删指纹)
    LCD12864_display_string(02编号 )
    break
    case 2
    reset_f1
    reset_num1
    LCD12864_display_string(01请输入旧密码 )
    break
    default break
    }
    }
    else
    {
    if(input_f1)密码输入完成确定
    {
    if(reset_f1) 修改密码区间
    {
    if(reset_num3)次输入新密码
    {
    if(new_mimain_mima)两次输入新密码致
    {
    low_mimanew_mima
    AT24C02_write_date(200low_mima10000)
    AT24C02_write_date(201low_mima10000100)
    AT24C02_write_date(202low_mima100)
    write_com(0x01)
    LCD12864_display_string(11密码修改成功)
    LCD12864_display_string(13请妥善保)
    }
    else
    {
    LCD12864_display_string(13密码修改失败)
    }
    reset_num0
    reset_f0
    }
    if(reset_num2)输入新密码
    {
    write_com(0x01)
    LCD12864_display_string(01请次输入新密码)
    new_mimain_mima
    reset_num++
    }
    if(reset_num1)输入旧密码
    {
    if(low_mimain_mima)输入密码旧密码致
    {
    write_com(0x01)
    reset_num++
    LCD12864_display_string(01请输入新密码 )显示输入新密码
    }
    else
    {
    LCD12864_display_string(23密码错误) 显示密码错误
    reset_num1
    LCD12864_display_string(12 )
    }
    }
    }
    if(in_f1) 进入理输入密码时候
    {
    if(low_mimain_mima)输入密码正确
    {
    mode1
    write_com(0x01)
    in_f0
    }
    else
    {
    LCD12864_display_string(23密码错误) 显示密码错误
    LCD12864_display_string(12 )
    }
    }

    if(mode0&&in_f0)
    {
    if(low_mimain_mima)输入密码正确
    {
    LCD12864_display_string(33解锁成功)
    jdq0
    T2_num0
    TR21
    }
    else
    {
    LCD12864_display_string(33密码错误) 显示密码错误
    didi(3)
    }

    LCD12864_display_string(14 )
    delay1ms(500)
    LCD12864_display_string(33 )
    }
    in_mima0
    num0 清密码计数重新计算输入密码数
    input_f0 清确定标志
    }

    if((mode2||mode3)&&nID_MAX)注册删指纹时编号输入完成开启指纹检测
    {
    zhiwen_f1
    }
    }
    }
    key_f0 清键标志
    }
    }
    *********************************************************
    函数名称void main()
    函数作函数
    参数说明
    *********************************************************
    void main()
    {
    uchar i
    akeycan()
    if(a1)
    {
    AT24C02_write_date(2000)
    AT24C02_write_date(2010)
    AT24C02_write_date(2020)
    }
    LCD12864_init() 初始化LCD12864
    UartInit() 串口初始化
    T2_init()
    low_mimaAT24C02_read_date(200) 读取存储AT24C02密码
    low_mimalow_mima*100+AT24C02_read_date(201)
    low_mimalow_mima*100+AT24C02_read_date(202)

    diaplay_mode0() 显示初始界面
    while(1)
    {
    i++
    akeycan() 矩阵键盘检测
    chuli() 矩阵键盘处理

    if(mode1)
    display_guanli()
    else
    if(mode2) 录入指纹
    {
    if(zhiwen_f1)
    cunchu() 录入指纹
    }
    else
    if(mode3) 注销指纹
    {
    if(zhiwen_f1)
    shanchu() 注销指纹
    }
    else
    if(mode0&&in_f0)正常解锁界面
    {
    if(i>150)
    {
    i0
    xunzhiwen()指纹解锁
    }

    }
    }
    }
    文档香网(httpswwwxiangdangnet)户传

    《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
    该内容是文档的文本内容,更好的格式请下载文档

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 50 香币 [ 分享文档获得香币 ]

    下载文档

    相关文档

    电子信息工程基于单片机的隐形指纹识别系统

    (基于单片机的隐形指纹识别系统)(An invisible fingerprint identification system based on single chip microcomput...

    1年前   
    239    0

    电子信息工程基于单片机的指纹密码锁设计与实现

    基于单片机的指纹密码锁设计与实现 Design and implementation of fingerpri...

    1年前   
    269    0

    电子信息工程基于视频导航的智能车系统的设计与实现

     基于视频导航的智能车系统的设计与实现 ...

    1年前   
    291    0

    基于RFID的家庭智能门禁管理系统设计与实现

    根据培养高级技术实用人才这一目标的要求,选题从实际情况出发,选取适合于高职学生要达到的实际能力和水平,培养学生综合运用所学的知识与技能分析与解决问题的能力,并巩固和扩大学生的课堂知识与实际岗位技...

    5年前   
    2689    0

    IC卡读写系统的单片机实现毕业设计

     XX 大 学 网 络 教 育 学 院 专科毕业论文 题目:IC卡读写系统的单片机实现 完成期限:20XX年1月8日 至 20XX年4月20日 ...

    5年前   
    1066    0

    智能IC卡水表控制系统设计

    题 目 _智能IC卡水表控制系统设计_摘要一直以来,自来水用户的用水量依靠人工进行抄表的管理模式,它是由收费人员进到各家各户去收费或指派用户到指定地点自行缴纳。这种传统收取水费的方式不仅...

    7个月前   
    154    0

    公司开展IC卡系统培训工作

    公司开展IC卡系统培训工作  为加快基层各IC卡网点对升级后加油卡系统的熟悉运用,提高IC卡操作人员的业务水平。7月4日、5日,公司举办为期两天的IC卡系统操作培训班,各IC卡网点操作人员共...

    10年前   
    9006    0

    联营合作协议(适用于指纹识别门禁系统产品)

    联营合作协议(适用于指纹识别门禁系统产品)  甲方:××科技发展有限公司  住所地:  法定代表人:  联系电话:    乙方:××电子信息技术有限公司  住所地:  法定代表人:  联系电话...

    8年前   
    473    0

    楼宇自控系统设计方案

    楼宇自控系统设计方案XX工程公司年月日目 录一、 概述二、 设计依据三、 设计原则四、 系统设计描述五、 TAC楼宇自控系统产品介绍楼宇自控系统设计说明一、概述当今,世界各地的大厦管理部门为...

    1年前   
    235    0

    楼宇自动化系统设计方案regin

    第1章 楼宇自动化系统1.1. 概述楼宇自动化系统作为智能建筑内非常重要的局部,担负着对整座建筑内机电设备的集中监测与控制,保证所有设备的正常运行,并到达最正确状态。同时,在计算机软件的...

    2年前   
    401    0

    电子信息工程基于单片机和蓝牙APP的环境温湿度监测系统设计与实现

    基于单片机和蓝牙APP的环境温湿度监测系统设计与实现 内容摘要根据家庭生活和工业生产的需要,结合国内外研究现状,进行相关调研。利用嵌入式微控制器技术,传感器技术和无线蓝牙传输技术,设计了一...

    1年前   
    324    0

    银行金融IC卡系统建设实施方案

    **银行金融IC卡系统建设实施方案  根据中国人民银行《中国人民银行关于推进金融IC卡应用工作的意见》及《关于选择部分城市开展金融IC卡在公共服务领域中应用工作的通知》要求,我行拟于近期启动...

    11年前   
    10129    0

    电子现金IC卡应用解决方案-一卡通系统解决方案

    电子现金IC卡应用解决方案-一卡通系统解决方案  随着社会的进步和科技的发展,IC卡因其安全、方便的特点深受各方人士的青睐。从IC电话卡到IC社保卡、IC公交卡,IC卡各种应用发展迅速,尤其在...

    12年前   
    746    0

    智能电梯IC卡管理系统购销合同(范本)

    智能电梯IC卡管理系统购销合同 购货单位(以下简称甲方): 邢台大器机械制造有限公司 供货单位(以下简称乙方): ...

    3年前   
    552    0

    向IC卡系统集成业务投资的可行性

    向IC卡系统集成业务投资的可行性本文就向金融类、GSM、电话卡类以外的IC卡系统集成业务投资的可行性作简单的论述IC卡的分类IC卡是一块嵌有集成电路芯片的塑料卡,尺码与信用卡相同。      ...

    9年前   
    519    0

    门禁卡使用管理规定

    门禁卡使用管理规定第一部分、工作证工作证是证明员工身份的有效证件,也是体现公司整体形象的标志,为进一步规范员工佩带工作证的管理,并促使全体员工养成自觉守纪的良好习惯,特制定本规定。第一条 工作...

    2年前   
    716    0

    小区门禁卡管理规定

    小区门禁卡管理规定1、业主本人及其直系亲属居住本大厦,免费卡二房送二张,三房送三张。如需申领的IC卡数量超出以上的部分,每张收___元工本费。公司购房、业主购房用作办公或员工居住的,申领IC卡...

    2年前   
    1138    0

    门禁卡管理规定

    门禁卡管理规定一、目的:为规范公司门禁卡管理,保障公司正常工作秩序,特制定此规定。二、适用范围:集团本部正式员工。三、具体规定:1、管理职责:办公室主要负责门禁卡办理、登记、退卡等工作。2、门...

    2年前   
    1026    0

    门禁管理系统方案

    门禁管理系统方案目录1 概述 22 选型依据 23 系统遵循的主要技术指标及规范 34 设计原则 45 门禁系统组成 55.1 中央门禁管理系统组成 75.2 就地级设备组成 75.3 传输网...

    3年前   
    667    0

    门禁系统安装报道

    门禁系统安装报道 红五月社区内未拆迁区块毗邻艮山东路和杭海路,街巷四通八达,人员复杂,治安隐患多,管理难度大。每户基本出租外来人口,人员进出比较多,公共门有的已残旧不堪,有的根本不锁,已起不...

    10年前   
    10543    0

    文档贡献者

    平***苏

    贡献于2023-03-14

    下载需要 50 香币 [香币充值 ]
    亲,您也可以通过 分享原创文档 来获得香币奖励!
    下载文档

    该用户的其他文档