毕业设计(论文)学生考勤系统的设计系统硬件模块的设计_第1页
毕业设计(论文)学生考勤系统的设计系统硬件模块的设计_第2页
毕业设计(论文)学生考勤系统的设计系统硬件模块的设计_第3页
毕业设计(论文)学生考勤系统的设计系统硬件模块的设计_第4页
毕业设计(论文)学生考勤系统的设计系统硬件模块的设计_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、石家庄经济学院本科生毕业设计学生考勤系统的设计系统硬件模块的设计引言高校教学考勤制度普遍存在不完善的地方,学生考勤对加强我校教学管理,促进教学改革有着非常重要的意义。部分大学生学习动力不足,治学态度不严,学习纪律松懈都与他们对学习的认识和思想觉悟有直接关系,但与教学管理体制本身不完善,如学分制尚不完善,考勤制度执行不力等也有着很大的关系。这些教学管理体制的不完善极容易使部分同学养成一些与我们大学生极不相称的学习生活状态,如迟到、早退、旷课、外宿、晚归、不按时就寝、无序上网问题等等,而同学们的习惯是互相影响的,当然这些坏的习惯也很容易产生共性。值我校本科教学评估年,进一步完善学生考勤制度、加强学

2、生考勤制度的执行力度,能够使同学们养成良好的学习生活习惯,有利于培育良好的校风和学风,帮助同学们健康成才。加强学生课堂考勤,确保学生上课率,是搞好课堂教学的基础。因此,学生考勤系统的设计有很大的现实意义和必要性,但传统的点名方式浪费了老师与同学们许多宝贵时间。针对我校实际现状,本设计借鉴相关成熟经验,改进综合相关系统模块,实现我校学生考勤功能,其目的是为实现我校学生考勤数据采集、数据统计和信息查询过程的自动化,完善考勤制度现代化,方便同学上课报到,方便教师统计、考核同学出勤情况,方便教务部门查询、考核学生出勤率,准确地掌握学生出勤情况。本设计的主要内容是实现学生考勤系统的硬件环境。硬件环境主要

3、是单片机控制的射频读卡器,读卡器采用非接触式射频ic卡技术与pc机连接,通过使用visual basic设计的用户操作软件对读卡器进行控制以实现考勤功能。本系统的可能创新点是通过进一步完善软件环境可以扩展本系统为“一卡通”系统。一卡通系统的实现也就是软件环境的进一步改善和扩展。通过读取ic卡号,根据各个部门的数据库内存储内容调出相应信息。例如学校的图书馆学生借阅管理、学校微机机房的记时考勤记录、学校操场或学生宿舍的门禁管理、学校食堂的收费等。1 ic卡介绍1.1 ic卡的分类和介绍ic卡是由一个或多个集成电路芯片组成,并封装成人们携带的卡片。ic卡按其内部封装的芯片种类和功能可分为存贮ic卡(

4、memory card)和智能ic卡(smart card),存贮卡和智能卡的区别就在于存贮卡芯片内不含微处理器(cpu),只具有存贮数据信息的功能。存贮卡又分为非加密存贮卡(一般存贮卡)和加密存贮卡(简称逻辑加密卡)。加密卡有内建互相认证安全模块,是银行金融应用中在安全和成本上得到完美结合的卡。智能ic卡又名cpu卡、电脑卡、智慧卡、聪明卡,它不仅具有像存贮卡一样的数据存贮功能,而且也具有像微电脑一样的逻辑处理、逻辑判断、i/0控制、指令执行等诸多功能。ic卡按照使用方法和信息交换方式又可分为接触式ic卡和非接触式ic卡。传统接触式ic 卡是通过物理接触方式,将卡插入卡座后,与外界交换信息,

5、所用集成电路芯片露在塑料卡外面的一面是一块含有电路腿的接触片,大部分都镀金,例如我们平时生活中接触最多的ic电话卡、手机中的pin卡等。非接触式ic卡是通过电磁波与外界交换信息,带有射频收发及相关电路的芯片与环形天线全部埋在塑料基片中,在进行读写时,读写设备向射频卡发一组固定频率的电磁波,卡片内与读写设备发射频率相同的lc串联谐振电路,在电磁波的激励下产生共振,从而使电容内有了电荷,在这个电容的另一端,接有一个单向导通的电子泵,将电容内的电荷送到另一个电容内贮存,当所积累的电荷达到2v时,此电容可作为电源为其它电路提供工作电压,从而完成将卡内数据发射出去或接收读写设备的数据。根据卡中所镶嵌的集

