毕业设计基于AT89C51单片机的智能水表设计

上传人:无*** 文档编号:44549395 上传时间:2021-12-05 格式:DOC 页数:28 大小:354.01KB
收藏 版权申诉 举报 下载
毕业设计基于AT89C51单片机的智能水表设计_第1页
第1页 / 共28页
毕业设计基于AT89C51单片机的智能水表设计_第2页
第2页 / 共28页
毕业设计基于AT89C51单片机的智能水表设计_第3页
第3页 / 共28页
资源描述:

《毕业设计基于AT89C51单片机的智能水表设计》由会员分享,可在线阅读,更多相关《毕业设计基于AT89C51单片机的智能水表设计(28页珍藏版)》请在装配图网上搜索。

1、目目 录录摘摘 要要 .1 11. 绪论 .11.1 课题背景及意义.11.2 传统水表.21.2.1 传统水表的主要结构.21.2.2 传统水表的主要特点.21.3 智能水表.31.3.1 智能水表的特点.41.3.2 国内外智能水表的发展现状及发展趋势.42. 智能水表的硬件组成 .52.1 智能水表系统硬件组成 .52.2 IC 卡读写电路 .62.2.1 Mifare 1 射频 IC 卡 .62.2.2 RC522 读写模块 .72.2.3 IC 卡读写电路的原理及说明 .82.3 液晶显示电路.102.4 电源模块.103 . 系统各软件电路设计 .103.1 IC 卡读写设计 .1

2、03.2 液晶显示电路软件设计.124. 结论 .12参考文献 .12致致谢谢 .1414附录:附录: .1515AbstractAbstract .1515IC 卡智能水表设计卡智能水表设计王健摘摘 要要 本论文主要设计研究基于单片机的 IC 卡智能水表电路,其主要功能是以AT89C51 单片机为核心,实现 IC 卡的读写,液晶显示的控制,电磁阀的控制,完成整个水表信号的读、写处理,。本文对每个模块逐一进行了研究,全面详细地论述了硬件电路的设计流程,对本设计中非接触式 IC 卡读写电路模块、液晶显示电路模块和RC522 读写电路模块等工作原理及功能进行了详细了说明。关键词关键词 单片机 IC

3、 卡 液晶显示 记忆模块第 1 章 绪论1.11.1 课题背景及意义课题背景及意义随着社会科学技术的高速发展,资源短缺现象日益严重,尤其是与人类生存嘻嘻相关的水资源。水是宝贵的环境资源,也是我国可持续发展战略的重要物质基础。但是,我国是世界上人均水资源拥有量是分贫乏的国家之一,节约和保护水资源是我国当前一项是十分重要的战略措施。节约水资源包括两个方面的措施,一是大力推广应用节水新技术;二是加强用水的科学管理,在某种意义上来说,加强用水科学管理是当前的首要任务。要加强用水的科学管理,最重要的是加速研究开发科学先进、应用方便的节水科学管理仪表以及这种仪表的普及应用。因此研制一种低功耗、计量精确方便

4、的智能水表显得极为重要。长期以来,我国城镇居民所使用的水表普遍是普通机械旋翼湿式水表,这种水表价格低廉,性能比较稳定,但是还采用人工抄表、按户收费的模式。此方式存在着工作量大,收费周期长,收费困难,效率低下等缺点。随着我国信息产业的飞速发展,金卡工程的全面实施,实现自来水收费管理的电子化、信息化及网络化已成为可能。水表系统的智能化可以大大提高供水管理部门的工作效率、节约费用,用以改善供水设施,提高居民饮水质量;同事还能为加强自来水使用的监督管理提供手段,从而在技术上为节约用水合理用水创造条件。微电子技术和计算机技术的不断发展,引起了仪表机构的根本性变革,以微型计算机(单片机)为主体,将计算机技

5、术和检测技术有机结合,组成新一代“智能化仪表”,智能化仪表在测量过程自动化。智能仪表不仅能解决传统仪表不易或不能解决的问题,还能简化仪表电路,提高仪表的可靠性,更容易实现高精度、高性能、多功能的目的。随着科学技术的进一步发展,仪表的智能化程度将越来越高。我国目前智能水表新产品开发基本上是借鉴国外先进模式,因为国外在此方面的研究设计起步较早。例如 ABB 公司的 KENT 水表采用充电电池,具有按键读数、可以显示日期时间及各户用水量,建有机械式与电子式读数功能,而且还配有 IBMPC 兼容机接口,可以进行电话通信;德国 Sameco 公司的新型水表可显示上一年与本年度用水量以及日期与时间等,并开

6、发电卡式水表;此外,日本、以色列等国也相继推出自己的新产品。国内的一些企业也对多种智能化水表系统作了研究,但在微功耗、可靠性等方面效果并不理想,由目前国情来看,我国的传统水表必须改进,才能适应社会和经济的发展。1.21.2 传统水表传统水表传统水表的发展经历了漫长年代,它涉及社会生活的各个方面。它对改善人类生活、促进社会发展和科技进步起到了无法估量的作用。直到现在很多领域还能继续发挥作用。1.2.1 传统水表的主要结构传统水表主要结构由硬件构成,以相对固定形式确定下来,所实现的功能较单一。只具有流量采集和机械指针显示用水量的功能,用户在使用过程中无法对其功能进行改变。它一般具有输入信号接口、内

