




已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一种基于RFID的便携式智能药盒系统设计摘要RFID的基本原理是利用阅读器与电子标签之间的电磁耦合来实现数据通信,从而达到对电子标签及其所代表的对象进行识别的目的。RFID技术具有读取速度快、存储空间大、穿透性强、使用寿命长和安全性高等众多优点。智能药盒系统是新型的医疗管理系统,它集自动识别技术和现代安全管理措施为一体。智慧医疗是利用先进的物联网技术、传感技术及RFID技术实现患者与医务人员、医疗机构、医疗设备之间的互动,逐步达到信息化,使医疗服务走向真正意义的智能化。智能药盒是一种为了方便医患人员服药,而设计的药物存储容器。该系统主要功能包括通过RFID进行身份验证,调出电子病历;具有用药定时提醒和记录功能;服务器和药盒之间通讯通过ZIGBEE模块实现。文章从智能药盒的发展出发,首先介绍了射频识别技术的概念、分类及工作原理,然后介绍了本次使用的视频芯片MFRC522。本RFID系统设计可分为硬件部分和软件部分。硬件部分以MFRC522射频识别模块为核心,结合主控模块STC89C52设计系统的外围硬件电路,实现对射频卡的控制与MCU之间的互通。软件部分采用C语言进行系统的下位机程序的开发,完成与IC卡之间的通信,实现数据交换功能。关键字射频识别,智能药盒系统,MFRC522,STC89C52,ZIGBEEDESIGNOFAPORTABLEINTELLIGENTPORTSYSTEMBASEDONRFIDABSTRACTTHEBASICPRINCIPLEOFRFIDISTHEUSEOFELECTROMAGNETICCOUPLINGBETWEENTHEREADERANDELECTRONICTAGTOIMPLEMENTTHEDATACOMMUNICATION,SOASTOACHIEVETHEELECTRONICTAGSANDREPRESENTEDBYOBJECTFORIDENTIFICATIONPURPOSESRFIDTECHNOLOGHASREADSPEEDANDSTORAGESPACEISLARGE,STRONGPENETRABILITY,NUMEROUSADVANTAGESOFLONGSERVICELIFEANDSAFETYOFHIGHERINTELLIGENTKITSYSTEMISANEWTYPEOFMEDICALMANAGEMENTSYSTEM,ITINTEGRATESAUTOMATICIDENTIFICATIONTECHNOLOGYMODERNSAFETYMANAGEMENTMEASURESMEDICALWISDOMISTOUSETHEADVANCEDINTERNETTECHNOLOGY,SENSORTECHNOLOGYANDRFIDTECHOLOGYREALIZESTHEPATIENTSANDMEDICALSTAFF,MEDICALINSTITUTIONS,MEDICALEQUIPMENT,THEINTERACTIONBETWEEN,GRADUALLYACHIEVETHEINFORMATIZATION,THEMEDICALSERVICETOTHEREALMEANINGOFSMARTSMARTPILLBOXESISAKINDOFMEDICATIONINORDERTOFACILITATMEDICALPERSONNEL,ANDDESIGNOFDRUGSTORAGECONTAINERSTHESYSTEMMAINFUNCTIONIINCLUDESTHROUGHTHERFIDAUTHENTICATION,BRINGUPTHEELECTRONICMEDICALRECORDWITHFUNCTIONSOFMEDICATIONREGULARLYREMINDEDANDRECORDSTHECOMMUNICATIONBETWEENSERVERSANDPCSBYZIGBEEMODULEOFWORK,ANDTHENINTRODUCEDTHEUSEOFVIDEOMFRC522CHIPTHERFIDSYSTEMDESIGNCANBEDIVIDEDINTOTHEHARDWAREPARTANDSOFTWAREPARTHARDWAREPARTMFRC522RFIDMODULEASTHECORE,COMBINEDWITHTHEMAINCONTROLMODULESTC89C52PERIPHHERALHARDWARECIRCUITDESIGNSYSTEM,REALIZETHECONTROLOFTHERADIOFREQUENCYCARDBETWEENMCUANDCOMMUNICATIONSOFTWAREPARTOFTHECLANGUAGEISADOPTEDTOIMPROVETHESYSTEMOFTHEMACHINEPROGRAMDEVELOPMENT,COMPLETEWITHTHECOMMUNICATIONBETWEENTHEICCARD,TOREALIZEDATAEXCHANGEFUNCTIONKEYWORDSRFID,INTELLIGENTPORTSYSTEM,MFRC522,STC89C52目录摘要IABSTRACTII1绪论111课题研究的背景及意义112课题研究现状113课题设计任务22理论基础321射频识别技术概述3211射频识别技术3212射频识别技术的分类3213射频识别系统的典型结构3214射频识别系统的工作原理422ZIGBEE技术概述4221ZIGBEE技术介绍4222ZIGBEE技术的主要优点5223ZIGBEE技术的主要特征6224ZIGBEE网络拓扑结构和路由介绍723非接触式读卡芯片MFRC5229231MFRC522概述9232MFRC522特性9233MFRC522管脚排列93药盒系统硬件设计1031STC89C52主控模块10311STC89C52简介10312STC89C52主要特性10313STC89C52管脚说明10314STC89C52最小系统接口电路1232LCD12864液晶显示模块13321LCD12864简介13322LCD12864分类1332312864管脚说明13324LCD12864基本特性1432512864与89C52接口电路图1533串口通讯电路设计1534报警电路设计1635本章小结174药盒系统系统软件设计1841KEILC51开发系统1842LCD显示程序设计19421LCD初始化19422LCD显示1943射频控制模块20431设计框图20432工作过程2144结果245实物图2551定时提醒2552LCD显示25致谢26参考文献27附录281绪论11课题研究的背景及意义智慧医疗是利用先进的物联网技术、传感技术及RFID技术实现患者与医务人员、医疗机构、医疗设备之间的互动,逐步达到信息化,使医疗服务走向真正意义的智能化。现代社会由于人们的学习、生活的节奏越来越快,生活水平不断提高。人们越来越重视健康,同样关于自我保健的消费也在不断增长。同时,由于各种原因导致的各种疾病和老人比较常见的疾病都需要长期服用药物。人们希望能有一种功能实用,方便携带的同时还具有良好的提醒功能的多功能药盒的出现。而本次的设计就是针对这一状况产生的,它能更好的管理吃药麻烦和由于各种原因导致的忘记吃药的问题,更好的提醒人们该吃药了,从而达到帮助人们养成按时吃药的习惯。智能药盒系统不但能对病人的吃药时间进行定时提醒,他还可以存储病人的健康信息,当病人去医院就诊的时候不用排队挂号,只需要将IC卡刷一下,医院就能识别病人的信息,避免了长时间的排队和对病人信息输入错误的情况,使得病人能快速的就诊。同时也减轻了医院方面的压力。12课题研究现状一开始出现的便携小药盒,造型简单容量小,不能满足人们的需求,于是,随即又发展出现了大容量且功能齐全的药盒。随着逐渐更新完善,发展出现了造型多样的全新设计的人性化智能电子药盒,易操作,能定时提醒,更简单。为更多人带来了便利。电子药盒不仅用于收纳不同的药片,还可以放置保健品,这样也就拓展了电子药盒的消费对象,扩大了消费群体,提升电子药盒的使用价值。以前大多数电子药盒的电路通常由分立的数字电路器件组成,不仅功能单一,而且重量和体积都较大,特别是功耗大,提高了使用成本,因而具有很大的局限性。所以更新智能药盒的成为新的需要。随着单片机技术的快速发展,以单片机为核心的大规模集成电路在各种产品中得到了极其广泛的应用。而以单片机为核心的数字电路正是由于具有功能丰富,体积小,功耗低等优势,符合便携式智能药盒的特点,具有极大的市场潜力和开发价值。如今便携式智能药盒在选择机型的过程中综合考虑单片机性能体积和产品耐用性等因素,正向微型化,智能化,人性化方向发展。一切科技都是为了服务人们更好的生活。鉴于目前不少老年人苦于用药的合理管理和定时服用,智能的药品管理系统正是大众所需。随着RFID技术的快速发展,RFID技术得到了广泛的应用。而以RFID技术为核心的便携式智能药盒系统可以更好地解决人们忘记吃药,去医院就诊挂号慢的问题,能提高医院的效率,使病人和医院工作人员达到双赢。13课题设计任务智能药盒系统设计主要分为两个部分外围硬件系统和软件系统。硬件系统包括射频系统外围电路设计;软件系统包括非接触式IC卡读写程序、LCD显示程序及重置程序的设计编写。此智能药盒系统基于RFID射频识别技术,可实现IC卡识别,并可完成IC卡信息的读写,并且能实现智能药盒系统与上位机之间的通信。2理论基础21射频识别技术概述211射频识别技术射频识别RADIOFREQUENCYIDENTIFICATION,RFID技术是从八十年代逐渐走向成熟的一种自动识别技术,它是一项利用射频信号通过空间耦合交变磁场或电磁场实现无接触信息传递并通过所传递的信息达到识别目的的技术。射频识别是无线电识别的简称,它源于无线电通信技术,综合了现代计算机智能控制、智能识别等高新技术,顺应了电子商务、交通运输、物流管理的发展需要。是当前最受人们关注的技术之一。射频识别技术具有非接触、自动完成识别过程、不易损坏、可识别高速运动物体、数据存储量大等优点,极大地加速了有关信息的收集和处理,在近年来获得了极为迅速的发展6。212射频识别技术的分类RFID系统的分类方法主要有以下几种根据系统采用的频率不同可分成低频系统和高频系统。低频系统的工作频率一般小于30MHZ,典型的工作频率有125KHZ、1356MHZ等,其基本特点是成本较低、电子标签内存储的数据量较少、感应范围较小(无源情况,与读卡器距离约为10CM时才可感应)、电子标签外形多样(卡状、环状、笔状),不适合高速运动的物体等。高频系统的工作频率一般大于400MHZ,典型的工作频段有915MHZ、5800MHZ等,其基本特点是电子标签及阅读器成本较高、标签内保存的数据量较大、感应距离较远(可达几米至十几米)、外形一般为卡状、适应物体高速运动性能好等7。按射频卡有无电池可分为无源系统和有源系统。有源系统中电子标签内装有电池,一般具有较远的阅读距离,使用寿命取决于电池容量。无源系统中电子标签内无电池,一般识别距离短,但与有源系统相比,对工作环境要求不高并且寿命较长。根据工作方式的不同还可分为主动式和被动式。主动式系统主要用于有障碍物的应用中,距离更远可达30米;被动式系统主要在药盒系统或交通应用中。根据射频卡读写方式的不同可分成可读写RW卡、一次写入多次读出WORM卡和只读RO卡。RW卡成本较WORM卡和RO卡相比要高,而且写入数据所花费的时间要远大于读取数据所花费的时间。用户可以一次性将信息写入WORM卡,写入后数据不能改变。RO卡存有一个唯一的号码。只可读取,不能修改,虽然安全性较高,但用途有限。213射频识别系统的典型结构典型RFID系统(如图21所示)由应答器(TAG)、读写器(READANDWRITEDEVICE)以及计算机系统等组成。读写器由无线收发模块、天线、控制模块及接口电路等组成。应答器也称电子标签,它具有可存储读写信息及对信息进行加密的能力,是射频识别系统主要的核心。在阅读器的感应范围之外,电子标签无源无法工作,只有在阅读器感应范围之内,电子标签才是有源的。应答器工作所需的能量,是通过读写器的耦合单元传输给应答器的。应答器如果是无源系统,即应答器内不含电池,则应答器工作的能量是由读写器发出的射频脉冲提供8。应答器如果是有源系统,即应答器内含有电池,则应答器工作能量和工作寿命有电池决定。图21RFID系统结构214射频识别系统的工作原理实用RFID系统为无源系统,即射频卡能量由读写器发出的射频脉冲信号提供。无源系统的通信优劣取决于读写器发出的脉冲信号能否被射频卡完整接受。当射频卡进入读卡器接受范围后,如果接收到读卡器发出的射频信号,就能凭借产生的感应电流所获得的能量发送出存储在卡片中的信息,通过读卡器的处理,将信息送至信息管理系统进行有关数据处理9。22ZIGBEE技术概述221ZIGBEE技术介绍ZIGBEE这个名字来源于蜂群使用的赖以生存和发展的通信方式蜜蜂通过跳ZIGZAG形状的舞蹈来分享新发现的食物源的位置、距离和方向等信息。ZIGBEE是最近提出的一种近距离、低复杂度、低功耗、低数据速率、低成本的双向无线通信技术,主要适用于自动控制和远程控制领域,是为了满足小型廉价设备的无线联网和控制而制定的ZIGBEE工作于24GHZ全球流行、915MHZ美国和868MHZ欧洲三个频段上,并分别具有250KBIT/S、40BIT/S、20KBIT/S的数据传输速率。从能量和成本效率来看,不同的数据速率能为不同的应用提供较好的选择。ZIGBEE的传输距离大致在10300M,其中24GHZ的传输距离只有10M左右,915MHZ的传输距离可至3075M,而868MHZ时的传输距离可达300M。这个距离只是单段传输距离的理论值,实际的传输距离还必须要根据发射功率的大小、应用模式以及中继节点的使用情况而定。在组网性能上,ZIGBEE可以构造成星形网络或者点对点对等网络,在每一个ZIGBEE组成的无线网络中,连接地址码分为16B短地址或者64长地址,可容纳的最大设备个数分别为216个和264个,具有较大的网络容量4。在无线通信技术上,采用CSMACA方式,有效地避免了无线电载波之间的冲突,此外,为保证传输数据的可靠性,建立了完整的应答通信协议。ZIGBEE设备为低功耗设备,其发射输出为036DBM,通信距离为3070M,具有能量检测和链路质量指示能力,根据这些检测结果,设备可以自动调整设备的发射功率,在保证通信链路质量的条件下,最小地消耗设备能量。为保证ZIGBEE设备之间通信数据的安全保密性,ZIGBEE技术采用了密钥长度为128位的加密算法,对所传输的数据信息进行加密处理。222ZIGBEE技术的主要优点ZIGBEE网络架构具备主从MASTER/SLAVE属性,可以达到双向通信的功能。其优点如下(1功耗低。在工作模式时,ZIGBEE技术传输速率低,传输数据量很小,因此信号的收发时间很短;在非工作模式时,ZIGBEE节点处于休眠模式。设备搜索时延一般为30MS,休眠激活时延为15MS,活动设备信道接入时延为15MS。由于工作时间较短、收发信息功耗较低且采用了休眠模式,使得ZIGBEE节点非常省电,ZIGBEE节点的电池工作时间可以长达6个月到2年左右。(2低速率。ZIGBEE工作在20250KBPS的较低速率,分别提供250KBPS24GHZ、40KBPS915MHZ和20KBPS868MHZ的原始数据吞吐率,满足低速率传输数据的应用需求。(3数据传输可靠。ZIGBEE的媒体接入控制层MAC层采用TALKWHENREADY的碰撞避免机制。在这种完全确认的数据传输机制下,当有数据传送需求时则立刻传送,发送的每个数据包都必须等待接收方确认信息,并进行确认信息回复,若没有得到确认信息回复就表示发生了碰撞,将再传一次,采用这种方法可以提高系统信息传输的可靠性。(4近距离。传输范围一般介于10100M之间,在增加RF发射功率后,可增加到13KM。这指的是相邻节点间的距离。如果通过路由和节点间通信的接力,传输距离将可以更远5。(5短时延。ZIGBEE的响应速度较快,一般从睡眠转入工作状态只需15MS,节点连接进入网络只需30MS,进一步节省了电能。相比较,蓝牙需要310S、WIFI需要3S。(6网络容量大。ZIGBEE低速率、低功耗和短距离传输的特点使它非常适宜支持简单器件。ZIGBEE定义了两种器件全功能器件FFD和简化功能器件RFD。对全功能器件,要求它支持49个基本参数。而对简化功能器件,在最小配置时只要求它支持38个基本参数。一个ZIGBEE的网络最多包括有255个ZIGBEE网路节点,其中一个是主控MASTER设备,其余则是从属SLAVE设备。若是通过网络协调器NETWORKCOORDINATOR,整个网络最多可以支持超过64000个ZIGBEE网路节点,再加上各个NETWORKCOORDINATOR可互相连接,整个ZIGBEE网络节点的数目将十分可观。(7兼容性。ZIGBEE技术与现有的控制网络标准无缝集成。通过网络协调器COORDINATOR自动建立网络,采用载波侦听冲突检测CSMACA方式进行信道接入。为了可靠传递,还提供全握手协议。(8安全性。ZIGBEE提供了数据完整性检查和鉴权功能,在数据传输中提供了三级安全性。第一级实际是无安全方式,对于某种应用,如果安全并不重要或者上层已经提供足够的安全保护,器件就可以选择这种方式来转移数据。对于第二级安全级别,器件可以使用接入控制清单ACL来防止非法器件获取数据,在这一级不采取加密措施。第三级安全级别在数据转移中采用属于高级加密标准AES的对称加密。AES可以用来保护数据净荷和防止攻击者冒充合法器件。(9实现成本低。模块的初始成本估计在6美元左右,且很快就能降到1525美元,且ZIGBEE协议免专利费用。目前低速低功率的UWB芯片组的价格至少为20美元。而ZIGBEE的价格目前仅为几美分。(10免执照频段。采用直接序列扩频在工业科学医疗ISM频段,24GHZ全球、915MHZ美国和868MHZ欧洲。223ZIGBEE技术的主要特征ZIGBEE技术的主要特征见表21所示表21ZIGBEE技术的主要特征特性取值数据速率868MHZ20KBIT/S915MHZ40KBIT/S24GHZ250KBIT/S通信范围1020M通信时延15MS信道数868/915MHZ1124GHZ16频段868/915MHZ和24GHZ寻址方式64BITIEEE地址,8BIT网络地址信道接入CSMACA和时隙化的CSMACA温度4085224ZIGBEE网络拓扑结构和路由介绍ZIGBEE以一个个独立的工作节点为依托,支持3种通信设备的网络拓扑,即星状STAR、网状MESH和串(树)状CLUSTERTREE。无论是哪一种网络拓扑结构,每个独立的网络的都有一个唯一的标识符,即网络号(PAN标识符)。利用PAN标识符,采用16位短地址码进行网络设备间的通信,并且可激活网络设备之间的通信。其中,STAR星形网络是一种常用且适用于长期运行使用操作的网络;MESH网络是一种高可靠性检测网络,它通过无线网络连接可提供多个数据通信通道,即它是一个高级别的冗余性网络,一旦设备数据通信发生故障,则存在另一个路径可供数据通信,这一点和ZWAVE一样;CLUSTERTREE网络是STAR/MESH的混合型拓扑结构,结合了上述两种拓扑结构的优点。每个节点的功能并非都相同。为降低成本,系统中大部分的节点为子节点,从组网通信上,它只是其功能的一个子集,称为半功能设备(RFD);而另外还有一些节点,负责与控制的子节点通信、汇集数据和发布控制、或起到通信路由的作用,称之为全功能设备(FFD),如图22为ZIGBEE为网络拓扑结构,实际中根据需要选择合适的网络结构。星型图22ZIGBEE网络拓扑结构网络协调器每个网络中都有唯一的一个协调器,它相当于现在局域网中的服务器,包含所有的网络消息,具有对本网络的管理能力,是3种设备类型中最复杂的一网状型簇状型网络协调器全功能设备,FFD精简功能设备,RFD种,存储容量最大、计算能力最强。其功能为发送网络信标、建立一个网络、管理网络节点、存储网络节点信息、寻找一对节点间的路由消息以及不断地接收信息6。全功能设备FULLFUNCTIONDEVICE,FFD它是网络协调者,可以形成网络,让其它的FFD或精简功能设备(RFD)连结,FFD具有控制器的功能,可提供信息双向传输。附带有标准指定的全部802154功能和所有特征,更多的存储器、计算能力可使其在空闲时起网络路由器作用,也能用作终端设备。精简功能设备REDUCEDFUNCTIONDEVICE,RFDRFD只能传送信息给FFD或从FFD接收信息。附带有限的功能来控制成本和复杂性;在网络中通常用作终端设备;ZIGBEE相对简单的实现自然节省了费用;RFD由于省掉了内存和其他电路,降低了ZIGBEE部件的成本,而简单的8位处理器和小协议栈也有助于降低成本。表22为全功能设备与简化功能设备的比较7。表22全功能设备与简化功能设备的比较设备类型拓扑类型可否成为协调器通话对象全功能设备(FFD)星形,树形,网状可以任何ZIGBEE设备简化功能设备(RFD)星形不可以只能与协调器通话树形分簇网络是对等通信拓扑结构应用的例子之一。分簇网络结构是对等结构的一个特例,其中大多数器件是全功器件FFD。由于在同一时间内只能与唯一的FFD联络,少数的缩减功能器件RFD在分簇结构中作为树形分支的末端器件。任一FFD器件可以作为协调器提供同步服务给其它器件或协调器。但只有一个可以作为整个APN的协调器,它应当比PAN中的其它器件具有更多的计算资源。PAN协调器通过将簇标识符设为0、选择一个未使用的PAN标识符、向网上邻居广播信标帧来建立第一个簇,同时将自己设为簇头CLD。接收到信标帧的器件可以申请加入簇。如协调器允许加入,则将器件作为子器件加入网上邻居列表中。而新加入的器件会将簇头作为父器件加入其网上邻居列表中,并开始定期传输信标。其它器件可以通过此器件加入簇。最简单的分簇结构是单簇网络,但稍大的网络有能力有多个互为邻居的簇而形成网状结构。每一个簇的簇头需要找出与其它簇相连接的网关节点,簇中节点与其它簇中节点相互通信的过程是簇中的某一个成员节点首先将数据发至簇头,然后由簇头再将其转发到网关节点,由网关节点转发至其它簇中,再由其簇头转发至目的节点。在星状网络中,所有的节点只能与协调器进行通信,相互之间的通信是禁止的。而在网状网络中,全功能设备节点之间是可以相互通信的,每个全功能设备节点都具有路由功能,半功能节点只与就近的全功能节点进行通信。在路由选择和路由维护时,ZIGBEE的路由算法使用了路由成本的度量方法来比较路由的好坏。成本,即众所周知的链路成本,与路由中的每一个链路相关。组成路由的链路成本之和为路由成本。ZIGBEE路由和协调器需要对路由表进行维护。ZIGBEE路由和协调器也可以保存一定数量的入口,仅仅在路由维护时使用这些入口,或者在耗尽所有其他的路由容量的情况下使用这些入口。路由选择是在网络中的设备相互合作条件下选择,并建立路由的一个流程,该流程通常与特定的源地址和目的地址想对应。路由选择包括以下一些流程(1)路由搜索的初始化。(2)接收路由请求命令帧。(3)接收路由应答命令帧。23非接触式读卡芯片MFRC522231MFRC522概述MFRC522是应用于1356MHZ非接触式通信中高集成读写卡系列芯片中的一员,是NXP公司推出的一款非接触式读写卡芯片。MFRC522利用了先进的调制和解调的技术,完全集成了在1356MHZ下所有类型的通信协议,支持多种工作在1356MHZ下的射频卡读写操作10。其内部发送器部分可驱动读写器天线与射频卡和应答机的通信,无需其它的电路。232MFRC522特性1)高集成度的调制解调电路2)支持ISO/IEC14443TYPEA和MIFARE通信协议3)支持多种工作频率为1356M的射频卡的信息读写4)支持在线SPI编程5)双向数据传输速率高达424KBIT/S6)64字节的发送和接收缓冲区7)灵活的中断模式8)可编程定时器9)内部振荡器,晶振频率为2712MHZ10)采用相互独立的多组电源供电,提高工作的稳定性及安全性11)采用硬件掉电、软件掉电和发送器掉电3种节电模式11233MFRC522管脚排列MFRC522管脚如图23所示图23MFRC522引脚图3药盒系统硬件设计本电路是由STC89C52单片机为控制核心,射频卡信息由MFRC522模块读出,通过MCU在LCD12864上显示。整个药盒系统系统框图如图31所示。图31药盒系统框图31STC89C52主控模块311STC89C52简介STC89C52是宏晶科技发行的一款兼容标准MCS51指令系统,工业80C51产品指令和引脚完全兼容的51单片机。传统的8051系列单片机只有128256个字节RAM可使用,对于工程量较大的程序设计时往往会不够用。而STC89C52RC系列单片机扩展了256个字节RAM,拓展的容量,在应用中渐渐取代传统单片机被广泛应用。STC89C52还拥有8K字节在线可编程的FLASH存储器、支持在线SPI编程、32个双向数据I/O口线、两个16位定时器/计数器和全双工UART串行通道2。312STC89C52主要特性1)与MCS51兼容2)寿命1000次擦/写3)全静态工作0HZ24HZ服务器ZIGBEE模块ZIGBEE模块AT89C52单片机RFID模块LCD12864时钟模块4)512M内部RAM5)32双向数据I/O线6)两个16位定时器/计数器7)5个中断源8)可编程串行通道9)芯片内自带振荡器和时钟电路3313STC89C52管脚说明图32STC89C52管脚图VCC电源电压。GND接地。P0口P0口为一个8位双向I/O口,内部不提供上拉电阻。连接电路时需外接上拉电阻。P0口缓冲器能接受输出8TTL门电流。当P0口的管脚第一次写入“1”时,被定义为高阻输入。P0能够作为外部程序数据存储器,暂时存储外部输入数据而不需反复输入。P1口P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。由于内部上拉的缘故,P1口管脚写入“1”后,其管脚电平被上拉电阻拉高,此时管脚用作输入。P1口被上拉电阻下拉为低电平时,此时管脚作为将输出电流端口用。P2口P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收输出4个TTL门电流。由于内部上拉的缘故,当P2口被写“1”时,其管脚电平被上拉电阻拉高,且作为输入。P2口被上拉电阻下拉为低电平时,此时管脚作为将输出电流端口用。在FLASH编程和校验时,P2口用来接收高八位地址和控制信号。P3口P3口是一个具有内部上拉电阻的8位双向I/O口,P3口缓冲器可接收输出4个TTL门电流。对P3口管脚写入“1”时,其管脚电平被上拉电阻拉高,此时可以作为输入口使用。P3口也作为STC89C52的第二功能使用14。具体功能如表31所示表31P3口功能表端口引脚第二功能P30RXD(串行输入口)P31TXD(串行输出口)P32INT0(外部中断0)P33INT1(外部中断1)P34T0(记时器0)P35T1(记时器1)P36WR(外部数据存储器写选通)P37RD(外部数据存储器读选通)RST复位输入,高电平有效。当需对器件进行复位时,要保持RST脚两个机器周期的高电平时间。ALE/PROGALE是地址锁存允许信号端,低电平有效。在FLASH编程期间,此引脚用于输入编程脉冲。PORG为编程脉冲的输入端。当ALE/PROG接上低电平的时候,单片机对外部存储器进行数据读取时,用来锁住地址线的低位地址。/PSEN外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP当/EA保持低电平时,在此期间数据输入都存入外部程序存储器,不管内部程序存储器是否有空间存储数据。XTAL1反向振荡放大器的输入及外部时钟工作电路的输入。XTAL2反向振荡放大器的输出及外部时钟工作电路的输出。314STC89C52最小系统接口电路单片机最小系统接口电路如图33所示图33最小系统接口图图33最小系统接口图32LCD12864液晶显示模块321LCD12864简介带中文字库的12864是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有简体中文字库的图形液晶显示模块,内部含8192个汉字,其显示分辨率为1286415。利用该模块灵活的接口方式,通过简单的代码编写,可在界面上显示汉字和图形。而且由于其工作电压和功率较同类型显示图形汉字的点阵模块低,且硬件电路和程序都简单的多,因此LCD12864与同类型点阵相比,有更广阔的市场。322LCD12864分类12864点阵液晶显示屏有三种控制器,分别是KS0107(KS0108)、T6963C和ST7920。三种控制器主要区别是KS0107(KS0108)不带任何字库、T6963C带ASCII码,使用前两种LCD若要显示汉字,则需要通过字模软件,将汉字取模后进行编译才可显示,而ST7920自带国标二级字库(8千多个汉字),可自动显示汉字。以此,在需要显示字的情况下,使用ST7920控制器的12864更受欢迎。32312864管脚说明表3212864管脚功能管脚号管脚名称方向管脚功能描述1VSS电源地2VCC电源正3VOLCD驱动电压输入端4RSCSH/L并行的指令/数据选择信号;串行的片选信号5R/WSIDH/L并行的读写选择信号;串行的数据口6ESCLKH/L并行的使能信号;串行的同步时钟7DB0H/L数据08DB1H/L数据19DB2H/L数据210DB3H/L数据311DB4H/L数据412DB5H/L数据513DB6H/L数据614DB7H/L数据715PSBH/L并串行选择口H并口方式,L串行方式16NC空脚17/RESETH/L复位端,低电平有效18NC空脚19AVDD背光源正端(5V)20KVSS背光源负端(0V)LCD连接电路中,两侧1、2和20、19脚分别接地和5V。V0为LCD驱动电压输入端,与一个三端滑动变阻器相连,这样通过调整V0端输入电压,可实现对LCD液晶屏对比度的调整,它决定了LCD能否正常显示数据及显示的效果14。324LCD12864基本特性(1)显示分辨率12864点(2)内置128个168点阵字符(3)内部含有繁体、简体中文字库,包括含8192个汉字(4)低电源电压(VDD3055V)(5)2MHZ时钟频率(6)显示方式STN、正显、半透(7)工作温度055,存储温度2060(8)通讯方式串行、并行(9)内置转换电路,无需转换电压或外加负压132512864与89C52接口电路图33串口通讯电路设计单片机与上位机的数据通信是通过串行口进行通信的,由于上位机是RS232电图3412864与MCU接口电路平,单片机使用的是COMS/TTL电平,因此计算机与单片机接口必须进行RS232电平和COMS/TTL电平的转换。RS232是异步串行通信中应用最早的,也是最广泛的标准串行总线之一。它原是基于公用电话网的一种串行通信标准,推荐电缆的最长长度为15M。它的逻辑电平与公共地址对称,其逻辑0电平规定在325V之间,逻辑1电平则在325V之间,因而它需要使用正负极性的双电源。而传统的COMS/TTL电平,逻辑电平是以地为标准不对称设置,其逻辑0电平规定小于07V,逻辑1电平规定大于32V。因此两者之间的逻辑电平不兼容,两者之间通信时必须进行电平转换。进行电平转换最典型的芯片就是MAXIM的MAX232芯片,其内部电荷泵电路先将5V提升到10V,然后再用电压反转电路将10V变成10V,这样就得到了RS232所需的10V的电压了。本设计中,通过单片机的10引脚P30RXD、11引脚P31TXD与电平转换芯片MAX232的9引脚R2OUT、10引脚T2IN相连接,MAX232的7引脚T2OUT、8引脚R2IN与9针D型插座2RXD引脚、3TXD引脚相连,MAX232的5引脚接地。9针D型插头与计算机的9针D型插头相连接来实现单片机与计算机通信的硬件连接。所使用的器件有MAX232芯片一块、C4、C5、C6、C7、C8为10F电解电容,一个9针D型插座。串口通信电路原理图如图35所示。图35串口通讯电路原理图34报警电路设计在本设计中,需要用到报警电路,当到了用药时间,就会进行报警。采用蜂鸣器和LED灯(红)作为报警电路的主要器件,将蜂鸣器的正端连接到5V电源上,负端连接到三级管的发射极,集电极连接到地端,基极连接到1K电阻的一端另一端连接到单片机的26引脚上。当给0时蜂鸣器响,当给1时蜂鸣器不响。将LED(红)灯的正端通过300的电阻连接到5V电源上,负端连接到单片机的17引脚上。当给17引脚送0时,LED(红)灯亮,送1时LED(红)灯灭。在本设计中,三级管起到开关作用,与三级管相连的1K电阻是为了保护三级管,防止电流过大而烧毁三级管。与LED灯相连的300电阻也是起保护LED灯的作用。报警电路原理图如图36所示。图36报警电路原理图35本章小结本章对系统的外围电路进行了分析。图37为完整的电路图图37完整电路原理图4药盒系统系统软件设计41KEILC51开发系统KEILC51是英国KEILSOFTWARE公司出品的51系列兼容单片机C语言软件开发系统。KEILC51软件以其丰富的库函数、强大的开发功能和超高的代码生成率成为单片机C51开发所用到的主要调试工具7。C51有6种编译时间库,支持绝大部分ANSICC函数,它们适用于不同的应用存储模式。6种库文件如表41所示表41C51六种库文件库文件说明C51SLIB小模式,无浮点计算C51LLIB大模式,无浮点计算C51CLIB紧凑模式,无浮点计算C51FPSLIB小模式,有浮点计算C51FPLLIB大模式,有浮点计算C51FPCLIB紧凑模式,有浮点计算KEILC51程序编译界面如图41所示图41KEIL编译界面42LCD显示程序设计这里采用8位并行接口方式对12864进行操作,D0D7与单片机P00P07对接,由89C52的P0端口作为数据的输入端口。对RS、PSB等控制引脚进行定义SBITRSP10SBITWRDP11SBITEP12SBITPSBP13SBITRESP14421LCD初始化图42LCD初始化流程图422LCD显示1)BF的判断本程序作用是用来判断LCD当前状态,BF状态字决定了LCD模块的工作状态,当处于忙状态时,此时模块不接受外部指令和数据,BF0时,模块为准备状态,可对外部指令和数据进行处理。因此,对LCD进行操作之前,要对其工作状态进行判断。2)写指令和数据在写数据和指令之前,先对LCD状态进行判断。当BF0,即LCD非忙时,即可进行写入指令和数据的操作。写入指令还是数据由RS,RW,EP三个引脚来确定。当三个引脚分别为1,0,0时,为写入数据模式;三个引脚为0,0,0时,为写入指令模式。3)显示43射频控制模块431设计框图图43LCD显示流程图YN图44设计框图流程图432工作过程对卡的操作分成四步寻卡防冲突选卡读/写卡;/MIFARE_ONE卡片命令字DEFINEPICC_REQIDL0X26/寻天线区内未进入休眠状态DEFINEPICC_REQALL0X52/寻天线区内全部卡DEFINEPICC_ANTICOLL10X93/防冲撞DEFINEPICC_ANTICOLL20X95/防冲撞DEFINEPICC_AUTHENT1A0X60/验证A密钥DEFINEPICC_AUTHENT1B0X61/验证B密钥DEFINEPICC_READ0X30/读块DEFINEPICC_WRITE0XA0/写块DEFINEPICC_DECREMENT0XC0/扣款初始化MFRC522请求操作有碰撞反碰撞操作选择卡通过验证显示卡信息卡的数据操作开始结束YNNYDEFINEPICC_INCREMENT0XC1/充值DEFINEPICC_RESTORE0XC2/调块数据到缓冲区DEFINEPICC_TRANSFER0XB0/保存缓冲区中数据DEFINEPICC_HALT0X50/休眠/MF522命令字DEFINEPCD_IDLE0X00/取消当前命令DEFINEPCD_AUTHENT0X0E/验证密钥DEFINEPCD_RECEIVE0X08/接收数据DEFINEPCD_TRANSMIT0X04/发送数据DEFINEPCD_TRANSCEIVE0X0C/发送并接收数据DEFINEPCD_RESETPHASE0X0F/复位DEFINEPCD_CALCCRC0X03/CRC计算MFRC522发送与接收卡数据暂存于FIFO中;(1)寻卡参数说明REQ_CODEIN寻卡方式0X52寻感应区内所有符合14443A标准的卡0X26寻未进入休眠状态的卡向FIFO中写入PICC_REQIDL命令,通过PCD_TRANSCEIVE命令将FIFO中数据通过天线发送出去,此时若有卡在天线作用范围内,将识别命令,并返回卡类型;卡类型(TAGTYPE)0X4400MIFARE_ULTRALIGHT0X0400MIFARE_ONES500X0200MIFARE_ONES700X0800MIFARE_PROX0X4403MIFARE_DESFIRE关于下面两条命令的区别DEFINEPICC_REQIDL0X26/寻天线区内未进入休眠状态DEFINEPICC_REQALL0X52/寻天线区内全部卡第一条命令读取完卡后还会再次读取;第二条命令读取完卡后会等待卡离开开线作用范围,直到再次进入。(2)防冲突功能防冲撞参数说明PSNROUT卡片序列号,4字节返回成功返回MI_OK向FIFO中写入PICC_ANTICOLL0X20,通过PCD_TRANSCEIVE命令将FIFO中数据通过天线发送出去,卡返回卡序列号(共5字节,第5字节是卡序列号校验码);由于是非接触式的,同一时间天线作用范围内可能不只一张卡时,即有多于一张的MIFARE1卡发回了卡序列号应答,则发生了冲突。此时,由于每张卡的卡序列号各不相同,MCM接收到的信息即卡序列号至少有1位既是0又是1即该位的前、后半部都有副载波调制,MCM找到第1个冲突位将其置1排除该位为0的卡,然后查第2个,依次排除,最后不再有冲突的SN即为被选中的卡。(3)选卡功能选定卡片参数说明PSNRIN卡片序列号,4字节返回成功返回MI_OK向FIFO中写入PICC_SELECTTAG0X70卡序列号,通过PCD_TRANSCEIVE命令将FIFO中数据通过天线发送出去,卡返回卡容量(对于MIFARE1卡来说,可能为88H或08H);(4)对卡EEPROM读写之前要进行认证STATUSMFRC522_AUTHPICC_AUTHENT1A,BLOCKADDR,SECTORKEYABLOCKADDR/4,SERNUM/认证向FIFO中写入PICC_AUTHENT1A/PICC_AUTHENT1B块地址扇区密码卡序列号,通过PCD_TRANSCEIVE命令将FIFO中数据通过天线发送出去,MIFARE1卡的密码认证方式A环由MIFARE1卡片向读写器发送一个随机数据RB。B环由读写器收到RB后向MIFARE1卡片发送一个令牌数据TOKENAB,其中包含了用读写器中存放的密码加密后的RB及读写器发出的一个随机数据RA。C环MIFARE1卡片收到TOKENAB后,用卡中的密码对TOKENAB的加密的部分进行解密得到RB,并校验第一次由A环中MIFARE1卡片发出去的随机数RB是否与B环中接收到的TOKENAB中的RB相一致;若读写器与卡中的密码及加密/解密算法一致,将会有RBRB,校验正确,否则将无法通过校验。D环如果C环校验是正确的,则MIFARE1卡片用卡中存放的密码对RA加密后发送令牌TOKENBA给读写器。非接触式IC卡读写器MIFARE1卡片图45三次相互认证原理框图(A)RBBTOKENABDTOKENBACEE环读写器收到令牌TOKENBA后,用读写器中存放的密码对令牌TOKENBA中的RA随机数进行解密得到RA;并校验第一次由B环中读写器发出去的随机数RA是否与D环中接收到的TOKENBA中的RA相一致;同样,若读写器与卡中的密码及加密/解密算法一致,将会有RARA,校验正确,否则将无法通过校验。如果上述的每一个环都为“真”,且都能正确通过验证,则整个的认证过程将成功。读写器将允许对刚刚认证通过的卡片上的这个扇区进入下一步的操作读/写等操作。(5)写数据功能写数据到M1卡一块参数说明ADDRIN块地址PDATAIN写入的数据,16字节返回成功返回MI_OK向FIFO中写入PICC_WRITE块地址,通过PCD_TRANSCEIVE命令将FIFO中数据通过天线发送出去。读数据BLOCKADDR1数据块读数据STATUSMFRC522_READBLOCKADDR,STRIFSTATUSMI_OKFORI0I16IUART1_SENDONECHARSTRI向FIFO中写入PICC_READ块地址,通过PCD_TRANSCEIVE命令将FIFO中数据通过天线发送出去。44结果通过串口接收到数据如下0400AFA73E00360801020304000000000000000000000000分别为卡类型、卡序列号、卡容量及块1的16字节数据。5实物图51定时提醒52LCD显示图51定时提醒实物图图52LCD显示实物图致谢经过三个多月的努力,终于完成了这次的毕业设计作品,由于经验的缺乏,此次设计中难免有许多考虑不周全的地方,如果没有导师的督促指导,以及同学们的帮助,想要完成这个设计的难度是极大的。在这里首先要感谢我的指导老师。从课题确定开始,查阅资料,设计草案的确定和修改,中期检查,后期详细设
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论