6、成电路的不同,ic卡主要有四大类:1)存贮器卡;2)加密存贮卡;3)cpu卡;4)射频卡。比较它们的读写属性、安全性、容量、成本和使用的方便性等性能,以非接触式射频卡所具备的优势最大。典型的非接触射频ic卡系统由控制器、读写器、ic卡组成。系统按13.56mhz的工作频率以半双工方式在读写器与ic卡之间双向传递数据。读写器将要发送的信号,编码后加载在频率为13.56mhz的载波信号上经天线向外发送,进入读写器工作区域的ic卡接收此脉冲信号,一方面卡内芯片中的射频接口模块由此信号获得电源电压、复位信号、时钟信号;同时卡内芯片中的有关电路对此信号进行调制、解码、解密,然后对命令请求、密码、权限等进

7、行判断,若为读命令,控制逻辑电路则从存储器中读取有关信息,经加密、编码、调制后经卡内天线发送给读写器,读写器对接收到的信号进行解调、解码、解密后送至后台计算机处理。若为修改信息的写命令,有关控制逻辑引起的内部电荷泵提升工作电压,提供擦写eeprom时所需的高压,以便对eeprom中的内容进行改写。若经判断其对应的密码和权限不符,则返回出错信息。本设计采用的就是典型的射频ic卡系统。1.2 非接触式射频ic卡的优点与传统接触式ic卡相比较,非接触式射频ic卡具有以下优点:1、操作方便、快捷:由于采用非接触无线通讯,读写器对在感应范围内的卡就可以进行操作,免去了插拔卡,所以非常方便用户使用;而且非

8、接触卡在使用时既没有正反面之分也没有方向性与角度限制,卡片可以随意方向掠过读写器表面,完成一次操作仅需0.1秒,这就大大提高了每次使用的速度。2、抗干扰性高:非接触式ic卡中内嵌防冲突机制,能有效防止卡片之间出现数据干扰,在多卡同时进入读写范围内时,读写设备可一一对卡进行处理。这提高了应用的并行性,也无形中提高了系统工作的速度。3、可靠性高:非接触式ic卡与读写器之间没有机械接触,这就从根本上消除了由于接触读写而产生的各种故障;而且卡中的ic芯片和感应天线完全密封在标准的pvc中,这也进一步提高了应用的可靠性和卡的使用寿命。4、高安全性:非接触式卡的序列号是唯一的,制造商在产品出厂前已将此序列

9、号固化在芯片中,不可以更改;非接触式卡与读写器之间采用双向互认验证机制,即读写器要验证ic卡的合法性,ic卡也要验证读写器的合法性;非接触式ic卡在数据交换前要与读写器通讯进行三次相互密码认证;而且在通讯过程中所有的数据都加密;此外,卡中各个区域都有自己的操作密码和访问条件。5、适合于多种应用:非接触式ic卡的存贮结构特点使其可以做到一卡多用,能应用于不同的场合或系统,例如,企业或机关内部员工“一卡通”,可用作考勤、食堂就餐、电话管理、停车场、门禁等;校园“一卡通”,可用作学生证、借书证、消费卡、门禁、上课考勤等,此时用户可根据不同的应用设置不同的密码和访问条件。6、适应于多种要求:非接触式i

10、c卡系统可根据环境与应用对象的不同而做到作用距离不同,如用于高速公路或一般路、桥收费,可选用作用距离为0.6m20m的系统,如用于电子钱包或公交收费,可选用作用距离仅几厘米的系统。系统配置相当灵活多样。正是由于非接触式ic卡的上述特点,使它在某些领域具有接触式ic卡无法比拟的优越性,被广泛应用于电子钱包、铁路、地铁、公交、轮渡、高速公路、一般路桥收费、食堂售饭收费、门禁系统、考勤系统、身份证等领域。特别是在门禁考勤等系统的应用,近期将占到整个射频卡应用的50%以上。1.3 非接触式射频ic卡技术的应用现状非接触式卡(又称射频卡)技术,这是世界上最近几年发展起来的一项新技术,它成功地将射频识别技