7、部处理电路和实时显示三部分。对于一些仪表功能如自凋零、自校准、自动调节量程等的设置是由用户在仪表设备面板上手工完成。1.2.2 传统水表的主要特点传统水表的主要特点是自成体系,自我包容,用户无法更改。传统水表功能单一,只具流量采集和机械指针显示用水量的功能。同时,一台普通传统水表具有相对独立性,不能与其他水表设备进行通信,而只能用于现场测量,测量结果不能处理、存储、显示,局限性很大。另外,传统水表无法升级换代,而且开发周期长、经费投入大。随着科技水平不断发展,人们对传统水表提出以下几方面的要求:测量精度高、功能强、可靠性好,测量全能自动化、智能化,小型化、使用灵活方便、升级方便,同时还能进行测

8、量数据的处理、存储和显示,具有和其他设备进行数据通讯等功能。这些新的要求不仅促使着传统水表不断地改进和发展,也孕育着新一代水表智能水表的产生11。1.31.3 智能水表智能水表 随着为电子技术的不断发展,集成了处理器、存储器、定时器/计数器、并行和串行接口、看门狗甚至 A/D、D/A 转换器等电路在一块芯片上的超大规模集成电路芯片单片机出现了。智能水表是一种以单片机为主体,结合计算机技术与测量控制技术,利用现代微电子技术、现代传感技术、智能 IC 卡技术对用水量进行计量并进行用水数据传递及结算交易的新型水表。智能水表除了可对用水量进行计量并进行用水数据传递及结算交易的新型水表。智能水表除了可对

9、水量进行记录和电子显示外,还可以按照约定对用水量进行自动控制,并且自动完成阶梯水价的水费计算,同时可以进行用水数据存储的功能。出于其数据传递和交易结算通过 IC 卡进行,因而可以实现由工作人员上门抄表收费到用户自己去营业所交费的转变。IC 卡交易系统还具有交易方便,计算准确,可以利用银行进行结算的特点22 。1.3.1 智能水表的特点与传统水表相比,智能水表有以下特点:1对供水部门来说,可以实现先交费再供水的用水模式。这是大家都普遍认可的一个优点。这对解决水费托拖欠这个过去难以解决的问题会有帮助。供水部门推行 IC 卡水表的经验表明,人们普遍接受这一模式,供水部门不仅解决了拖欠交费的老大难问题

10、,还可以提前收到资金。对用户来说,由于水费的支出在总支出中占得比重很小,这种改变,对用户来说,只是把水费的交付时间提前了一段时间,所以,用户并不敏感。但对供水部门来说,这种变化则是不能小看的。随着水资源的紧张和水的商品属性逐步被社会认可,水的交易将会逐渐采用一般商品的交易模式,显然,先交费后用水,是更合理的一种交易模式。2改变了入户抄表收费的模式。这种模式改变的意义是巨大的。由于城市规模不断扩大和居民户数快速增加,供水部门抄表和收费的工作量将不断加大。沿用传统的上门抄表模式,将很难适应这种变化。而现在由于各种原因的影响,人工入户抄表的效率已经在逐渐下降并且是这种模式的成本不断增加。解决这个问题

11、,可以采用多种途径,但依靠技术进步来解决这个问题,应当是更值得提倡的方式。显然,采用智能 IC 卡水表及其管理系统,将可以从根本上改变由供水部门派人去千家万户抄表收费的模式。只要供水部门合理设置交费机构,基本上不会给用户带来麻烦。如果得到金融系统的配合,还可以减少布点的成本。因此大规模采用智能 IC 卡水表技术对降低供水部门的管理成本是会有显著帮助的。而使用 IC 卡进行交易结算,用户可以自主决定交费时间和数量,增大了用户的自主性。特别是随着人们家庭安全意识和隐私意识的增强,入户抄表和上面收费等随意进入私人住户的做法将逐渐不受欢迎甚至受到抵制,这是一个必须给予重视的社会发展趋势。而使用智能 I

12、C 卡进行交易结算,将可以有效解决这个会带来很多社会隐患的问题。3可以有效解决一些技术难题。比如,随着水资源的紧张,将会逐步实行超计划水价甚至阶梯式水价等较为复杂的用水管理模式。这些,将对供水交易提出较高的技术要求。采用普遍水表和人工抄表的模式,是难以解决这些技术问题的,而采用智能 IC 卡水表,将很容易解决这些问题。4随着科学技术的发展,供水行业也需要逐步实现用高科技手段进行供水管理。采用传统水表,这个跨越式很难完成的,而采用智能 IC 卡水表,将为运用计算机技术进行现代化管理奠定一个技术基础。5当然,使用智能 IC 卡水表还有其他优点,比如可以有效解决尽量扯皮、用水纠纷,贪污水费、人情用水

