摘要
为实现门禁与电子考勤的功能,本文采用了基于ARM11 的指纹识别门禁与电子考勤系统的软硬件设计,提出了指纹获取、指纹识别处理、指纹匹配等方法,对门禁系统和电子考勤系统的硬件结构和软件程序做了相应设计。根据不同形式的门对门禁系统的安装要求,对电控锁进行了相应的选型。按照不同部门的工作时间的差别,对考勤方式和考勤时间也做了相应的设置。其中,硬件方面主要采用了三星公司的基于ARM11内核的S3C10处理器,和富士通公司的MBF200指纹传感器;软件设计包括了系统上电初始化、指纹识别处理、电控锁控制等部分以及Linux操作系统的移植和驱动的编写等。试验结果表明,该系统具有准确性高、识别快的优点,而且易于二次开发和功能扩展。
关键词:ARM11,门禁系统,指纹识别,电子考勤
I
河南城建学院本科毕业设计(论文) Abstract
Abstract
In order to access electronic time and attendance functions.In this paper, the hardware and software design based on the ARM11 fingerprint access control and electronic time and attendance system. Fingerprint acquisition, fingerprint processing, fingerprint matching, access control systems and electronic time and attendance system hardware and software programs to do the appropriate design. According to the different forms of door access control system installation requirements, the appropriate selection of electronically controlled lock. In accordance with the difference of the different departments working hours, attendance mode and attendance time to do the appropriate settings. Among them, the hardware uses a Samsung S3C10 processor based on the ARM11 core, and Fujitsu MBF200 fingerprint sensor; The software design includes a system power-up initialization, fingerprint processing, electronic control lock control transplant of part of the Linux operating system and driver preparation. The results show that the system has advantages of high accuracy and fast identification and easy secondary development and extension.
Key words:ARM11, Access Control System, Fingerprint Identification, Electronic Attendance
II
河南城建学院本科毕业设计(论文) 目录
目录
摘要 ................................................................................................................................... I Abstract .............................................................................................................................II 1.绪论 ............................................................................................................................... 1
1.1研究背景 ............................................................................................................ 1 1.2研究内容 ............................................................................................................ 1 1.3意义 .................................................................................................................... 2 2.基于指纹识别技术的门禁考勤系统设计 ................................................................... 3
2.1指纹识别技术 .................................................................................................... 3 2.2系统概述 ............................................................................................................ 4
2.2.1门禁考勤系统的概念 ............................................................................. 4 2.2.2门禁考勤系统的工作原理 ..................................................................... 4 2.2.3系统的结构及组成 ................................................................................. 5 2.2.4门禁考勤系统的功能 ............................................................................. 5 2.3门禁考勤系统的设计方案 ................................................................................ 5 2.4门禁考勤系统的特点及功能 ............................................................................ 6 3门禁系统硬件设计 ....................................................................................................... 7
3.1门禁控制器简介及功能 .................................................................................... 7
3.1.1指纹门禁控制器的主要功能包括: ..................................................... 7 3.1.2门禁控制器的指纹识别电路 ................................................................. 7 3.2主控模块设计 .................................................................................................... 8
3.2.1 S3C10简介 ......................................................................................... 8 3.2.2 NAND FLASH单元 ............................................................................... 8 3.2.3 DRAM单元 .......................................................................................... 10 3.2.4 RS232串口单元 ................................................................................... 11 3.3显示器接口模块设计 ...................................................................................... 12 3.4通信接口模块设计 .......................................................................................... 12 3.5指纹识别模块设计 .......................................................................................... 12 3.6语音报警模块设计 .......................................................................................... 14 3.7.不同形式的门对门禁系统的安装要求: ...................................................... 14
3.7.1单开木门 ............................................................................................... 15 3.7.2双开木门、单开玻璃门及双开玻璃门 ............................................... 15 3.7.3防火门、铁门 ....................................................................................... 15
III
河南城建学院本科毕业设计(论文) 目录
3.7.4、上下无框玻璃门 ................................................................................ 16 3.8看门狗电路设计 .............................................................................................. 16 4.系统设计 ..................................................................................................... 18
4.1考勤管理人员 .................................................................................................. 18 4.2考勤签到人员 .................................................................................................. 18 4.2考勤管理端功能设计 ...................................................................................... 19
4.2.1部门人员信息 ....................................................................................... 19 4.2.2节假日安排 ........................................................................................... 19 4.2.3考勤方案 ............................................................................................... 20 4.2.4 考勤调整 .............................................................................................. 22 4.2.5补签 ....................................................................................................... 22 4.2.6数据整理 ............................................................................................... 22 4.2.7考勤管理 ............................................................................................... 23 4.2.8考勤报表 ............................................................................................... 23 4.2.9 统计分析 .............................................................................................. 23 4.3考勤签到端功能设计 ...................................................................................... 24 4.4系统安装 .......................................................................................................... 25 4.5系统安装与运行设计 ...................................................................................... 25
4.5.1系统安装设计 ....................................................................................... 25
5.系统软件设计 ............................................................................................................. 27
5.1控制器的主程序设计 ...................................................................................... 27 5.2指纹采集流程 .................................................................................................. 28 5.3中断程序 .......................................................................................................... 30 5.4相关程序 .......................................................................................................... 30
5.4.1 NAND FLASH 的写入 ........................................................................ 30 5.4.2看门狗 ................................................................................................... 35 5.4.3中断程序 ............................................................................................... 36
结论 ................................................................................................................................ 38 参考文献 ........................................................................................................................ 39 致谢 ................................................................................................................................ 40
IV
河南城建学院本科毕业设计(论文)
1绪论
1绪论
1.1研究背景
现代门禁考勤系统是一种随着电子技术和计算机技术的发展而迅速发展起来的安防系统。一套现代化的、功能齐全的门禁考勤系统,不仅可以用于进出口控制,而且有助于单位内部的有序化管理。
近几年随着生物识别技术的发展,门禁系统也得到了飞跃式的发展,出现了指纹、虹膜、面部等生物特征识别技术的门禁系统。基于生物特征的门禁系统具有安全、方便、易管理的特点,使得门禁系统的应用越来越广。
在众多采用生物识别技术的门禁系统中,指纹门禁系统是目前国际公认的应用最广泛,价格最低廉、易用性最高的智能门禁系统。相对于传统的机械锁和密码锁控制,具有密码不可复制,具有极高的安全性;相对于卡片式感应门禁系统,不需要携带任何有效的出入凭证,具有方便快捷的特点;相对于掌形仪 、脸形仪、虹膜识别等同样基于生物特征的门禁系统,成本投入较低、取证方便。
基于指纹识别的门禁系统在企业生产和日常生活中都有了一些实际应用。但由于当前市面上基于指纹识别技术的门禁系统,还存在一些缺点,例如价格较为昂贵、识别率和效率都有待提高、存储用户指纹数量有限等,也导致了指纹门禁系统的推广受限。特别是绝大部分产品都是针对单个门禁控制器的管理,对于联网的智能门禁管理研究和应用较少,没有一套完善、成熟的解决方案。
智能门禁控制系统是当前门禁控制系统的重要发展方向。智能型门禁系统是一种基于计算机网络的门禁系统,它是通过TCP/IP协议和有线或者无线网络连接众多的门禁控制器,一方面可以实现管理中心对所有控制端点的状态监控和远程出入控制,另一方面也便于形成出入的历史记录,便于单位内部的有序化管理。
1.2研究内容
本论文是在以ARMS3C10为核心的嵌入式系统基础上,设计开发的基于指纹识别的TCP/IP门禁控制系统。研究内容主要由ARM门禁控制器的硬件实现和网络连接两个部分组成。
本文的研究内容主要有以下几个方面:
系统的整体方案概述和设计:根据任务书和系统功能要求,设计指纹识别门禁系统。
系统工作平台的搭建交叉编译环境的建立、移植启动引导程序VIVI、制作
1
河南城建学院本科毕业设计(论文)
1绪论
CRAMFS根文件系统和JFFS2文件系统、移植嵌入式操作系统Linux以及系统所需相关设备驱动的移植。
系统软件总体设计:阐述了门禁控制系统软件的总体设计,然后对各模块进行应用编程,主要包括指纹采集以及TCP/IP网络应用编程。 最后,对本课题设计的全文进行总结。
1.3意义
联网型指纹门禁与电子考勤系统的使用具有以下意义:
树立企业的规范化管理形象,提高管理档次,同时规范化内部的管理。一个指纹可以代替所有的大门钥匙,且具有不同的通过权限,即授权进入其职责范围内可以进入的门。并且所有的进出情况在电脑里都有记录,便于对员工进行考勤和针对具体事情的发生时间进行查询,落实责任。
可以将不受欢迎的人员拒之门外,例如可以杜绝推销、保险等行业的业务员在未经许可的情况下擅自闯入办公室,干扰正常的办公秩序。同行的竞争者不能轻易地进入办公或开发场所顺手拿走业务资料或核心技术资料。
与感应卡控制系统相比,避免了员工因感应卡遗失而不能顺利出入,或其他人捡到了该感应卡而进入公司。对于辞职或开除、离开的人员,可对其指纹采用禁用的方式,该员工以后都无法进入公司进行窃取或破坏等报复活动,保证了办公楼内部的安全性。
可以实时监控门的状态和授权人的出入状况,对外部人员和内部人员的进出真正做到了严格的管理,既可分类、分权限控制人员的进出,也可以分时、限时控制人员的进出。
2
河南城建学院本科毕业设计(论文)
2基于指纹识别技术的门禁考勤系统设计
2基于指纹识别技术的门禁考勤系统设计
2.1指纹识别技术
指纹识别技术是根据每个人指纹的皮肤纹路在图案、断点和交叉点上各不相同,呈现唯一性且终生不变,把一个人同他的指纹对应起来,通过将他的指纹和预先保存的指纹数据进行比较,以达到验证他的真实身份目的。
指纹识别主要根据人体指纹的纹路、细节特征等信息对操作或被操作者进行身份鉴定,得益于现代电子集成制造技术和快速而可靠的算法研究,已经开始走入我们的日常生活,成为目前生物检测学中研究最深入,应用最广泛,发展最成熟的技术。
局部特征是指指纹上节点的特征,这些具有某种特征的节点称为细节特征或特征点。两枚指纹经常会具有相同的总体特征,但它们的细节特征,却不可能完全相同。指纹纹路并不是连续的、平滑笔直的,而是经常出现中断、分叉或转折。这些断点、分叉点和转折点就称为\"特征点\",就是这些特征点提供了指纹唯一性的确认信息,其中最典型的是终结点和分叉点,其他还包括分歧点、孤立点、环点、短纹等。特征点的参数包括:方向(节点可以朝着一定的方向)、曲率(描述纹路方向改变的速度)、位置(节点的位置通过x/y坐标来描述,可以是绝对的,也可以是相对于三角点或特征点的)。
一个高质量的图像被拾取后,需要许多步骤将它的特征转换到一个复合的模板中,这个过程,被称为特征拾取过程,它是手指扫描技术的核心。当一个高质量的图像被拾取后,它必须被转换成一个有用的格式。如果图像是灰度图像,相对较浅的部分会被删除,而相对较深的部分被变成了黑色。脊的像素有5~8个被缩细到一个像素,这样就能精确定位脊断点和分岔了。微小细节的图像便来自于这个经过处理的图像。在这一点上,即便是十分精细的图像也存在着变形细节和错误细节,这些变形和错误细节都要被滤除。
指纹识别技术主要涉及四个功能:读取指纹图像、提取特征、保存数据和比对。在一开始,通过指纹读取设备读取到人体指纹的图像,取到指纹图像之后,要对原始图像进行初步的处理,使之更清晰。接下来,指纹辨识软件建立指纹的数字表示——特征数据,一种单方向的转换,可以从指纹转换成特征数据但不能从特征数据转换成为指纹,而两枚不同的指纹不会产生相同的特征数据。有的算法把节点和方向信息组合产生了更多的数据,这些方向信息表明了各个节点之间的关系,也有的算法还处理整幅指纹图像。总之,这些数据,通常称为模板,保存为1K大小的记录。无论它们是怎样组成的,至今仍然没有一种模板的标准,
3
河南城建学院本科毕业设计(论文)
2基于指纹识别技术的门禁考勤系统设计
也没有一种公布的抽象算法,而是各个厂商自行其是。 最后,通过计算机模糊比较的方法,把两个指纹的模板进行比较,计算出它们的相似程度,最终得到两个指纹的匹配结果。
指纹识别技术的优点有:指纹是人体独一无二的特征,并且它们的复杂度足以提供用于鉴别的特征;如果要增加可靠性,只需登记更多的指纹、鉴别更多的手指,最多可以多达十个,而每一个指纹都是独一无二的;扫描指纹的速度很快,使用非常方便;读取指纹时,用户必需将手指与指纹采集头相互接触,与指纹采集头直接;接触是读取人体生物特征最可靠的方法;指纹采集头可以更加小型化,并且价格会更加的低廉。
2.2系统概述
2.2.1门禁考勤系统的概念
门禁考勤系统有门禁控制器、指纹识别器、通讯转换器、门禁考勤软件和电子门锁组成。授权人只要将手指接触的识别装置,识别器就能感应到指纹信息,并将信息发送的主机,主机对指纹的合法性进行检查,然后决定是否进行开门动作。
2.2.2门禁考勤系统的工作原理
门禁系统的工作原理:门禁控制的主要目的是对重要的通行口、出入口通道等进行出入监视和控制。该系统可以控制人员的出入,还能控制人员在相关区域的行动。对已授权的人员,凭有效的指纹允许其进入;对未授权的人员,将拒绝其入内。系统利用指纹的唯一性和稳定性,通过把一个现场采集到的指纹与控制器的数据库中的一个已经登记的指纹进行一对一的比对,当有人通过控制系统的管制通道时,指纹识别机将指纹信息读入,并将这些信息通过数据传输线路传到门禁主机。门禁主机将收到的指纹信息与数据库中预存的信息进行比较,如果符合预先设置的通行条件,门禁主机将向执行器发出开锁命令,允许其通过;如果不符合通行条件门禁主机将不发出开锁命令,不允许其通行。遇到非法入侵等情况,门禁主机会自动报警。
考勤系统的工作原理:利用系统每次指纹识别(无论是否发出开锁指令)记录,根据用户自行设置的考勤规则、考勤部门、考勤班次及加班设置等规则,系统按照上班时间段的初次读卡记录,下班时间段的末次读卡记录作为考勤原则,自动分析、整理持卡人的考勤记录,生成考勤日报和考勤月报,并打印出考勤报表,供管理者参考。
4
河南城建学院本科毕业设计(论文)
2基于指纹识别技术的门禁考勤系统设计
2.2.3系统的结构及组成
如图2.1所示,是系统的硬件控制系统框图。可以看出,系统的硬件控制由S3C10处理器,指纹采集器,电源,时钟,电控锁,LCD显示器等组成。
USB接口 电源 时钟 DMA控制器 MBA200 JTAG接口 以太网 RS232接口 电控锁 LCD S3C10 LCD控制器 USB接口 MB FLASH 扩展SD卡 图2.1 硬件控制系统框图
2.2.4门禁考勤系统的功能
①管理各类进入人员并制作相应的通行证,设置各种进出的权限。 ②对某时间段出入的人员或某人的出入情况实时统计、查询和打印。 ③在特殊情况下,可以使用上位机命令开门。
④凭有效的卡片,密码和特征,根据其进出权限允许进入或拒绝进入,属于非法入侵者将报警。
⑤系统的控制器可以通过总线的方式与控制中心连接,记录所有合法进入人员的信息,包括人员的姓名,职务,进入时间和出门时间等。
⑥方便管理者对员工考勤情况进行快速、方便和智能地管理。
2.3门禁考勤系统的设计方案
门禁考勤系统的设计目标是,设计一种具有对人员进出授权、记录、查询和统计等多种功能,还可以作为人事管理、考勤管理等使用,可与其他机电设备产品及控制系统配合使用的智能门禁系统。本门禁系统既能方便内部人员的自由出入,又能杜绝外来人员随意进出,提高安全防范能力。以下(如图2.2所示)是本设计的指纹门禁系统的单机应用框图:
5
河南城建学院本科毕业设计(论文)
2基于指纹识别技术的门禁考勤系统设计
图2.2 单机应用的框图
2.4门禁考勤系统的特点及功能
①可以通过系统打开某个门。
②员工的指纹经指纹采集器采集后,经系统确认才可以开锁,并允许通行。③系统实时显示当前所有门的进出情况。 ④建立用户的等级权限,以便于实行多级管理。
⑤系统对设备进行实时监控,以便于设备维护人员对设备的故障进行及时维修。
⑥可以管理和查询员工的信息,自动生成考勤表,可以按公司、部门、个人进行考勤统计、分析、报表,供管理人员分析迟到的主要原因,分析迟到的人员分布,季节分布,,以便于供加强管理等作为参考。
6
河南城建学院本科毕业设计(论文)
3门禁系统硬件设计
3门禁系统硬件设计
本系统的硬件平台主要包括电源、指纹采集处理、微处理器处理、串口通信等。
3.1门禁控制器简介及功能
控制器是门禁考勤系统的核心,它是由一台微处理机以及相应的外围电路组成的。在指纹门禁系统中,由它来辨别是否为本系统已注册的有效指纹,该指纹是否符合所限定的时间段,从而控制电磁锁是否打开。控制器可控制多个门。门控部分主要以集中控制器为中心,向上通过TCP/IP协议连接到管理中心,向下则通过RS232转换器进入RS232总线,采用令牌方式对各个门进行数据采集,并进行数据处理后,发往管理中心。
3.1.1指纹门禁控制器的主要功能包括:
①运用指纹进行初入人员记录 ②声音信息及报警提示 ③具有通信接口与上位机连接 ④与上位机通信接口是RS232
⑤上位机开机时,可以实时处理各子系统事件;上位机不工作时,控制器可以保存204事件记录
⑥具有异常情况自控及恢复功能,如硬件设有看门狗及掉电检测等电路 ⑦具有高度自检功能,允许上位机对控制器进行全透明检测,并由此可进行大部分的故障检测
⑧具有进/出核对,上/下班考勤等事件记录功能
3.1.2门禁控制器的指纹识别电路
实现功能的过程是:通过在系统中预先建档,将个人的指纹通过光学技术或电容技术的指纹采集器存储到计算机中,当用户有访问需要时,指纹扫描器采集用户指纹的特征信息,通过光电转化后将指纹特征交给主机进行分析比较,决定用户是否有访问权限。如果用户拥有需要的权限,那么,在验证通过之后,门禁系统会输出高低电频信号到电源控制箱,通过继电器转换后,输出锁控信号给门锁设备,实现对门的控制;如果用户没有想要的权限,验证后会给出验证失败得信息,在三次验证失败后,门禁管理系统会输出一个验证失败的信号给电源控制箱,经过电源控制箱转换后形成报警信号,输出到报警器促使报警器发出警号。
7
河南城建学院本科毕业设计(论文)
3门禁系统硬件设计
3.2主控模块设计
系统采用以S3C10为核心的控制器控制的联网型指纹门禁控制系统。
3.2.1 S3C10简介
S3Cxx系列的应用处理器芯片是三星主推的,三星目前推出了S3C00和S3C10,都是基于ARM11架构的,而且硬件管脚兼容,应该说大致功能基本相同,比较明显的区别就是S3C10带有2D/3D硬件加速。
S3C10是由ARM1176JZF-S处理器,几个多媒体协处理器和各种外设IP组成的。包含16kB的指令数据Cache和16kB的指令数据TCM。ARM Core电压为1.1V的时候,可以运行到553MHz,在电压1.2V的情况下,主频稳定工作于667MHz。通过AXI,AHB和APB组成的/32bit内部总线和外部模块相连。具有尺寸小、接口全、功耗低、性能稳定、集成度高、可移植性强6层板、HDI制作工艺布局、布线充分考虑EMC、EMI应用领域广的特点。 S3C10芯片大小为13×13mm,共424管脚。
S3C10功能:S3C10有一个优化的接口连线到外部存储器。存储器系统具有双重外部存储器端口、DRAM 和FLASH/ROM/ DRAM端口。DRAM的端口可以配置为支持移动DDR、DDR、移动SDRAM和SDRAM;FLASH/ROM/DRAM端口支持NOR-FLASH、NAND-FLASH、ONENAND、CF、ROM类型外部存储器和移动DDR,DDR,移动SDRAM和SDRAM。S3C10包括许多硬件外设,如一个相机接口,TFT 24位真彩色液晶显示控制器,系统管理器(电源管理等),4通道UART,32通道DMA,4通道定时器,通用的I/O 端口,IIS总线接口,IIC总线接口,USB主设备,在高速(480 MB/S时USB OTG 操作,SD主设备和高速多媒体卡接口、用于产生时钟的PLL。
3.2.2 NAND FLASH单元
S3C10具备一个内部SRAM缓冲器,叫做“STEPPINGSTONE”,支持NAND FLASH的系统引导。当系统启动时,NAND FLASH存储器的前面4KB将被自动载入到STEPPINGSTONE中,然后系统自动执行这些载入的引导代码。通常情况下,这4K的引导代码需要将NAND FLASH中程序内容拷贝到SDRAM中,在引导代码执行完毕后跳转到SDRAM执行。使用S3C10内部硬件ECC功能可以对NAND FLASH的数据进行有效性的检测。
NAND FLASH 控制器的特性如下:
①自动导入模式:复位后,引导代码被送入4KB的STEPPINGSTONE中,
8
河南城建学院本科毕业设计(论文)
3门禁系统硬件设计
引导代码移动完毕,引导代码将在STEPPINGSTONE 中执行。而在导入期间,NAND FLASH控制器不支持ECC纠正。
②NAND FLASH 控制器I/F:支持512字节和2KB页。
③软件模式:用户可以直接访问NAND FLASH控制器。例如,这个特性可以用于读/擦/编程NAND FLASH存储器。
④接口:8位NAND FLASH存储器接口总线。 ⑤硬件ECC 产生、检测和标志(软件纠正)。
⑥支持SLC和MLC的NAND FLASH控制器:1位ECC用于SLC,4位ECC用于MLC的NAND FLASH。
⑦特殊功能寄存器I/F:支持字节/半字/字数据的访问和ECC的数据寄存器,用字来访问其他寄存器。
⑧STEPPINGSTONE I/F:支持字节/半字/字的访问。
⑨4KB内部SRAM缓冲器STEPPINGSTONE,在NAND FLASH引导后可以作为其他用途使用。
NAND FLASH 控制器的结构,如图所示:
图3.1 NAND FLASH 控制器结构图
在上电复位时,NAND FLASH 控制器将通过XOM(参照引脚配置)引脚状态来获得关于连接NAND FLASH的信息。在上电或系统复位之后,NAND FLASH控制器自动加载4KB 的启动代码。加载完成后,启动代码将在STEPPINGSTONE 中被执行。
该系统中采用三星公司的K9G8G08,其要求电压范围为2.7~3.6V,总容量为(1G+32M)×8bit,其中1G为数据区的容量,32MB为信息区的总容量,内部数据寄存器容量为(2K+)Byte。
9
河南城建学院本科毕业设计(论文)
3门禁系统硬件设计
图3.2 NAND FLASH 硬件连线图
K9G8G08有8个I/O端口,采用地址、数据线复用的方式,命令、地址和数据是通过将#WE和#CE置低,被写到I/O端口,它们都是在#WE的上升沿被写入。CLE、ALE分别用来在8位的I/O端口上分别复用命令、地址。1GB的物理空间需要地址宽度为30位,对于字节寻址需要5个总线周期来寻址:两个周期用于column地址,三个周期用于row地址。页读和页编程命令输入后需要相同的五个地址周期,而在块擦除操作中,仅需要使用一个row地址周期。
3.2.3 DRAM单元
基于 ARM Prime Cell CP003 AXI DMC(PL340)的DRAM 控制器,来自ARM Prime Cell CP003 AXI 动态存储器控制(PL340)。最初的AMBA APB 3.0 端口主要用于可编程配置寄存器,它是利用AxiToApb 进行转换的,使一个连接APB 主端口的AXI 从端口得以实现。
DRAM 控制器有AMBA AXI 兼容总线用于设计其配置寄存器和访问SDRAM。在PL340 配置寄存器中,DRAM控制器可以通过写芯片配置、ID 配置和存储器定时参数来进行编程。在用户配置寄存器中,两个较低位主要用于选择存储器的类型。
DRAM控制器可以直接接收一个SDRAM或DRAM控制器本身的指令。通过写指令到直接指令寄存器,DRAM控制器可发送像‘Pre charge all’ ,‘Auto refresh’,‘NOP’和‘MRS’(‘EMRS’) 这样的指令到SDRAM。在自动刷新计数器中,当刷新计数达到刷新周期的值时,控制器便会发出一个自动刷新指
10
河南城建学院本科毕业设计(论文)
3门禁系统硬件设计
令 对SDRAM进行周期性地刷新。
图3.3 DRAM结构图
3.2.4 RS232串口单元
S3C10通用异步接收和发送器( UART)提供了四个的异步串行I / O(SIO)端口。每个异步串行I/O(SIO)端口通过中断或者直接存储器存取(DMA)模式来操作。该UART使用系统时钟的时间可以支持的比特率最高为115.2kb/s。每个UART的通道包含了两个字节收发FIFO存储器。该S3C10的UART包括可编程波特率,红外线(IR)的传送/接收,一个或两个停止位插入,5位、6位、7位或8位数据的宽度和奇偶校验。选用电流电压转换芯片MAX232芯片,它是美信(MAXIM)公司专门为RS-232标准串口设计的单电源电平转换芯片,使用+5v单电源供电。其引脚可分为三部分:
第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。
第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DB9插头;DB9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。
第三部分是供电。15脚GND、16脚VCC(+5v)。
11
河南城建学院本科毕业设计(论文)
3门禁系统硬件设计
3.3显示器接口模块设计
LCD 液晶显示器是 Liquid Crystal Display 的简称,LCD 的构造是在两片平行的玻璃当中放置向列型液态的晶体,两片玻璃中间有许多垂直和水平的细小电线,透过通电与否来控制杆状水晶分子改变方向,将光线折射出来产生画面。其工作原理是:液晶层中的液滴都被包含在细小的单元格结构中,一个或多个单元格构成屏幕上的一个像素。在玻璃板与液晶材料之间是透明的电极,电极分为行和列,在行与列的交叉点上,通过改变电压而改变液晶的旋光状态,液晶材料的作用类似于一个个小的光阀。在液晶材料周边是控制电路部分和驱动电路部分。当LCD中的电极产生电场时,液晶分子就会产生扭曲,从而将穿越其中的光线进行有规则的折射,然后经过第二层过滤层的过滤在屏幕上显示出来。LCD投影机按内部液晶板的片数可分为单片式和三片式两种,现代液晶投影机大都采用3片式LCD板。
本设计选用TN-LCD液晶显示屏,由S3C10内部控制器提供控制。选用7寸、800×480像素的彩色LCD显示屏。
3.4通信接口模块设计
为了进行数据交换,应用处理器有一个DPSRAM 缓冲区,调制解调芯片可以用典型的异步SRAM接口访问DPARAM 缓冲区。
SRAM 缓冲区的大小为8个字节。调制解调器芯片可以像数据缓冲区内输入数据,向中断端口地址写入中断控制数据进行中断请求。当中断请求被接受以后,AP读取中断数据;当AP访问中断端口地址时,中断清除。同样的方式,AP可以在数据缓冲区内写入数据,可以向中断端口地址写入中断控制数据,向调制解调器芯片发出的中端请求。
3.5指纹识别模块设计
MBF200是富士通公司推出的一款固态指纹传感器芯片,该芯片具有自动指纹检测功能,可支持多种接口模式。MBF200具有高性能、低功耗和低成本等特点,属于电容性传感器。其电容性传感器阵列由二维金属电极组成,所有金属电极充当一个电容板,接触的手指充当第二个电容板,器件表面的钝化层作为两板的绝缘层。当手指触摸传感器表面时,手指上的脊和谷在传感器阵列中产生不同的电容,将这些电容充电到相同的电压,然后以相同的放电电流进行放电,那么电容上剩下的电压就是指纹图像量化的数据。该传感器有多种接口方式及多种图像获取形式,这些都是通过内部功能寄存器的设置来完成的。MBF200的电路图如图3.4所示。
12
河南城建学院本科毕业设计(论文)
3门禁系统硬件设计
P0 P1 300×256列传感器阵列 D 数据寄存器 索引寄存器 功能寄存器 采样保持 A0 RD WR WAIT CS0 CS1 MOS1 MOS0 DP DM TEST EXTINT INTR MODE1 MODE0 控制电路 A/D转换器 模拟电路 AIN ISET SPI USB 多谐振荡 XTAL1 晶体电路 XTAL2 FEST 图3.4 MBF电路图
本研究采用了MBF200在USB模式下的接口电路。其中:MODE0置为0,MODE1置为1,采用12 MHz晶振,A IN用于模拟信号输入方式选择, ISET用于设置内部参考电流, FSET用于设置内部多频振荡器及自动指纹检测速率。需要注意的是,在USB模式中, 为芯片提供的电压必需在3. 3 V~3. 6 V之间,由于该芯片的低功耗特点,所以在设计中可以使用USB总线电源来满足系统设计要求。MBF200硬件接口图如图3.5所示。
13
河南城建学院本科毕业设计(论文)
3门禁系统硬件设计
图
3.5 MBF硬件接口图
3.6语音报警模块设计
为了让系统具有更好的实用性,在系统中加人了MP3语言模块,用来提示操作结果及报警功能。该模块采取的核心芯片是AU6850B(芯片集成USB Host接口、SD接口、MP3解码电路)可直接读取SD卡中的语音文件,与微处理器采取串口通信模式,有利于程序的调试。整个项目的设计方案中,微处理器的串口为两个,一个用于指纹模块的通信,另一个用于本MP3模块电路。
SD卡中录入开机的提示音乐、指纹提示音、删除指纹提示音等,并对每一个提示音进行数字编号,根据微处理器与指纹模块的通信信息来发出不同的提示音,MP3模块根据微处理器传送过来的编码播放不同的音乐。需要注意的是,语音文件时根据目录在存储卡上拷贝的先后顺序而定的,所以拷贝文件时,要注意拷贝文件的先后顺序与文件的编码一定要对应起来,否则会出现混乱。另外,串口除了发送语音的编号外,还用来发送语音音量编码,用来调节音量大小。
3.7.不同形式的门对门禁系统的安装要求:
不同形式的门对门禁系统的安装要求是不一样的,而且整个系统运作的好坏在很大程度上和安装有关,所以系统安装在整个门禁系统中起了很大的作用,根据现有的门的形式,大体可以分为以下几类:
14
河南城建学院本科毕业设计(论文)
3门禁系统硬件设计
3.7.1单开木门
这种门一般门上都有球型锁或更高档的有锁栓的机械锁,可以用机械钥匙开启。电锁使用和原有的机械锁相配合的阴极电锁。选用通电打开锁槽的阴极电锁,门框上安装阴极电锁,锁槽是可以用电控制的。这种锁外界电源断电后,电锁会自动锁上,而且不影响原有的机械锁的使用,这样就保证了各门点的绝对安全性。 阴极锁:适用于单开木门有断电常开及断电常闭两种
图3.6 阴极锁
3.7.2双开木门、单开玻璃门及双开玻璃门
根据这种类型的门的结构特点,电插锁和磁力锁是比较适合的,配合门上的拉手使用,刷卡或者按密码后门锁自动打开。外界电源断电后,电锁会自动打开,满足消防防火安全的要求。门禁机安装在离地约1.3米高的墙面上。 电插锁:适用于木门及玻璃门 断电常开
图3.7 电插锁
3.7.3防火门、铁门
这种形式门的电锁采用通电开储能型阳极锁,自带机械开启方式,刷卡或者按密码后门锁自动打开。外界电源断电后,电锁是锁上的,可以用机械钥匙的方式开启,保证系统的安全性。门禁机安装在离地约1.3米高的墙面上。 储能锁:适用于防火门及铁门通电开门,带机械开启方式
15
河南城建学院本科毕业设计(论文)
3门禁系统硬件设计
图3.8 储能锁
3.7. 4 上下无框玻璃门
这种形式的门建议电锁采用无框玻璃专用电插锁,该锁通闭,断电开门,刷卡或者按密码后门锁自动打开,外界电源断电后,电锁会自动打开,满足消防防火安全的要求。门禁机安装在离地约1.3米高的墙面上。
3.8看门狗电路设计
当控制器操作被噪音或系统错误等故障打断时,S3C10 RISC 微处理器的看门狗定时器恢复控制器的操作。它用于正常的16 位间隔定时器来要求中断服务。看门狗定时器产生中断信号。用WDT 代替PWM 定时器的优点是WDT 产生复位信号。
看门狗定时器包含下面的特性:
① 具有中断请求的正常间隔定时器模式;
② 当定时器计数值达到0(超时),内部复位信号有效; ③ 电平触发器中断机制。
如图3.6 所示,显示看门狗定时器的功能模块图。看门狗定时器用PCLK 作为它的源时钟。PCLK 频率被预分频来产生相应的看门狗定时器时钟,并将所得的频率再次被分频。
图3.8 看门狗定时器模块图
在看门狗定时器控制(WECON)寄存器,预分频器值和分频因子被指定。分频因子能选择16、32、 或128。计算看门狗定时器时钟频率,每一个定时器的时钟周期:
16
河南城建学院本科毕业设计(论文)
3门禁系统硬件设计
看门狗定时器时钟频率= 1/( PCLK/ (预分频值+ 1) /分频因子)
一旦看门狗定时器有效,看门狗定时器数据(WTDAT)寄存器的值将不能被自动重新载入定时器计数器(WTCNT)。在看门狗定时器开始前,一个初始值必须写入看门狗定时器计数(WTDAT)寄存器。
17
河南城建学院本科毕业设计(论文)
4系统设计
4系统设计
4.1考勤管理人员
考勤管理管理人员为员工设置考勤方案的流程如下:
第一步:员工信息登记:登记基本信息、登录指纹、可选设置考勤密码、权限设置;
第二步:指定节假日方案:任意设置某天为工作日或节假日,可任意设置多套节假日方案;
第三步:指定考勤方案:包括正常考勤(可设置一次考勤、二次考勤、三次考勤、四次考勤)、自由班考勤、倒班考勤,并设置相应的考勤参数和配用相应的节假日方案;
第四步:分配考勤方案:考勤方案分配到个人,按不同的时间周期分配不同的考勤方案。
4.2考勤签到人员
单位员工已经登记了个人信息及指纹信息,而且管理员分配了相应时间段的相应考勤方案,员工就可以进行考勤签到了。
考勤签到人员的流程及考勤结果统计报表流程如下图所示:
18
河南城建学院本科毕业设计(论文)
4系统设计
4.2考勤管理端功能设计
4.2.1部门人员信息
部门以树状形式列出,如下图所示:
根部门 一级部门1 二级部门1 二级部门2 一级部门2 一级部门N
图4.1部门管理人员图
三级部门1 三级部门2 N级部门1 4.2.2节假日安排
考勤方案制定的各项要素中,节假日方案是重要的一项。因为对于某些单位及某些工作人员而言,工作日与节假日的区分并不一定只是正常的双休日或法定节假日,而可能是任意的一天或数天每周的固定周几、每月的固定几日等等。 邮件系统的节假日方案设置中,区分了【工作日】、【休息日】、【节假日】三类,但对于考勤计算,【休息日】与【节假日】是相同概念,都认为是“非工作日”。
节假日方案设置操作灵活,支持鼠标的双击操作及鼠标拖拽选择、功能键组合选择。
系统支持节假日的批量设定。
19
河南城建学院本科毕业设计(论文)
4系统设计
4.2.3考勤方案
考勤方案是考勤系统的核心。员工考勤由签到记录得到考勤结果,主要依据两个方案的设置,一是,考勤方案,另一个是考勤调整方案。
①工作方式与考勤方案
不同的部门或不同的员工可能有不同的工作性质和工作方式。如:普通员工朝九晚五、双休日、每天4次考勤的工作方式;单位领导每天2次考勤或1次考勤的工作方式;特定员工每周双休日不休息、周一周二休息的工作方式;兼职人员每周工作20小时的自由班工作方式;企业倒班的轮班工作方式等等。右键系统的考勤方案管理可以充分满足复杂的考勤方案设置。
考勤方案名称列表将在员工考勤方案设置中显示,根据该员工工作方式选择赋予不同时间段的考勤方案。
②节假日方案与自动加班
已设置的节假日方案是为考勤方案应用的。
【自动加班】选项是指节假日的考勤签到记录是否自动记为加班结果。选项选择时,如果在节假日只有1次考勤签到记录,就视为加班,但如果没有相对应的第2次签到记录,则工时计算为零。反之,如果有相应的签到记录,则自动计算加班工时。选项未选择时,则节假日的签到记录不自动记为加班,此时的加班应由系统管理员在考勤调整中进行加班调整,但需要注意一点,考勤调整记录还是要与签到记录进行对比,如果考勤调整记录已经调整为加班,但签到数据库中却没有这段时间的签到记录,则考勤结果会记为旷工。具体设计流程如下:
③考勤次数与考勤时间
对于正常的情况,工作方式一般可以分为两次考勤和四次考勤。如通常的五日工作制,可以制定为早上上班考勤、晚上下班考勤的两次考勤情况,也可以制定上午上下班、下午上下班均考勤的四次考勤情况。
而两次考勤和四次考勤均可以根据实际需求分解为多种考勤次数方案,分解的方法就是根据有效考勤点的考勤多选控件,可以任意选择形成任意组合的考勤点方案,如一次考勤和三次考勤。
④考勤
考勤包括【上报考勤提前】、【下班考勤延迟】、【上班考勤宽限】、【下班考勤宽限】、【迟到早退累积时间为旷工】。
⑤考勤时间临界点
以上提到的多个考勤时间都涉及到时间临界点的问题,即如果签到记录正好在时间临界点上,该如何处理?在右键系统中规定:a、有效考勤时间段
20
河南城建学院本科毕业设计(论文)
4系统设计
的临界点视为有效时间,即如果有效时间为7:30—8:35,则7:30和8:35这两个时刻的签到视为有效正常签到。b、延迟和早退累积记为旷工的时间包含设定时间,即如果设定时间为120分钟,则迟到早退时间总和大于或等于120分钟,就视为旷工。
⑥自由班考勤
自由班是指在设定的一段时间周期内,只要达到约定的工时即认为这段时间均“正常”出勤,每个工作日没有固定的上下班及请假的时间约定,只记录工时。如果没有达到约定的工时,则比对每日签到记录工时与自由班设置的每日平均工时,如果当日工时少于平均工时,则当天的考勤结果记录为“缺班”,如果当天工时大于或等于平均工时,则当天的考勤结果记录为“正常”。
员工考勤签到记录 否 节假日方案是否节假日 否 是否调整为加是 是 否 节假日是否自动加班 否 是否有对应的签到记录 是 计算工时工作考勤日 计算工时记为加班 加班工时为零记为 旷工 是 计算工时记为加班 签到记录无效记为旷班 结束
图4.2 节假日加班设计流程
⑦倒班考勤
21
河南城建学院本科毕业设计(论文)
4系统设计
通过【倒班周期】、【班次时间】设置,可以任意形成如“四班三倒”、“三班两倒”等多样正规和非正规的倒班考勤方案。
4.2.4 考勤调整
考勤调整是对员工在签到终端已签到或没有签到进行认为调整的一种方式。在实际工作中,一般需要员工申请、领导批准、系统管理员在指纹管理系统中进行考勤调整几个步骤来完成。
考勤调整时间确定后,将使用对应考勤方案的考勤时间。考勤调整结果与考勤方案结果叠加,按结果状态优先级确定最后的考勤结果。考勤调整类型一般包括一下四项:加班、请假、出差、值班。
4.2.5补签
补签与指纹签到、密码签到一样都是一种签到方式,不同之处在于补签是由管理员在管理系统中为一位或多位员工进行手工签到,以弥补由于客观原因没有及时在终端进行签到的情况。
4.2.6数据整理
数据整理是根据考勤调整方案和考勤方案(包括节假日方案)比对签到记录和补签记录,得到考勤结果的一个计算过程。
考勤调整方案 节假日方案 签到记录 补签记录 考勤记录 考勤方案
图4.3 数据整理过程
考勤结果是指对于签到人员的以“自然日”为单位的考勤状态,右键系统设定了12种考勤结果状态,按优先级由低到高的顺序依次为:1、空班,2、正常,3、值班,4、出差,5、加班,6、请假,7、离岗,8、迟到,9、早退,10、旷工,11、缺班,12、异常。
数据整理的方式有“自动数据整理”和“手动数据整理”两种方式。 右键系统设计了对数据进行自动整理的功能,即设置一个整理的时
22
河南城建学院本科毕业设计(论文)
4系统设计
间和周期,启动伺服器程序,到设定时间由程序自动对签到数据进行计算整理。与手动整理不同之处在于:手动整理可以选择任意的员工对象,而自动整理则是针对所有员工。
自动整理的设置包括【发生频率】、【执行时间】、【持续时间】等三项参数。
4.2.7考勤管理
系统管理主要包括以下内容: 登录用户密码修改; 数据库参数; 软件注册信息; 指纹采集仪注册; 签到终端设置; 数据备份与还原; 程序界面设置;
4.2.8考勤报表
对于考勤系统而言,员工如何考勤,是“考勤方案”和“考勤调整方案”的设置问题,员工考勤结果如何,是“数据整理”的算法问题,员工考勤结果最终体现就是“统计报表”的分类统计问题。
统计报表以A4幅面设计,可以缩放预览及直接打印。并可以转换为多种文件格式,包括文本文件、WORD文档、EXCL文档、HTML文档、图片文档等。
右键系统设计了如下七种报表: 签到统计表; 考勤日报表; 考勤月报表; 考勤明细表; 考勤调整表; 补签统计表; 人员明细表;
4.2.9 统计分析
统计分析是以直观的图形方式显示统计数据的差异,对数据进行对比和分析。
23
河南城建学院本科毕业设计(论文)
4系统设计
统计分析图以A4幅面设计,与考勤统计报表一样,可以直接打印或转化为其他格式。
右键系统设计了如下五项统计分析指标: 部门全勤情况图; 部门工时分析图; 部门加班统计图; 部门请假统计图; 人员工时统计图;
4.3考勤签到端功能设计
签到端的功能设置均在管理端由系统管理员灵活控制完成,功能设置包括以下几个方面:
①指纹采集仪序列号
指纹采集仪作为签到设备与签到终端连接,但指纹采集仪初始化时,要验证指纹采集仪的注册号是否正确,即与数据库中管理的指纹采集仪序列号进行对比。
②签到界面背景图
签到界面背景图可以任意更换,由系统管理员在管理端完成。 ③重复考勤时间间隔
在签到端指纹签到与密码签到视为,为避免短时间内连续签到或避免误操作,由管理端设置了重复考勤的间隔时间,在设定时间内的重复考勤不记录。如果重复考勤,在签到端的提示信息栏将显示“重复考勤”,并播放响应语言提示信息。
④声音提示的开关
默认情况下,对签到端的签到状况有声音提示,签到主要分为“正常”、“重复考勤”、“无效指纹”三种状况,均有相应声音提示。若用户不希望出现此提示音,则可以在管理端设置取消声音提示。
⑤签到系统的退出
右键系统的签到显示屏幕默认为全屏显示,这也方便了与触摸屏查询系统的集成。在全屏状态下或没有键盘输入的情况下退出系统时,通过“退出按钮”与“数字密码验证”可以退出签到系统,即在触摸屏状态或只有鼠标的状态,可以方便用户退出系统的管理操作。
⑥通知公告
签到端屏幕可以显示由管理端设置的公告信息,使签到终端提升利用率,方便用户行政管理。
24
河南城建学院本科毕业设计(论文)
4系统设计
4.4系统安装
考勤数据库可由客户端异地安装到数据库服务器上,但前提包括: ① 服务器已安装并运行SQL Server 2000数据库系统; ② 客户端与服务器处于同一局域网环境中。
如果安装考勤数据库出现数据库连接错误信息,可分析以下原因: ① 输入的数据库服务器IP地址(或主机名)是否正确;
② 服务器的数据库系统是否正常运行,且与客户端在同一局域网环境; ③ 数据库系统的SA密码是否输入正确; ④ 客户端是否已安装SQL2000客户端连接。
4.5系统安装与运行设计
4.5.1系统安装设计
右键系统网络版的安装环境,在逻辑上可分为服务器端、管理端和签到端三个部分。
系统的安装主要包括四个内容: 考勤数据库的安装; 管理端软件的安装; 签到端软件的安装; 设备驱动安装; 4.5.2系统运行设计
①考勤管理端程序启动运行
25
河南城建学院本科毕业设计(论文)
4系统设计
开始 程序执行 错误 据库连数接 正确 错误 注册信息 正确 错误 用户账户 正确 提示并退出程序②考勤签到程序运行
进入程序 图4.3 管理端程序启动流程
开始 程序执行 错误 数 据库连接 正确 指纹采集仪连接 指纹采集仪注册 错误 提示信息 正确 错误 提示信息 提示并退出程序 正确 进入程序
图4.4 签到终端流程图
26
河南城建学院本科毕业设计(论文)
5系统软件设计
5系统软件设计
控制器的软件部分主要完成以下功能:
①完成和指纹识别器通信接口的数据传输。接收从指纹识别机发送过来的指纹息。
②与PC机的通信接口。主要是串口通信的设计,包括处理从PC机上接收时间、时间等设置数据,向PC机上传指纹资料等。
③时操作、定时控制、定时延时、定时复位看门狗。
④对门禁和考勤装置的动作控制。包括开门、关门、考勤记录等。
5.1控制器的主程序设计
S3C10的操作系统为Linux 2.6.21,而LLINUX内核必须使用GUN的C编译器高层次来编译。
针对不同的硬件体系结构,GUN通过向网络用户提供相应的软件开发包,开发者只需从ARM Linux的免费站点下载。使用NFS可使嵌入式应用程序的开发和调试变得更加方便,极大地简化了信息的共享。主程序主要是完成系统数据的初始化、查询是否有指纹识别器送来的指纹信息。主程序流程图如图5.1所示。
工作开始时,经初始化,门禁控制器各部件恢复初始状态。电源提示灯点亮,控制器处于工作状态,当有指纹输入时,传输设备创建数据传输任务,将指纹采集器采集到的指纹信息传送给客户端。然后控制器创建数据接收任务,并将接收到的指纹信息与数据库中的指纹信息进行比较,若满足控制权限,则发出开门命令;否则发出报警信号。
27
河南城建学院本科毕业设计(论文)
5系统软件设计
图5.1 主程序流程图
开始 控制器初始化 点亮电源指示灯 N 输入指纹 Y 创建数据传输任务 N 整幅图像传输完 Y 创建数据接收任务 N 报警 获取指纹与数据库中指纹对比,符合访问权限? Y 开门,通过后关门 5.2指纹采集流程
指纹的采集工作,由检测到指纹中断开始的,系统检测到中断就会发出一个字符控制MBF200开始采集。MBF200指纹采集采用分行方法对指纹图像进行采
28
河南城建学院本科毕业设计(论文)
5系统软件设计
集和传输,采集流程图如下:
整幅图像读取完成? 等待服务器辨认结果
图5.2 指纹采集流程图
打开mbf200设备文件初始化系统寄存器 是否检测指MBF RegTest()寄存器测试 MBF200Initial()芯片初始化 MBFRow采集固定行指纹数通过串口采集的指纹数据进入Socket编程传输至客户端 睡眠状态 先初始化指纹图像采集系统的初始化寄存器,若没有检测的指纹中断信号,则MBFS200保持在睡眠状态;当检测到指纹中断信号时,系统将进行指纹采集。在指纹采集前,系统还要进行寄存器测试和芯片初始化,然后采集到的固定行数据,把通过串口采集的指纹数据送人客户端。重复固定行指纹数据采集过程,直至整幅图像采集完成后,系统将等待服务器对所采集的指纹进行辨认。
29
河南城建学院本科毕业设计(论文)
5系统软件设计
5.3中断程序
返回 图5.3 中断程序
进入中断 指纹采集中断计数器+1 第一次进入中断 N 启动T0 30ms 定时 Y 记录数据
5.4相关程序
5.4.1 NAND FLASH 的写入
NAND FLASH 控制器支持直接访问NAND FLASH 存储器接口。 写命令寄存器=NAND FLASH 存储器命令周期。 写地址寄存器=NAND FLASH 存储器地址周期。
写数据寄存器=写数据到NAND FLASH 存储器(写周期)。 读数据寄存器=从NAND FLASH 存储器读数据(读周期)。
读主ECC 寄存器和备用ECC 寄存器=从NAND FLASH 存储器读数据。 NAND FLASH写入程序如下:
NAND_eERROR NAND_WritePageSLC (u32 Controller, u32 uBlock, u32 uPage, u8 *pBuffer, u8 *aSpareBuffer) {
30
河南城建学院本科毕业设计(论文)
5系统软件设计
//Controller - Nand 控制器端口数 //uBlock – 写入块 //uPage – 写入页
//pBuffer – 写入数据缓冲区
//aSpareBuffer - Memory to store the spare data u32 i, uBlockPage, uPageSize, uSpareSize, uTemp; u32 uMecc, uSecc, uStatus; NAND_eERROR eError; u32 *pBufferW;
pBufferW = (u32 *)pBuffer; g_Nand_RnBTransition = 0;
uTemp = NAND_ReadNFCONRegister(Controller);
uTemp &= ~((1<<13)|(1<<12)); // 4 位ECC 编码解码完成中断无效 uTemp |= (1<<10) | (1<<9); // 非法访问RnB 转换中断有效 Outp32 (&(NAND(Controller)->rNFCONT), uTemp);
Outp32(&(NAND(Controller)->rNFSTAT), (1<<5)|(1<<4));//非法访问和RnB 中断处理位清除
INTC_Enable(NUM_NFC);
if(NAND_Inform[Controller].uNandType == NAND_Normal8bit) {
uBlockPage=(uBlock<<5) + uPage;
uPageSize = NAND_Inform[Controller].uPageSize; uSpareSize = NAND_Inform[Controller].uSpareSize; }
else //if(NAND_Inform[Controller].uNandType == NAND_Advanced8bit) {
uBlockPage=(uBlock<<6) + uPage;
uPageSize = NAND_Inform[Controller].uPageSize; uSpareSize = NAND_Inform[Controller].uSpareSize; }
NF_RSTECC(Controller); // 初始化 ECC NF_MECC_UnLock(Controller); NF_nFCE_L(Controller); NF_CLEAR_RnB(Controller);
31
河南城建学院本科毕业设计(论文)
5系统软件设计
NF_CMD(Controller, 0x80); //程序指令 NF_ADDR (Controller, 0);
//if (NAND_Inform[Controller].uNandType == NAND_Advanced8bit) if (NAND_Inform[Controller].uAddrCycle == 5) NF_ADDR (Controller, 0);
NF_ADDR (Controller, uBlockPage&0xff); //
NF_ADDR(Controller, (uBlockPage>>8)&0xff); //块和页数 NF_ADDR (Controller, (uBlockPage>>16)&0xff); // #if NAND_TRANSFER_MODE == POLLING_TRANSFER #if 0
for (i=0 ; i for (i=0 ; i #elif NAND_TRANSFER_MODE == DMA_TRANSFER Nand_DmaDone = 0; DMACH_Setup(DMA_A, 0x0, (u32)pBufferW, (u32)(&(NAND(Controller)->rNFDATA)), 1, WORD, uPageSize/4, DEMAND, MEM, DMA1_NAND_RX, &g_oNandDmac1); DMACH_Start(&g_oNandDmac1); while (!Nand_DmaDone); #endif NF_MECC_Lock(Controller); g_Nand_IllegalAccError = 0; if(NAND_Inform[Controller].uNandType == NAND_Normal8bit) { // Main Area ECC 32 0, BURST128, 河南城建学院本科毕业设计(论文) 5系统软件设计 uMecc = Inp32(&NAND(Controller)->rNFMECC0); aNand_Spare_Data[0] = (u8)(uMecc&0xFF); aNand_Spare_Data[1] = (u8)((uMecc&0xFF00)>>8); aNand_Spare_Data[2] = (u8)((uMecc&0xFF0000)>>16); aNand_Spare_Data[3] = (u8)((uMecc&0xFF000000)>>24); aNand_Spare_Data[5] = (u8)0xFF; //标记有效块 NF_SECC_UnLock(Controller); for (i=0;i<4;i++) { NF_WRDATA8(Controller, aNand_Spare_Data[i]);//写入剩余阵列(主要是ECC) //NF8_Spare_Data[i]=aNand_Spare_Data[i]; } NF_SECC_Lock(Controller); //剩余空间ECC uSecc = Inp32(&NAND(Controller)->rNFSECC) & 0xFFFF; aNand_Spare_Data[8] = (u8)(uSecc&0xFF); aNand_Spare_Data[9] = (u8)((uSecc&0xFF00)>>8); for(i=4 ; i NF_CLEAR_RnB(Controller); NF_CMD(Controller, 0x10); // 写入第二个指令 } else if (NAND_Inform[Controller].uNandType == NAND_Advanced8bit) { // Main Area ECC uMecc = Inp32(&NAND(Controller)->rNFMECC0); aNand_Spare_Data[0] = (u8)0xFF; //标记有效块 aNand_Spare_Data[1] = (u8)(uMecc&0xFF); aNand_Spare_Data[2] = (u8)((uMecc&0xFF00)>>8); aNand_Spare_Data[3] = (u8)((uMecc&0xFF0000)>>16); aNand_Spare_Data[4] = (u8)((uMecc&0xFF000000)>>24); 33 河南城建学院本科毕业设计(论文) 5系统软件设计 NF_WRDATA8(Controller, aNand_Spare_Data[0]); //写入标记有效块 NF_SECC_UnLock(Controller); for(i=1;i<5;i++) { NF_WRDATA8(Controller, aNand_Spare_Data[i]);//写入剩余阵列 (主要ECC) //NF8_Spare_Data[i]=aNand_Spare_Data[i]; } NF_SECC_Lock(Controller); // 剩余ECC uSecc = Inp32(&NAND(Controller)->rNFSECC) & 0xFFFF; aNand_Spare_Data[8] = (u8)(uSecc&0xFF); aNand_Spare_Data[9] = (u8)((uSecc&0xFF00)>>8); for (i=5; i //NF8_Spare_Data[i]=aNand_Spare_Data[i]; } NF_CLEAR_RnB(Controller); NF_CMD(Controller, 0x10); //写入第二个指令 } While (! g_Nand_RnBTransition) { if (g_Nand_IllegalAccError == 1) { NAND_Reset(Controller); g_Nand_IllegalAccError = 0; return eNAND_ProgramError; } } //Read Program Status NF_CMD (Controller, 0x70); while (! ((uStatus = NF_RDDATA8 (Controller)) & (1<<6))); if(uStatus & 0x01) 34 河南城建学院本科毕业设计(论文) 5系统软件设计 eError = eNAND_ProgramError; // 执行中错误 else eError = eNAND_NoError; NF_nFCE_H(Controller); uTemp = NAND_ReadNFCONRegister(Controller); uTemp &= ~((1<<10) | (1<<9)); // 非法访问RnB 转换中断无效 Outp32 (& (NAND (Controller)->rNFCONT), uTemp); if (NAND_Inform[Controller].uECCtest == 1) { for (i=0 ; i for (i=0 ; i INTC_Disable(NUM_NFC); return eError; } 5.4.2看门狗 在ARM11 处理器中,看门狗操作的具体代码如下: // WDT_operate 函数:主要功能通过输入操作看门狗定时器。 // 输入: uEnReset, uEnInt, uEnWDT [0:禁用 1:使能] // uSelectCLK (时钟分频因子) [0:16 1:32 2: 3:128] // uPrescaler [1~256] // uWTDAT [0~2^15] // uWTCNT [0~2^15] // 输出: NONE void WDT_operate(u32 uEnReset, u32 uEnInt, u32 uSelectCLK, u32 uEnWDT, u32 uPrescaler,u32 uWTDAT, u32 uWTCNT) { 35 河南城建学院本科毕业设计(论文) 5系统软件设计 float fWDTclk; Outp32 (rWTCON,0); Outp32 (rWTDAT,0); Outp32 (rWTCNT,0); Outp32 (rWTDAT,uWTDAT); Outp32 (rWTCNT,uWTCNT); Outp32 (rWTCON,(uEnReset<<0)|(uEnInt<<2)|(uSelectCLK<<3)|(uEnWDT<<5)|((uPrescaler)<<8)); fWDTclk = (1/(float)((float)g_PCLK/((float)uPrescaler+1)/ (1<<(uSelectCLK+4))))*uWTDAT; printf(\"WDT_clk = %f sec\\n\} 5.4.3中断程序 中断程序: static struct irq_chip s3c_irq_uart = { .name = \"s3cuart\.mask = s3c_irq_uart_mask, .unmask = s3c_irq_uart_unmask, .mask_ack = s3c_irq_uart_maskack, .ack = s3c_irq_uart_ack, }; static void __init s3cxx_uart_irq(struct uart_irq *uirq) { for (offs = 0; offs < 3; offs++) { irq = uirq> base_irq + offs; set_irq_chip(irq, &s3c_irq_uart); set_irq_chip_data(irq, uirq); set_irq_handler(irq, handle_level_irq); set_irq_flags(irq, IRQF_VALID); } 36 河南城建学院本科毕业设计(论文) 5系统软件设计 set_irq_chained_handler(uirq> parent_irq, s3c_irq_demux_uart); } void __init s3cxx_init_irq(u32 vic0_valid, u32 vic1_valid) { set_irq_chip(irq, &s3c_irq_timer); ... for (uart = 0; uart < ARRAY_SIZE(uart_irqs); uart++) s3cxx_uart_irq(&uart_irqs[uart]); } 37 河南城建学院本科毕业设计(论文) 结论 结论 经过两个多月的时间,基本上完成了本次设计——办公楼的门禁与电子考勤系统设计——的要求。硬件部分主要是基于S3C10处理器的开发,以S3C10为核心,对门禁考勤系统的电源,指纹采集系统,语音报警系统,存储器,显示器的进行设备选型,并借助网络实现联网控制。设计主要针对办公楼的门禁考勤要求能够实时准确的记录工作人员的进出情况,并能以报表形式打印出来的实际需求进行研究。由于时间仓促,及本人理论知识、开发技术、实践经验和现有设备的局限,该系统难免存在许多的不足之处,有待于改进和完善。 本设计可在以下几方面进行改进: ①进一步的软件更新将指纹识别系统与数据技术结合,以实现更有效的大规模指纹数据处理。 ②增加门禁考勤系统的扩展功能,使其视频监控,火灾报警的功能更加完善。 38 河南城建学院本科毕业设计(论文) 参考文献 参考文献 [1]陈龙,李仲男,彭喜东,王蒙.能建筑安全防范系统及应用[M].北京:机械工业出版社,2007:65-70. [2]杨恢先,黄辉先.单片机原理及应用[M].北京:人民邮电出版社.2009:176-177. [3]殷际英,李玏一.楼宇设备自动化技术[M].北京:化学工业出版社,2004:243-245. [4]王可崇.智能建筑设备自动化系统[M]. 北京:中国电力出版社,200356-60. [5]章云.建筑智能化系统[M].北京:清华大学出版社,2007:279-285. [6]陈龙.智能建筑安全防范及保障系统[M].北京:中国建筑工业出版社,2003:153-182. [7]岳经伟.综合布线技术与施工[M]. 北京:中国水利水电出版社,2005:35-42. [8]吴达金.综合布线系统工程常用标准图表资料精选[M].北京:机械工业出版社,2005:27-30. [9]王汝琳.智能门禁控制系统[M].北京:电子工业出版社,2004:86-103. [10] Fujitsu Company. MBF200 Solid State Fingerprint Sensor Datasheet [M]. Fujitsu Company, 2004:3-10. [11]Samsung Eliectronics.S3C10 32-Bit RISC Microprocessor User’s Manual, 2007:5-11. [12] Tomas Hernandez Jr .Integrating life-safety technologies.Building Design & Construction; Aug 2003; 44, 8; ProQuest Science Journals pg. 21-30 39 河南城建学院本科毕业设计 致谢 致谢 本论文的设计工作自始至终都是在指导老师王羲老师的悉心指导下完成的。指导老师严谨的治学态度、一丝不苟的治学精神、灵活开阔的学术思想和诲人不倦的指导作风,是我们学习的榜样,在课题设计期间的收获将使我终生受益,在此向我的指导老师王老师表示衷心的感谢。 感谢所有在设计过程中帮助过我的人,没有他们的帮助,我的设计不会完成的那么顺利,真挚的感谢他们。 最后,还要感谢各位答辩委员在百忙中抽出时间来审查和听取我的答辩,并提出宝贵意见,谢谢! 40
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- fenyunshixun.cn 版权所有 湘ICP备2023022495号-9
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务