11、术、磁电技术、计算机技术和卡技术结合起来,解决了无源(卡中无电源)、低功耗和免接触这一难题,克服了接触式卡由于存在机械接触,容易造成磨损以及由于接触而产生各种故障的问题。而且非接触式ic卡表现出来的防监听、防解密性能也超出一般的卡,不论非接触式ic卡本身,还是非接触式ic卡读写设备(无卡座、全密封),均防水、防油、防污、防腐蚀、防扭曲、防静电(包括静电击穿、静电破坏卡中的数据),具有高安全、高可靠、高快捷、高适用等性能,是现代电子技术领域的一大突破。ic(集成电路)卡于1974年诞生于法国,当时有位叫罗兰莫雷诺(roland moreno)的工程师为了将一些个人信息存放在一个便于携带、保存的存

12、贮媒体上,提出了将一个集成电路芯片嵌装于一块塑料基片上构成一张存贮卡的想法,并按此方法做了一张卡片,这就是世界上第一张ic卡。但是由于当时集成电路技术水平有限,市场也没有形成迫切的需要,这种想法并没有立即付诸实施,后来随着集成电路技术的发展,芯片的集成度、容量、安全性都得到了很大的提高,尤其是eeprom技术的成熟,使得ic卡的生产、应用成为现实。目前,以欧洲为中心的ic卡市场已发展成为世界性的市场。2 学生考勤系统的总体设计本学生考勤系统采用单片机原理结合非接触式射频ic卡技术等,设计实现读卡器硬件电路,通过异步串行通讯技术与pc机连接,同时利用visual basic设计一个用户操作软件来

13、控制读卡器。读卡器通过感应ic卡号向pc机返回考勤数据,pc机进行考勤记录,最终实现学生考勤功能。系统框图如图2-1。计算机串口计算机部分数据线读卡器ic卡读卡器部分ic卡部分用户操作界面 图2-1 系统框图系统流程图如图2-2:连接成功计算机记录考勤信息无学生考勤有学生考勤读卡器加电初始化软件连接读卡器计算机操作界面初始化读卡器读取信息反馈给用户软件连接失败是否有学生考勤 图2-2考勤系统流程图2.1 考勤系统的硬件设计2.1.1 方案论证与器件选择考勤系统的硬件设计主要为读卡器。读卡器采用单片机进行控制,平时接触最多的单片机主要为80c51系列单片机,此单片机简单实用,但只支持单串口传输数

14、据,若要满足本系统的端口需求,需要另外接端口芯片,这无疑又增加了设计成本和控制可靠性。由于本人在实习期间接触了许多款philips单片机,其中一款89lpc952单片机比较适合本系统。如图2-3。与传统标准80c51相比,89lpc952采用了高性能的处理器结构,指令执行时间只需2到4个时钟周期,6倍于标准80c51单片机。同时,p89lpc952集成了许多系统级的功能,使单片机外围电路变的更加简单,从而节约了设计成本。它具备8kb可擦除flash程序存储器、256 字节 ram 数据存储器和256 字节附加片内ram、使用片内振荡器和复位选项时,至少可获得40个i/o 口、看门狗定时器具有独

15、立的片内振荡器,无需外接元件。一片80c51单片机的市场价钱在8块钱左右,而89lpc952单片机的价钱仅仅为15元,从整个系统的性价比来看,后者又占据了很大的优势,所以基于这些优点,本系统的硬件电路采用此款单片机作为控制核心。p89lpc952加速的2时钟80c51 cpuport1port2port3port4port5键盘中断看门狗定时uart0uart1i2c总线定时器模拟比较器jtag接口可配置振荡器片内rc振荡器电源检测p5p4p3p2p1txd0rxd0txd1rxd1图2-3 p89lpc952单片机结构框图图2-4 p89lpc952管脚图此外,整个电路还需要一款读卡专用芯片