13、、用水统计困难等问题。6与远传 抄表系统相比,智能 IC 卡水表具有使用和维护成本很低,没有布线造成的混乱和高故障率等问题。智能 IC 卡水表的以上优点,将会使智能 IC 卡水表逐渐被社会所接受并成为一种基本配置。1.3.2 国内外智能水表的发展现状及发展趋势目前,国内企业与研究机构主要致力于智能网络远传水表的智能卡式水表系统方面的研究开发,如宁波水表厂、上海自来水公司水表厂等都在相继开发远传水表,由于智能网络远传水表系统需要配套远传通信网络支持,其初期投资大,因此只适用于在一些新建住宅小区组成相对独立的小网,所以目前尚未大量投入市场;而后者采用先付费后用水的管理模式,在当前收费困难、人工抄表

14、效率低下的情况下,更能获得供水管理部门的青睐。1、智能网络远传水表系统就目前来讲,智能网络远传水表又可分为分线制集中抄表方式和总线制智能抄表方式。(1)分线制集中抄表方式 各种分线制集中抄表方式的基本原理大致相同,即由采集器定时顺序采集来自多路分户线的水表信号,并进行数据处理、存储。各采集器之间采用总线制连接,最后连接到计算机。其典型特点是各户表通过分户线连接至采集器。分线制集中抄表模式单纯从技术上讲较成熟,也节约成本(多户表共享一个采集器),但从实际情况看,分线制集中抄表模式存在如下缺点:由于每次水表的计量信号是通过分户线穿越较长距离到达采集器,中途任何一个环节出现疏漏都将使采集器采集不到数

15、据,而且铺设分户线不仅使安装任务繁重,也存在许多隐患:短线,断线等。错综复杂的线路更使得维护工作困难重重。采集器均安装于现场,需专业人员调试系统并定期巡视维护,专业队伍日益“壮大”,维护费用也相应剧增。分线制集中抄表模式的风险不仅仅是各表风险的简单累加。如果采集器掉电或出现其他严重故障则会使该采集器上所有数据丢失,集中抄表的风险无法有效分散,与测控系统强调的集中管理、分散控制的分布式设计死相违背。(2)总线制智能抄表方式总线制智能水表由于采集、计数工作单元均安装在智能水表内并密封,水表的数据采集、处理、存贮等基础工作全由智能水表本身完场,手抄器或电脑不参与底层数据采集仅进行通讯联系,消除了外界

16、因素对计量的影响。另外因智能水表引出的总线通、断不影响单表数据采集和保存(仅影响水表数据的读出),无需重新置数,水表的真实读数仍可继续读出,其安全性、稳定性是比较可靠的。但由于单表内设置单片机和后备电源,成本较高,推广普及较慢。由于各表输出的总线只需挂接,可以减少分线制抄表方式大量烦琐的布线、系统调试任务以及后期使用过程中线路、系统维护等繁重劳动强度,也方便高层次设计如网络结构的设计、与其他系统(如安防、照明、空调、消防)共享开放式网络的设计,进而为用户提供完善、综合的配套服务。2、智能IC卡式水表系统智能卡水表是在当今智能卡技术与市场迅猛发展、单个智能卡及刷卡机性能价格比日益提高的特定时期应

17、运而生的。主要由智能卡式水表、智能卡、读卡器、收费管理信息系统等组成。用户须在供水部门指定售卡点,购水后刷卡方能使用。它具有有限用水量、解决用水收费纠纷的功能,这是其他抄表方式及普通水表上门抄表方式所不能比拟的,并且智能卡水表如同普通水表,无需铺设管线及线路维护,安装方便、维护简单;另外,智能卡水表自带数据采集模块、电源部分、电磁阀(电动阀)控制,由智能卡读入预购水量等信息,使用简单,动作可靠,并且它的前期投资费用低,因此日益受到供水管理部门的青睐。根据我国金卡工程的长远发展建设来看,单纯地将普通机械式水表转化成机械式+电子式固然已迈出了重要的一步,但是还不够完善,因为水表的计量预收费及管理自

18、动化将是大势所趋。未来信息技术的发展必将朝着网络化的方向发展,作为楼宇自动化发展的方向的一个重要方面|智能化水表系统。因此如何设计合适的平台,将自动抄表系统、远程监控报警系统、家居安防系统等无“缝隙”地与数据网及控制网连接起来,开发出能体现优良的综合性、互操作性、方便实际现场安装维护的一体化智能系统将成为今后一段时期内的热点。2. 智能水表的组成2.12.1 智能水表系统硬件组成智能水表系统硬件组成本水表电路的硬件设计原则是在低功耗的前提下,实现多功能,组成框图如图 2-1 所示。系统硬件电路由 IC 卡读写电路、液晶显示控制电路、电磁阀控制电路、脉冲提取电路、安全保护电路、记忆单元电路、通信