16、,本设计采用philips的一款专用芯片fm1702 如图2-5。此芯片是基于iso14443 标准的非接触卡读卡机专用芯片,芯片内部高度集成了模拟调制解调电路,操作距离可达10cm、支持iso14443 type a 协议、支持六种接口模式、包含512byte 的eeprom、支持mifare 标准的加密算法,特别适用于各类计费、考勤系统的读卡器的应用。图2-5 fm1702结构框图及管脚图本设计所采用的非接触式射频ic卡为mifare 1型ic卡。mifare 1 ic智能(射频)卡的核心是philips 公司的mifare 1 ic s50(-01,-02,-03,-04)系列微模块(微

17、晶片)。它确定了卡片的特性以及卡片读写器的诸多性能。卡片上除了ic微晶片及一副高效率天线外,无任何其他元件。卡片上无源(无任何电池),工作时的电源能量由卡片读写器天线发送无线电载波信号耦合到卡片上天线而产生电能,一般可达2v以上,供卡片上ic工作,工作频率 13.56mhz。mifare射频卡所具有的独特的mifare rf(射频)非接触式接口标准已被制定为国际标准:iso/iec 14443 type a 标准。它的标准操作距离为10cm,与卡片读写器的通信速率高达106kbit/s。卡片上具有先进的数据通信加密并双向验证密码系统;且具有防重叠功能:能在同一时间处理重叠在卡片读写器天线的有效

18、工作距离内的多张重叠的卡片。mifare卡片在制造时具有唯一的卡片系列号,没有重复的相同的两张mifare 卡片。它内建8k(bit) eeprom存储容量并划分为16个扇区,每个扇区划分为4个数据存储块,每个扇区可由多种方式的密码管理。同时,卡片上的数据读写可超过10万次以上,数据保存期可达10年以上, ,卡片的功能组成如图2-6。mifare card clock data energy波形转换正弦=方波整流电压调节modu./demodu调制/解调 (复位)eeporanticollisionatr数字电路部分select applicationauthentication & acce

19、ss controlcontrol &arithm. unit romcrypto unitram 射频接口电路卡片天线天线线圈带保护层的ic微晶片图2-6 mifare射频卡功能组成框图整个卡片包含了两个部分,rf射频接口电路和数字电路部分。在rf射频接口电路中,主要为波形转换模块,它可将卡片读写器上的13.56mhz的无线电调制频率接收,一方面送调制/解调模块,另一方面进行波形转换,将正弦波转换为方波,然后对其整流滤波,由电压调节模块对电压进行进一步的处理,包括稳压等,最终输出供给卡片上的各电路。在数字电路部分模块中,主要包括有:atr模块:answer to request(“请求的应答

20、“);anti-collision模块:防止(卡片)重叠功能; select application 模块:主要用于卡片的选择;authentication & access control 模块: 认证及存取控制模块; control & arithmetic unit 控制及算术运算单元;ram/rom 单元;crypto unit 数据加密单元; eeprom interface/eeprom memory(eeprom存储器及其接口电路)。2.1.2 硬件电路组成及原理分析本设计硬件电路包括读卡模块、单片机数据处理模块、232串口通讯模块、ic卡模块。系统加电初始化后,由读卡芯片驱动读

21、卡模块天线发射13.56m的无线电调制频率等待读卡,当有ic卡进入天线读卡区域时(10cm以内),ic卡被无线电调制频率感应供电并驱动卡内芯片与读卡模块进行半双工通讯,读卡芯片将所接受的卡号和卡内存储的信息发给单片机,由单片机进行数据控制并通过串口通讯模块与pc机串口通讯,并最后显示到用户操作界面上,由用户进行数据处理以及对读卡机进行控制。本设计中ic卡片由学生手持,在读卡器上考勤之后由教师操作pc机通过电脑操作界面对学生进行考勤,本设计中包含自动保存功能,可以自动保存学生的考勤数据。硬件电路原理图请参阅附录a。2.2 考勤系统的单片机程序设计单片机是通过对读卡芯片内特殊的内存寄存器的读写来控

22、制读卡模块的。这些寄存器位于读卡模块中的asic的内部。在对读卡模块进行读/写操作时,各寄存器担负着不同的功能和作用,并且不是所有的寄存器都是可写或可读的,即有些寄存器只能读而不能写,有些则只能写不能读。 读取读卡芯片fm1702,一般的指向mifare卡请求。fm1702实际上是单片机与非接触式ic智能(射频)卡之间信息(数据)交换的”中间人”。任何读取卡片上的数据,或写进卡片上的数据均必须通过读卡模块来传递。以下是fm1702读卡芯片与单片机通讯特殊寄存器:1.data寄存器 地址:ooh任何传递到mifare卡的数据或来自mifrae卡的数据 都必须分别被写入data寄存器或从data寄