19、接口电路组成,以 AT89C51 为核心控制芯片,完成整个水表信号的读、写处理,监控水表工作的功能。该 CPU 芯片内置 4K 的程序存储器,有 32 个多功能的 I/O 口,具有多个可编程的中断 I/O 口和数据串行通信口。并且,该芯片功耗低,特别适用于水表控制线路多、功能全、功耗低的要求。它能方便地读取 IC 卡的数据,并控制电磁阀和液晶显示器的工作,同时还可以将水表的数据存入 E2ROM 进行永久保存并可通过串口送至表外的数据终端,大大地提高了该水表的智能化的功能。IC 卡读写电路AT89C51记忆单电路通信接口电路液晶显示电路通信插座Ic 卡插座图 2-1 硬件总体框图2.22.2 I

20、CIC 卡读写电路卡读写电路2.2.1 Mifare 1 射频 IC 卡Mifare 1 射频 IC 卡的核心是 Philips 公司制造的 Mifare 1 IC S50 系列微晶片,其内部包括1KB 高速 EEPROM、数字控制模块和一个高效率射频天线模块。卡片本身不带电池供电,工作时将卡片放在读写器的有效工作区域,卡片读写器的天线发送无线电载波信号耦合到卡片上的天线提供电源能量,其电压可达 2V 以上,足以满足卡片上的 IC 电路供电需要。在信道保证和数据完整性方面,Mifare 1 标准还提供了信道检测、存储数据冗余校验、三次传递认证以及防冲突机制等功能,保证了数据交换过程的安全。Mi

21、fare 1 射频 IC 卡的主要性能指标如下。(1)1KB的EEPROM,分为16个扇区,每个扇区分为4块,每块16B,以块为存取单位。(2)每个扇区有独立的一组(2个)密码及存取权限设置。(3)每张卡有唯一的32位序列号。(4)具有防冲突机制、支持多卡操作。(5)无电源,自带天线,内含加密控制逻辑和通信逻辑电路。(6)数据可保存10年,可反复写10万次。(7)工作频率为13.56MHZ。(8)106kbps 的快速数据传输速率。(9)读写距离最大可达10cm(取决于天线设计)。(10)工作温度范围:-20- +50。C。2.2.2 RC522 读写模块MF RC522 是应用于 13.56

22、MHz 非接触式通信中高集成度读写卡系列芯片中的一员。是 NXP 公司针对“三表”应用推出的一款低电压、低成本、体积小的非接触式读写卡芯片,是智能仪表和便携式手持设备研发的较好选择。 作为 13.56MHz 高集成读写卡系列芯片家族的新成员,MF RC522 与 MF RC500 和 MF RC530 有不少相似之处,同时也具备诸多特点和差异。它与主机间的通信采用连线较少的串行通信,可选取 SPI、I2C 或串行 UART(类似 RS232)模式之一,有利于减少连线,缩小 PCB 板体积,降低成本。IC 卡内部框图,如图 2-2 所示图 2-2 IC 卡内部示意图MFRC522 支持 SPI、

23、I2C、UART 接口;(2)64 字节发送和接收的 FIFO 缓存;(3) 4 页,每页 16 个寄存器,共 64 个寄存器;具有硬件掉电、软件掉电、发送掉电三种节电模式;(5) 支持 ISO/IEC 14443 TypeA 和 MIFARE通信协议;RC522 的接口引脚和读写器模块的电源端,接地端,具体的功能定义如下:(1)OSCIN :晶振输入(2)IRQ :输出,用来指示一个中断事件。(3)SIGIN :信号输入。(4)DVDD :数字电源(5)AVDD :模拟电源(6)AUX1 AUX2:辅助输出(7)OSCOUT :晶振输出(8)SDA :串行数据线其基本结构图如图 2-3 所示

24、图2-3 RC522基本结构图2.2.3 IC 卡读写电路的原理及说明IC 卡应用系统的硬件设计结构框图如图 2.3 所示,总体原理图见附录 1。单片机 AT89C51 是本设计的核心器件,它主要完成了对射频卡(MIFARE 1 卡)的读写操作。RC522 读写器对射频卡进行读写后通过串口电平转换电路将 RS232 电平转换为单片机所识别的 TTL 电平,或者使用 USB 转接线通信,从而达到了使用 AT89C51 单片机来控制射频卡的读写过程。图 2-4 IC 卡与单片机硬件连接结构图硬件电路由单片机模块、电平转换模块和 RC522 读写模块 3 部分电路组成,其工作原理分别如图 2-4、图

25、 2-5 所示。读写器与 M1 卡交换数据的过程:1)由读写器 MCU(微控制器)发送指令给 MCM,2)MCM 执行指令并将其转换为射频信号发送给卡;3)卡接收到来自 MCM 的指令后,按指令完成其内部的各种处理,并回送应答信号/数据给 MCM;4)MCM 接收卡回送的射频信号并将其转换为数字信号输出给 MCU,读写器 MCU 读取 MCM 接收到的应答/数据,即可完成与 M1 卡的数据交换。 单片机AT89C51串口电平转换电路IC 卡读写器报警电路Mifare1射频卡 图 2-5 RC522 通信模块2.32.3 液晶显示液晶显示模块模块液晶显示模块选用图形液晶显示模块 LCD1602,

26、它是一种专门用来显示字母、数字、符号的点阵型液晶模块。它由若干个 5x7 或者 5x11 等点阵个点距的间隔,起到字符间和行间距的作用。1602LCD 是指显示的内容为 162 既可以显示两行,每行 16 字符液晶模块(显示字符和数字)。2.42.4 电源模块电源模块在一般情况下,液晶器件的驱动需要两种不同的电源电压,一种是+5V(工作电压),另一种是-10V(背景光对比度调节电压)。所以,使用液晶模块时,使用 USB(+5V)电源供电,IC 卡接受模块需要+3.3V 电压。3. 系统各模块软件电路设计3.13.1 ICIC 卡读写软件设计卡读写软件设计3.1.1 读写器与 M1 卡交换数据的

27、过程:1)由读写器 MCU(微控制器)发送指令给 MCM,2)MCM 执行指令并将其转换为射频信号发送给卡;3)卡接收到来自 MCM 的指令后,按指令完成其内部的各种处理,并回送应答信号/数据给 MCM;4)MCM 接收卡回送的射频信号并将其转换为数字信号输出给 MCU,读写器 MCU 读取 MCM 接收到的应答/数据,即可完成与 M1 卡的数据交换。3.1.2 IC 卡读写操作步骤1)激活 MCM 2)MCM 软复位3)向 MCM 下载密码(LOAD KEY),校验传输密码正确后可向 MCM 的 KEY-RAM 写入用户自己设定的密码,以上操作与卡无关。4)请求应答(ANSWER TO RE

28、QUEST):寻卡 5)防冲突(ANTICOLLISION):选择唯一一张卡 6)选择标记(SELECT):激活所选择的卡 7)认证 (AUTHENTICATION):安全性8)读写操作(读、写、加值、减值):交换数据 (READ/WRITE/INCREAMENT/DECREMENT) 停止(HALT):置 IC 卡为停止模式,防止重复操作3.1.3 MIFARE 卡操作步骤单片机控制读卡器 RC522,对非接触 IC 卡进行读写的程序流程图,如图 3-1 所示。开始复位应答防冲突机制选择卡片三次相互验证加值减值写块读块中止图 3-1 单片机对 IC 卡操作流程图3.23.2 液晶显示电路软件

29、设计液晶显示电路软件设计3.2.1 液晶显示控制驱动器指令集本设计采用的是 LCD1602 液晶显示,掌握液晶显示主要掌握指令集,主要的指令集如表 3-1。清除显示0000000001将 DDRAM 填满20H,并且设定 DDRAM 的地址计数器(AC)到00H功能设定00001DLXREXXDL=0/1:4/8 位数据 RE=1: 扩充指令操作 RE=0: 基本指令操作读取忙标志和地址01BFAC6AC5AC4AC3AC2AC1AC0读取忙标志(BF)可以确认内部动作是否完成,同时可以读出地址计数器(AC)的值写数据RAM10数据将数据 D7D0 写入到内部的 RAM (DDRAM/CGRA

30、M/IRAM/GRAM)读 RAM的值11数据从内部 RAM 读取数据 D7D0(DDRAM/CGRAM/IRAM/GRAM) 表 3-1 LCD1602 部分指令集1602 液晶显示模块内部的字符发生存储器(CGROM)已经存储了 160 个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的字符、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母 A 的代码是 01000001B(41H),显示时模块把地址 41H 中的点阵字符图形显示出来,我们就能看到字母“A“。因为 1602 识别的是 ASCII 码直接赋值,在单片机编程中还可以用字符型常量或变量赋值,如“

31、A”4. 结 论本次设计是通过 51 单片机控制 RC522 系列读写模块对 Mifarel IC 智能卡进行读写操作,控制液晶显示等模块,设计出使用户先买水后用水的一种智能化水表,使水费收取工作迈向自动化。其设计主要包括 IC 卡读写、液晶显示、记忆单元、电磁阀控制 4 个模块。实现单片机对 IC 卡的读写控制,以及卡信息的调用,以及液晶对 IC 卡信息的显示,包括卡号以及卡的类型,每刷一次卡使得 IC 卡的金额减一。对于水表的控制在设计中弱化了,用一个 led 灯来代替。参考文献参考文献1 http:/ 姚存治 智能水表及集中抄表的现状和发展趋势 20093 周航慈.单片机应用程序设计技术

32、.北京航大出版社.20024 杨振野.IC 卡技术及其应用.科学出版社.20065 赵文博.单片机语言 C51 程序设计.电子工来出版社.20066 MAX3232.Status: ACTIVE 3V to 5.5V Multichannel RS-232 Line Drivr/Receiver7 AT89C51 control RC522 card reader to write Mifare radio frequency nip and connect the systematic host computer through CAN bus to read,CAN bus control