23、存器中读出。例如, 单片机向卡片写数据xi,则xi必须首先被写入到 data寄存器中,然后在读卡模块与mifare卡片进行通信,由卡片上的asic将data寄存器中的数据读取并存放在指定的卡片上的存储器中,从而完成单片机向mifrae卡片写数据的过程。data寄存器中有一个16byte的fifo(先进先出)队列寄存器。数据写到data寄存器后,被存放在这个16 byte 的fifo(先进先出)队列寄存器中, 等待向卡片上或单片机传送。如要进行传送data寄存器中数据, 则首先必须先设定要传输多少位(bit)或多少字节(byte), 即必须对bcnts寄存器进行有效的正确设置,以确定有多少字节将

24、要被传送。当卡片上的数据流接收结束或没有被接收时, stacon寄存器中的dv标志被置位“1”,并且fm1702上的引脚nirq也将由“high”变为“low”。如果设置了dv-bit,则stacon寄存器中的error-bits (出错位)将被设置。如果没有相关的error-bit被设置,则fifo寄存器中的数据将被假设为正确,且可以被读出。2.stacon寄存器 地址:01hsatcon是status control(状态控制)的缩写,是一个状态控制寄存器。将数据写到stacon寄存器中将对fm1702进行状态控制,另外,设置了ac位,即“ac=1”,将使防重叠状态机启动工作,执行内部存取

25、。这一存取在设置ac位后的12us开始,至35us结束。在这一间隙时间,不允许单片机向fm1702进行写(write)数据操作。必须延迟35us。这是为了保证防重叠状态机处理软件的正确运行,让其能识别叠放在一起的多张mifare卡片,为下一步进行选择一张指定sn(serial number)的mifare卡片进行数据读/写而作准备。本系统中至少延迟35us,然后进行写data,toc寄存器等操作。读取 stacon寄存器,就可以得到fm1702及卡片的当前状况信息。3.enable寄存器,地址:02henable 寄存器的设置将影响卡片在通信时对parity和crc的校验。在enable寄存器

26、中有针对 parity 和crc 校验的复位允许位(reset enable bits)。在对fm1702进行编程的开始时,必须对enable寄存器进行写操作,即必须将ce位关闭。仅当执行“select”命令操作时才打开ce位。4.bcnts 寄存器,地址: 03hbcnts是英文bit-counter-for-sending的缩写,意为传送时的位计数器(寄存器)。 这里的传送指的是cpu向读卡模块的data寄存器写数据。因此bcnts寄存器实际上是一个字节发送控制器,它控制了单片机向data寄存器中写进的数据字节数目。由于bcnts寄存器是控制向data寄存器写数据的字节数目,因此这一操作必

27、须在数据写入data寄存器之前完成。在大量的字节数据被写入data寄存器之后,fm1702自动地与卡片进行通信。5.bcntr寄存器,地址:04hbcntr是英文bit-counter-for-receiving的缩写,意为接收时的位计数器(寄存器)。与bcnts寄存器相反, bcntr寄存器控制了单片机读取data寄存器的数据字节数目。例如,设置bcntr=20h,则可向fm1702的data寄存器读取的数据字节数目为4个(8位字长的数据,因为总的bit数目=20h=32d),忽略多余的数据。6.keydata 寄存器,地址: 0ah(10)被存储在读卡模块中ram的密码数据必须先被写入ke

28、ydata 寄存器。为了能够存取读卡模块内部ram中的密码,密码的存放地址必须首先在keystacon寄存器和keyaddr寄存器两者中指定。在做存放密码操作或做密码验证操作之前,首先必须对keystacon寄存器进行设置。在密码被准确无误地存进ram之前,相关的传输密码必须被写入keydata-寄存器中。传输密码和写入ram中的密码都是6字节长,连续被写入keydata 寄存器中。7.keystacon寄存器,地址:0bh(11)keystacon寄存器是指密码状态和密码控制寄存器。写入数据到keystacon寄存器进行设置,将确定存取ram中的密码或传输密码的密码地址的一部分。2.3 单片

29、机源程序单片机源程序请参阅附录b。系统考勤流程图如图2-7。存储数据并与单片机通讯单片机存储数据到寄存器单片机驱动mic发声以及led闪亮返回读取卡数据truefalse开始防冲突机制有卡考勤否密码校验 图2-7系统考勤流程图3 考勤系统的用户软件部分介绍本系统的用户软件采用visual basic技术,调用mscomm控件连接串口与单片机通讯并记录单片机返回的考勤数据。在打开软件并选择好串口号、扇区号,即可与硬件设备连接了。本系统设计的软件操作简单,功能强大,可以实现读卡器与pc机通过串口异步通讯。在加电读卡器并将串口数据线与pc机连接完毕之后,在pc机上打开本软件。首先看到的界面如图3-1