33、ler is SJA1000,the transceiver is P82C250. 2007 8 徐玮,沈建良.单片机快速入门.北京航空航天大学出版社.20089 李朝青.单片机原理及接口技术.北京航大出版社10 上海杰捷智能卡制作中心.Shanghai J&J intelligence card producing center11 IC 卡技术网.http:/ 开发板精品网AT89C51 单片机 http:/ 13 王爱英.智能卡技术.北京:清华大学出版.200014 徐德华,程受浩,刘华.多用途射频 IC 卡应用系统的设计.探测与控制学报.2003,25(3) 15 王璐,秦汝祥,贾群

34、.基于 RFID 技术的门禁监控系统,微机发展.2006 16 沈宇超,沈树群,樊荣等.射频识别系统中通信协议的模块化设计.通信学报.2007 17 KaiserU. Alowpower transponder IC forhighperforman ceidentificationsy.2006致谢在本次毕业设计完成的过程中,自始至终都是在赵欣老师的全面、具体的帮助和悉心指导下进行的。赵欣老师渊博的知识,民主而严谨的作风让我获益匪浅,终身受用,赵老师的严谨的治学态度和对工作的兢兢业业的态度会永远激励我认真学习,努力工作。同样感谢同学们的帮助,在这里表示衷心感谢!附录:附录 A IC 卡读写模

35、块附录 B 总设计电路图附录 C IC 卡水表部分程序#include #include reg52.h#include main.h#include mfrc522.h#define MAXRLEN 18 /功 能:寻卡/参数说明: req_codeIN:寻卡方式/ 0 x52 = 寻感应区内所有符合 14443A 标准的卡/ 0 x26 = 寻未进入休眠状态的卡/ pTagTypeOUT:卡片类型代码/ 0 x4400 = Mifare_UltraLight/ 0 x0400 = Mifare_One(S50)/ 0 x0200 = Mifare_One(S70)/ 0 x0800 = M

36、ifare_Pro(X)/ 0 x4403 = Mifare_DESFire/返 回: 成功返回 MI_OK/char PcdRequest(unsigned char req_code,unsigned char *pTagType) char status; unsigned int unLen; unsigned char ucComMF522BufMAXRLEN; ClearBitMask(Status2Reg,0 x08); WriteRawRC(BitFramingReg,0 x07); SetBitMask(TxControlReg,0 x03); ucComMF522Buf0

37、= req_code; status = PcdComMF522(PCD_TRANSCEIVE,ucComMF522Buf,1,ucComMF522Buf,&unLen); if (status = MI_OK) & (unLen = 0 x10) *pTagType = ucComMF522Buf0; *(pTagType+1) = ucComMF522Buf1; else status = MI_ERR; return status;/功 能:防冲撞/参数说明: pSnrOUT:卡片序列号,4 字节/返 回: 成功返回 MI_OK/ char PcdAnticoll(unsigned ch

38、ar *pSnr) char status; unsigned char i,snr_check=0; unsigned int unLen; unsigned char ucComMF522BufMAXRLEN; ClearBitMask(Status2Reg,0 x08); WriteRawRC(BitFramingReg,0 x00); ClearBitMask(CollReg,0 x80); ucComMF522Buf0 = PICC_ANTICOLL1; ucComMF522Buf1 = 0 x20; status = PcdComMF522(PCD_TRANSCEIVE,ucCom

39、MF522Buf,2,ucComMF522Buf,&unLen); if (status = MI_OK) for (i=0; i4; i+) *(pSnr+i) = ucComMF522Bufi; snr_check = ucComMF522Bufi; if (snr_check != ucComMF522Bufi) status = MI_ERR; SetBitMask(CollReg,0 x80); return status; /功 能:选定卡片/参数说明: pSnrIN:卡片序列号,4 字节/返 回: 成功返回 MI_OK/char PcdSelect(unsigned char *

40、pSnr) /卡片类型 char status; unsigned char i; unsigned int unLen; unsigned char ucComMF522BufMAXRLEN; ucComMF522Buf0 = PICC_ANTICOLL1; ucComMF522Buf1 = 0 x70; ucComMF522Buf6 = 0; for (i=0; i4; i+) ucComMF522Bufi+2 = *(pSnr+i); ucComMF522Buf6 = *(pSnr+i); CalulateCRC(ucComMF522Buf,7,&ucComMF522Buf7); Cle

41、arBitMask(Status2Reg,0 x08); status = PcdComMF522(PCD_TRANSCEIVE,ucComMF522Buf,9,ucComMF522Buf,&unLen); if (status = MI_OK) & (unLen = 0 x18) status = MI_OK; else status = MI_ERR; return status;/功 能:验证卡片密码/参数说明: auth_modeIN: 密码验证模式/ 0 x60 = 验证 A 密钥/ 0 x61 = 验证 B 密钥 / addrIN:块地址/ pKeyIN:密码/ pSnrIN:卡片