30、图3-1 学生考勤设置菜单点击“学生考勤系统参数设置”如图3-2。本界面对学生姓名、性别、卡号、学号、学院、班级、专业等信息进行分配,选择串口号、通讯波特率默认为115200、扇区号选择,对卡进行加密,即完成了本部分的系统参数设置,设置完毕关闭即可。 图3-2 学生考勤系统参数设置点击学生考勤菜单进入学生考勤界面如图3-3。首先点击“连接读卡器”后连接状态里会显示当前的系统状态。成功连接读卡器之后点击“学生考勤”既可进行考勤。 图3-3 学生考勤界面软件源代码请参阅附录c。4 结论本设计由本人与宋艳平同学合作完成。我主要负责系统硬件模块的设计调试,在系统的设计和实现过程中,本人所学的专业课程得

31、到了很好的应用和扩展,很好的将本人的所学理论与实践相结合,对专业方向有了更深一层的了解,使本人对本专业的学习有了更浓厚的兴趣。本设计采用的单片机以及读卡芯片兼容性好,易于控制调试,密码机制、防冲突机制完善,保证了系统很高的可靠性、高效性和综合性价比。总之,系统调试容易、可靠性高、易于推广,在加强学校教学、学生管理信息化等方面会发挥巨大的参考作用。致 谢本设计从初具构思,开始设计到联机调试以及撰写论文并筛选代表性资料,形成初稿,到反复修改各稿,最后定稿,这一过程使我对本专业相关知识有了更深刻的了解,对团队配合的重要性有了更深刻的感受,从整个过程中学到了很多终生受益的东西。在此,我特别要感谢在我论

32、文的写作过程中所给予细心指导和帮助的指导老师,使我有机会能更深的熟悉论文的写作规范,特别是老师的点评使我受益菲浅,给我的论文写作指明了方向,使我的论文能够顺利完成。同时还要感谢我的小组队员,我们默契的配合使的我们的思路拓宽,使我们的信心十足,这些在我们整个设计过程中是最为重要的。我在以后的学习工作过程中一定更加注重团队的配合和个人水平的不断提高。参考文献:1 蒋燕辉.会计监督与内部控制中国财政经济出版社,2002.2蔡纯洁,邢 武. pic16/17单片机原理和应用.合肥中国科学技术大学出版社,19973何立民.i2c总线应用系统设计.北京:北京航空航天大学出版社,19954王爱英.智能卡技术

33、.北京:清华大学出版社,19965黄淼云,李也白,王福成.智能卡应用系统.北京:清华大学出版社,2001.6scott b gothery,timothy m jorgensen.智能卡开发者指南.邵建平,陈清,夏凌,等译.北京:电子工业出版社,2002.7 a foundation course on smart card technology, gemplus. 19998 developing database applications on smart card-based database management system, gemplus. 1999附录a:附录b:单片机对读卡器

34、的控制是以单片机发出指令来达到的。单片机对读卡器的控制事实上也就是对mifare非接触式ic射频卡的控制。本设计中读卡器的指令主要有这些:request std, request all, ant collision, select, load key, authentication(auth_1a,auth_1b), read, write, increment, decrement, restore, transfer, halt。其中比较重要的是前8条指令,以及halt 停机指令等。因为它们可以完成单片机对mifare非接触式ic射频卡的考勤控制。单片机对读卡器的某一指令操作是靠一个程序

35、的序列来完成,其中包括对读卡器硬件内核寄存器的设置以及汇编语言上的判断和设置。例如对卡片进行读(read)操作,则必须要对读卡器内部的bcntr寄存器,bcnts寄存器,toc寄存器,stacon寄存器等进行设置,同时还必须对地址进行设置,对每一个状态进行判别等等,对最终读得的数据还必须进行校验等等。1对读卡器“request std”和“ request all”指令的汇编语言应用程序的设计功能:调用该汇编语言子程序,将执行 “request std”或“ request all”指令操作,读取mifare 非接触式ic射频卡的tagtype字节,建立与卡片的第一步必不可少的通信联系。在本阶

36、段程序中用到的子程序如下:d500us: 为500us的延时子程序;h_send_to_buf01:在单片机中,将a寄存器中的数据送显示电路中的高四位中的第0,1位,以准备显示,地址为34h,35h;h_send_to_buf23:在单片机中,将a寄存器中的数据送显示电路中的高四位中的第2,3位,以准备显示,地址为32h,33h;send_to_buf01:在单片机中,将a寄存器中的数据送显示电路中的低四位中的第0,1位,以准备显示,地址为39h,3ah;send_to_buf23:在单片机中,将a寄存器中的数据送显示电路中的低四位中的第2,3位,以准备显示,地址为37h,38h;displa

37、y:在单片机中,显示8位数据中的低4位数据值。即将存储在37h至3ah显示内存中的低四位数据显示在led上。 clr ea ; close cpu int clr p2.5 ;复位读卡模块 (-rst=0) setb p2.4 ;reset 读卡模块 (-cs =1) nop acall init_disp_buf acall display acall h_display nop clr p2.6 ; close ok lamp setb p2.0 ; disenable kb function mov p1,#11110000b ;init p1 port:p1.0p1.3-out (li

38、ne) ; p1.4p1.7-in (column) setb p2.5 ;reset 读卡模块 (-rst=1) clr p2.4 ;select 读卡模块 (-cs=0) acall d500ms mov a,#80h ;software_reset 读卡模块 mov r0,#01h movx r0,a acall d500ms acall spk_on ;speak on ;mov 21h,#01h ;the kb_test_charkb_looking: lcall kb_scan acall display acall h_display clr p2.6 ;close ok lam

39、p p2.3 ajmp kb_lookingkb_all_exit: mov r2,#00h ;set rqt_std setb p2.5 ;reset: 读卡模块 on (-rst=1) p1.4 clr p2.4 ;select 读卡模块 on (-cs=0) p1.5;-repeat: setb p2.5 ;reset: 读卡模块 on (-rst=1)p1.4 clr p2.4 ;select 读卡模块 on (-cs=0) p1.5 acall display acall h_display acall d500ms clr p2.6 ;clear oklamp p2.3 acall

40、 init_disp_buf acall display acall h_display acall display acall h_display acall d500ms mov 7fh,#0abh mov 7eh, #00h ;(7eh) = 00h-select keyset0 (ks1=0;ks0=0) mov 7dh,#02h ;(7dh): 1)select keya or keyb ; 2)select sector address :0-15 mov 7ch,#60h ;(7ch) = 47h-tkey(1) first address acall display acall

41、 h_display acall d500ms clr p2.6 ;clear oklamp p2.3 acall init_disp_buf acall display acall h_display ;mov 7fh,#04h ;7eh:for future use! mov 7eh, #80h ;(7eh) = 80h-select keyset0 (ks1=0;ks0=0) mov 7dh,#82h ;(7dh): 1)select keya or keyb (for auth_) ; 2)select sector address :0-15 (for auth_) mov 7ch,

42、#60h ;select: auth_ instruction code acall display acall h_display acall d500ms clr p2.6 ;clear oklamp p2.3 acall init_disp_buf acall display acall h_display mov 7dh,#50h ;(7dh):the first address(low byte) which you want to ; read the data from the 读卡模块/card into cuprum mov 7ch,#08h ;select: the add

43、ress(block no.) you want to read:0-63 ;= lcall read ;读卡模块 read operation;= acall display acall h_display acall d500ms clr p2.6 ; clear oklamp p2.3 acall init_disp_buf acall display acall h_display;= lcall halt ;读卡模块 halt operation;= acall display acall h_display acall d500ms clr p2.6 ;clear oklamp p

44、2.3 acall init_disp_buf acall display acall h_display;= lcall disp_rd_blk ;display just read block values;= lcall clear_disp_rd_blk_in_cpu ;clear :fill with #11h ;= clr p2.6 ;clear oklamp p2.3 acall init_disp_buf acall display acall h_display ;clr p2.5 ;reset 读卡模块 (-rst=0) p1.4 ;setb p2.4 ;reset 读卡模块 (-cs=1) p1.5 mov a,#80h ;software_reset 读卡模块 mov r0,#01h movx r0,a ;ljmp repeat retd500us: d500us_loop1: mov r6,#05h d500us_loop2: nop nop nop nop nop nop nop nop djnz r6,d500us_loop2 djnz r7,d500us_loop1 ret;-d500ms: setb psw.3 s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论