42、序列号,4 字节/返 回: 成功返回 MI_OK/ char PcdAuthState(unsigned char auth_mode,unsigned char addr,unsigned char *pKey,unsigned char *pSnr) char status; unsigned int unLen; unsigned char i,ucComMF522BufMAXRLEN; ucComMF522Buf0 = auth_mode; ucComMF522Buf1 = addr; for (i=0; i6; i+) ucComMF522Bufi+2 = *(pKey+i); fo

43、r (i=0; i6; i+) ucComMF522Bufi+8 = *(pSnr+i); / memcpy(&ucComMF522Buf2, pKey, 6); / memcpy(&ucComMF522Buf8, pSnr, 4); status = PcdComMF522(PCD_AUTHENT,ucComMF522Buf,12,ucComMF522Buf,&unLen); if (status != MI_OK) | (!(ReadRawRC(Status2Reg) & 0 x08) status = MI_ERR; return status; /功 能:读取 M1 卡一块数据/参数说

44、明: addrIN:块地址/ pDataOUT:读出的数据,16 字节/返 回: 成功返回 MI_OK/ char PcdRead(unsigned char addr,unsigned char *pData) char status; unsigned int unLen; unsigned char i,ucComMF522BufMAXRLEN; ucComMF522Buf0 = PICC_READ; ucComMF522Buf1 = addr; CalulateCRC(ucComMF522Buf,2,&ucComMF522Buf2); status = PcdComMF522(PCD_

45、TRANSCEIVE,ucComMF522Buf,4,ucComMF522Buf,&unLen); if (status = MI_OK) & (unLen = 0 x90) for (i=0; i16; i+) *(pData+i) = ucComMF522Bufi; else status = MI_ERR; return status; /功 能:写数据到 M1 卡一块/参数说明: addrIN:块地址/ pDataIN:写入的数据,16 字节/返 回: 成功返回 MI_OK/ char PcdWrite(unsigned char addr,unsigned char *pData)

46、char status; unsigned int unLen; unsigned char i,ucComMF522BufMAXRLEN; ucComMF522Buf0 = PICC_WRITE; ucComMF522Buf1 = addr; CalulateCRC(ucComMF522Buf,2,&ucComMF522Buf2); status = PcdComMF522(PCD_TRANSCEIVE,ucComMF522Buf,4,ucComMF522Buf,&unLen); if (status != MI_OK) | (unLen != 4) | (ucComMF522Buf0 &

47、0 x0F) != 0 x0A) status = MI_ERR; if (status = MI_OK) /memcpy(ucComMF522Buf, pData, 16); for (i=0; i16; i+) ucComMF522Bufi = *(pData+i); CalulateCRC(ucComMF522Buf,16,&ucComMF522Buf16); status = PcdComMF522(PCD_TRANSCEIVE,ucComMF522Buf,18,ucComMF522Buf,&unLen); if (status != MI_OK) | (unLen != 4) | (

48、ucComMF522Buf0 & 0 x0F) != 0 x0A) status = MI_ERR; return status;/功 能:扣款和充值/参数说明: dd_modeIN:命令字/ 0 xC0 = 扣款/ 0 xC1 = 充值/ addrIN:钱包地址/ pValueIN:4 字节增(减)值,低位在前/返 回: 成功返回 MI_OK/ char PcdValue(unsigned char dd_mode,unsigned char addr,unsigned char *pValue) char status; unsigned int unLen; unsigned char

49、i,ucComMF522BufMAXRLEN; ucComMF522Buf0 = dd_mode; ucComMF522Buf1 = addr; CalulateCRC(ucComMF522Buf,2,&ucComMF522Buf2); status = PcdComMF522(PCD_TRANSCEIVE,ucComMF522Buf,4,ucComMF522Buf,&unLen); if (status != MI_OK) | (unLen != 4) | (ucComMF522Buf0 & 0 x0F) != 0 x0A) status = MI_ERR; if (status = MI_

50、OK) / memcpy(ucComMF522Buf, pValue, 4); for (i=0; i16; i+) ucComMF522Bufi = *(pValue+i); CalulateCRC(ucComMF522Buf,4,&ucComMF522Buf4); unLen = 0; status = PcdComMF522(PCD_TRANSCEIVE,ucComMF522Buf,6,ucComMF522Buf,&unLen); if (status != MI_ERR) status = MI_OK; if (status = MI_OK) ucComMF522Buf0 = PICC

51、_TRANSFER; ucComMF522Buf1 = addr; CalulateCRC(ucComMF522Buf,2,&ucComMF522Buf2); status = PcdComMF522(PCD_TRANSCEIVE,ucComMF522Buf,4,ucComMF522Buf,&unLen); if (status != MI_OK) | (unLen != 4) | (ucComMF522Buf0 & 0 x0F) != 0 x0A) status = MI_ERR; return status; /功 能:备份钱包/参数说明: sourceaddrIN:源地址/ goalad

52、drIN:目标地址/返 回: 成功返回 MI_OK/char PcdBakValue(unsigned char sourceaddr, unsigned char goaladdr) char status; unsigned int unLen; unsigned char ucComMF522BufMAXRLEN; ucComMF522Buf0 = PICC_RESTORE; ucComMF522Buf1 = sourceaddr; CalulateCRC(ucComMF522Buf,2,&ucComMF522Buf2); status = PcdComMF522(PCD_TRANSCE

53、IVE,ucComMF522Buf,4,ucComMF522Buf,&unLen); if (status != MI_OK) | (unLen != 4) | (ucComMF522Buf0 & 0 x0F) != 0 x0A) status = MI_ERR; if (status = MI_OK) ucComMF522Buf0 = 0; ucComMF522Buf1 = 0; ucComMF522Buf2 = 0; ucComMF522Buf3 = 0; CalulateCRC(ucComMF522Buf,4,&ucComMF522Buf4); status = PcdComMF522(

54、PCD_TRANSCEIVE,ucComMF522Buf,6,ucComMF522Buf,&unLen); if (status != MI_ERR) status = MI_OK; if (status != MI_OK) return MI_ERR; ucComMF522Buf0 = PICC_TRANSFER; ucComMF522Buf1 = goaladdr; CalulateCRC(ucComMF522Buf,2,&ucComMF522Buf2); status = PcdComMF522(PCD_TRANSCEIVE,ucComMF522Buf,4,ucComMF522Buf,&

55、unLen); if (status != MI_OK) | (unLen != 4) | (ucComMF522Buf0 & 0 x0F) != 0 x0A) status = MI_ERR; return status; /功 能:命令卡片进入休眠状态/返 回: 成功返回 MI_OK/char PcdHalt(void) char status; unsigned int unLen; unsigned char ucComMF522BufMAXRLEN; ucComMF522Buf0 = PICC_HALT; ucComMF522Buf1 = 0; CalulateCRC(ucComMF

56、522Buf,2,&ucComMF522Buf2); status = PcdComMF522(PCD_TRANSCEIVE,ucComMF522Buf,4,ucComMF522Buf,&unLen); return MI_OK; /用 MF522 计算 CRC16 函数/void CalulateCRC(unsigned char *pIndata,unsigned char len,unsigned char *pOutData) unsigned char i,n; ClearBitMask(DivIrqReg,0 x04); WriteRawRC(CommandReg,PCD_IDLE

57、); SetBitMask(FIFOLevelReg,0 x80); for (i=0; ilen; i+) WriteRawRC(FIFODataReg, *(pIndata+i); WriteRawRC(CommandReg, PCD_CALCCRC); i = 0 xFF; do n = ReadRawRC(DivIrqReg); i-; while (i!=0) & !(n&0 x04); pOutData0 = ReadRawRC(CRCResultRegL); pOutData1 = ReadRawRC(CRCResultRegM);/功 能:复位 RC522/返 回: 成功返回

58、MI_OK/char PcdReset(void) MF522_RST=1;Delay(1); MF522_RST=0; Delay(1); Design of the Water Meter IC Card System Based on Sing-chipAbstract In this paper, the main design based on single-chip pre-charges the IC card water meter system hardware circuit design, its main function is based on AT89C51 sin

59、gle-chip microcomputer as the core, the realization of IC card reader, LCD display control, the control solenoid valve, pulse extraction, at the same time security protection circuit, memory cell circuit, communication interface circuit, the signal meter to complete the reading, writing and processi

60、ng, monitoring the work function of water meters. In this paper, one by one we studied for each module. Full detail of the hardware circuit design flow, for the design of the Central African contactless IC card reader circuit module, liquid crystal display circuit module and circuit module, such as

61、reading and writing RC522 working principle and function are described in detail.Key words SCM IC card Liquid crystal display Memory modulesg an employment tribunal claiEmployment tribunals sort out disagreements between employers and employees.You may need to make a claim to an employment tribunal

62、if:you dont agree with the disciplinary action your employer has taken against youyour employer dismisses you and you think that you have been dismissed unfairly.For more information about dismissal and unfair dismissal, see Dismissal.You can make a claim to an employment tribunal, even if you haven

63、t appealed against the disciplinary action your employer has taken against you. However, if you win your case, the tribunal may reduce any compensation awarded to you as a result of your failure to appeal.Remember that in most cases you must make an application to an employment tribunal within three

64、 months of the date when the event you are complaining about happened. If your application is received after this time limit, the tribunal will not usually accept i.If you are worried about how the time limits apply to you, take advice from one of the organisations listed under Further help.Employme

65、nt tribunals are less formal than some other courts, but it is still a legal process and you will need to give evidence under an oath or affirmation.Most people find making a claim to an employment tribunal challenging. If you are thinking about making a claim to an employment tribunal, you should g

66、et help straight away from one of the organisations listed under Further help.If you are being represented by a solicitor at the tribunal, they may ask you to sign an agreement where you pay their fee out of your compensation if you win the case. This is known as a damages-based agreement. In England and Wales, your solicitor cant charge you more than 35% of your compensation if you win the case.If you are thinking about signing up for a damages-based agreement, you should make sure youre clear

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!