一种射频卡译码软件设计毕业_第1页
一种射频卡译码软件设计毕业_第2页
一种射频卡译码软件设计毕业_第3页
一种射频卡译码软件设计毕业_第4页
一种射频卡译码软件设计毕业_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

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

文档简介

Goodisgood,butbettercarriesit.

精益求精,善益求善。Goodisgood,butbettercarriesit.

精益求精,善益求善。一种射频卡译码软件设计毕业摘要摘要摘要射频识别技术(RFID,RadioFrequencyIdentification)是自动识别技术中的一种,通过无线射频方式进行非接触双向数据通信,对目标加以识别并获取相关数据。RFID的最大优点就在于非接触。在完成识别工作时不需要人工干预,不需要直接接触。RFID系统可工作于各种恶劣环境,可识别高速运动物体并可同时识别多个标签。标签操作快捷方便,实现了无源和免接触操作。标签无机械磨损,寿命长,数据安全性高。它广泛应用于学校、公共交通、门禁、电子钱包、医疗等领域。本文概括的介绍了射频识别系统的基本组成,基本工作原理以及数字通信等相关理论知识。重点讨论了由标签EM4100和基于U2270B的阅读器组成的125kHz的低频RFID系统的译码问题。论文首先对该系统的硬件部分做了详细的说明,给出了EM4100、U2270B和AT89C51的结构图以及引脚功能表,并设计了阅读器的典型工作电路。然后通过分析EM4100输出的曼彻斯特码的数据波形,根据曼彻斯特码的编码特点,提出了检测曼彻斯特码在半个位周期内跳变的方法进行译码的思路。最后译码软件确定分为四个模块分别设计。编程语言选用汇编语言。编码完成后,在仿真器上调试源代码。试验软件的功能是否达到预期的目的。实验证明,阅读器读卡稳定可靠,效果好。此译码方法快度、准确。在此基础上,对本论文所做的工作做了总结,指出所做工作的不足点,并展望RFID技术的发展,分析了本课题接下来还需要完善的工作和改进的地方。关键词:射频识别;曼彻斯特码;阅读器;译码AbstractRadiofrequencyidentificationtechnologyisakindofautomaticidentificationtechnology,radiofrequencythroughnon-contactformofbidirectionaldatacommunication,tothetargetrecognitionandaccesstorelevantdata.ThebiggestadvantageofRFIDisthatthenoncontact.Atthecompletionoftheidentificationworkdoesnotneedmanualintervention,withoutdirectcontact.RFIDsystemcanworkwithavarietyofharshenvironment,canidentifythehigh-speedmovingobjectsandcanalsoidentifymultipletags.Itisfastandconvenient,doesnotneedpowerandoperateswithoutanycontact.Ithasnomechanicalwear,longlife,highdatasafety.Itiswidelyusedinschools,publictransport,accesscontrol,electronicwallet,medicalandotherfields.ThispapergenerallyintroducesthebasiccompositionofRFIDsystem,thebasicworkingprincipleanddigitalcommunicationandotherrelevanttheoreticalknowledge.ItprimarilydiscussesthedecodingproblemoflowfrequencyRFIDsystemwhichconsistsofatagEM4100andcompositionofU2270Breaderbasedon125kHz.Thepaperfirstmakesadetaileddescriptionofthesystemhardware,givesthestructurechartofEM4100,U2270BandAT89C51andpinfunctiontable,anddesignatypicalworkingcircuitreader.ThenthroughtheanalysisoftheEM4100outputwaveformdataofManchestercode,accordingtotheencodingcharacteristicsofManchestercode,,andputforwardthemethodthatdetectsthejumpofManchestercodeinhalfacycle.Finallythedecodingsoftwaredeterminestobedividedintofourmodulesfordesign.Assemblylanguageisusedprogramminglanguage.Aftercodinghascompleted,sourcecodeisdebuggedinthesimulator.Thefunctionofthesoftwarewillbetestedifitachievestheintendedpurpose.Theexperimentsprovethatthereaderisstableandreliable.Itseffectisgood.Thisdecodingmethodisfast,accurate.Onthisbasis,theworkofdissertationissummarized,pointingouttheshortageofthework,expectingthedevelopmentofRFIDtechnology.Thethesisalsoanalyzesthesubjectwhereneedstoimproveandperfect.Keywords:RFID;Manchestercode;reader;decode目录15.2程序的仿真调试 40(2)ASCII码转换模块结束处设置断点 41(3)下一次读卡判断模块结束处设置断点 43RadioFrequencyIdentificationTechnologyIntroduction 471绪论1.1射频识别技术简介自动设备识别技术(AutomaticEquipmentIdentification)是目前国际上发展很快的一项新技术,大致可分为光学技术和无线电技术两个方面。目前广泛应用的自动识别技术有条形码、磁卡、IC卡、RFID卡。射频识别技术(RadioFrequencyIdentification,RFID)是20世纪90年代开始兴起的一种自动识别技术。RFID属于无线电通信范畴,基本物理原理就是通过无线电信号识别特定目标并获取相关的数据信息。即不需在识别系统与识别对象之间建立机械或光学接触,利用射频信号通过空间耦合(交变磁场或电磁场)实现无接触信息传递并达到识别目标的技术。RFID的识别工作不需要人工干预,可工作与各种恶劣环境,可识别高速运动物体,并可同时识别多个标签,操作快捷方便。1.2国际射频识别技术应用状况RFID在国外发展的很快。美国TI、Intel等集成电路厂商目前都在RFID领域投入巨资进行芯片开发。Symbol等公司已经研发出同时可以阅读条形码和RFID的扫描器。IBM、Microsoft和HP等公司也在积极开发相应的软件及系统来支持RFID技术的应用。目前,美国的交通、车辆管理、身份识别、生产线自动化控制,仓储管理及物资跟踪等领域已经开始逐步应用RFID技术。欧洲的Philips、STMicroelectronics公司在积极开发廉价的RFID芯片,Checkpoint公司在开发支持多系统的RFID识别系统,SAP公司则在积极开发支持RFID的企业应用管理软件。日本在RFID研究领域起步较早,政府也将RFID作为一项关键的技术来发展。2004年7月,日本经济产业省METI选择了七大产业做RFID技术的应用试验,包括消费电子、书籍、服装、音乐CD、建筑机械、制药和物流。韩国主要由产业资源部和情报通信部来推动RFID技术的发展。自2004年3月韩国提出IT839计划以来,RFID技术的重要性得到了进一步加强。1.3射频识别技术在中国的发展中国人口众多、经济规模不断扩大,RFID技术有着广阔的应用前景。近年来,中国已初步展示了RFID相关技术的研发及产业化工作,并在部分领域开始应用。中国已经将RFID技术应用于铁路车号识别、身份证和票证管理、动物标识、特种设备与危险品管理、公共交通以及生产过程管理等多个领域。目前,我国RFID应用以低频和高频标签产品为主,如城市一卡通和中国第二代身份证等项目。我国超高频标签产品的应用刚刚兴起,还未开始规模生产,产业链尚未形成。2RFID系统的工作原理2.1RFID系统的组成一个RFID系统由三个部分组成:电子标签、阅读器和应用软件系统。(1)电子标签电子标签(Tag),也称应答器(answer)、射频卡(radiocard)、感应卡(inductioncard)、智能卡(smartcard)或非接触式IC卡(contactlessICcard)等。电子标签通常由三部分组成:读写电路、硅芯片以及相关的天线。它能够接受并发送信号,与外部的电磁波相互作用并进行数据传输。标签根据供电方式可分为有源RFID标签、无源RFID标签和半有源半无源RFID标签;根据工作方式分为主动标签和被动标签;根据工作频率分为低频、中高频和超高频标签。RFID标签可以做成卡状、环状、钥匙扣等多种形式。(2)阅读器阅读器(Reader),也称为接收器(receiver)、检测器(detector)、基站(basisstation)、读写器(readwritedevice)等。阅读器包含有RFID模块(发送器和接收器)、控制单元以及阅读器天线。RFID模块实现将阅读器发往标签的命令调制到射频信号上,经由天线发送出去;也实现将标签返回的信号进行解调,提取标签回送的数据。控制模块实现将智能单元发出的命令编码以便于调制到射频信号上;也实现将射频模块解调的标签回送数据进行处理(也包括解码),并将处理结果送入阅读器智能单元。阅读器可以设计为手持式或固定式。(3)应用软件系统应用软件系统是在上位监控计算机中运行的包括数据库在内的管理软件系统,用于各种物品属性管理、目标定位和跟踪,具有良好的人机操作界面。一个RFID系统的基本组成如图2.1所示。标签天线阅读器标签天线阅读器阅读器通过线圈发送一定频率的标签进入电磁场时产生感应电流而电磁信号获得能量,向读卡器发送自身的遍码等信息计算机系统计算机系统读卡器将信息送至计算机处理图2.1RFID系统基本组示意成图2.2基本工作原理标签与阅读器之间通过耦合原件实现射频信号的空间(无接触)耦合,在耦合通道内,根据时序关系,实现能量的传递和数据的交换。标签与阅读器之间的耦合通过天线完成。首先,阅读器发送一定频率的无线电波能量给标签,用以驱动标签电路将内部的数据送出,此时阅读器便依时序接收解读数据,送给应用程序做相应的处理。标签与阅读器之间的耦合大致分为电感耦合和电磁反向散射耦合。在电感耦合系统中,阅读器和电子标签之间的射频信号实现为变压器模型,通过空间高频交变磁场实现耦合,该系统依据的是电磁感应定律。电感耦合方式的典型工作频率为125kHz,13.56MHz。标签与阅读器的工作距离一般在1m一下,典型作用距离为10~20cm。电磁反向散射耦合方式一般适用于高频、微波工作的远距离射频识别系统。2.3编码和调制图2.2所示为从信号传递角度考虑的RFID系统前向链路简明框图,而后向链路也与此类似,只是发送方和接收方进行了互换。噪声RFID标签阅读器噪声RFID标签阅读器指令指令信息基带信号译码载波调制无线信道基带信号编码基带信号译码载波调制无线信道基带信号编码载波调制图2.2从信号传递角度考虑的RFID系统前向链路简明框图从通信过程来看,阅读器的命令(二进制数据)首先要经过信号编码,转换成一定码型的基带信号(高低电平),然后经过调制器调制成射频载波信号通过天线信道传递给RFID标签,RFID标签中的解调器对调制信号进行解调,以再生基带信号。再生的基带信号经过译码,恢复出原来的阅读器命令内容以便进行后续处理。由于阅读器与标签之间的信息传递是双向的,所以相应的信号编码单元,调制器,解调器以及信号译码单元在阅读器和标签之间都存在。数字信号的传输分为基带传输和频带传输两种方式。信息发出的信号未经调制或频谱交换,直接在有效频带与信号频谱相对应的信道上传输的通信方式称为数字信号的基带传输。为了适应信道传输特性而将数字基带信号进行调制,即将数字基带信号的频谱搬移到某一载频处,变为频带传输的方式称为频带传输。2.3.1基带中的编码一般终端设备(如计算机,单片机)产生的电信号为单极性码,这种信号称为原始电信号。原始信号由于由直流分量等原因不适宜在基带系统信道中传输。原始信号必须经过编码变换为一定码型的基带信号后才适合在信道中传输。基带信号的码型多种多样,并不是所有的基带信号码型都适合在信道中传输。在RFID系统中常用的码型有曼彻斯特码和米勒码。本课题中使用的码型是曼彻斯特码。曼彻斯特码(Manchester码),又称为双相码。它的特点是每个码元用两个连续相反的脉冲表示。编码规则之一为:“0”用“01”两位码来表示,“1”用“10”两位码来表示。例如:消息码:1100101双相码:10100101100110曼彻斯特码是一种双极性波形,只有极性相反的两个电平。它在每个码元间隔中心点都存在电平跳变,所以含有丰富的定时信息,且没有直流分量,编码过程也简单。缺点是占用带宽加倍,使频带利用率低。2.3.2数字调制技术在实际通信中大多数信道都具有带通传输特性,不能直接传输基带信号,必须借助载波调制进行频率搬移,将数字基带信号变成适于信道传输的数字频带信号。调制就是使基带信号(调制信号)控制载波(没有被调制的电磁波,通常为正弦信号)的某个(几个)参数,使这一(或几)个参数按照基带信号的变化规律而变化的过程。调制后所得的信号称为已调信号或频带信号。经过调制后的已调信号应该具有两个基本特征:一是仍然携带消息;二是适合于信道传输。RFID系统使用的方式是数字调制方式。调制信号为二进制数字信号时的调制方式统称为二进制数字调制。二进制调制常分为二进制幅移键控(2ASK)、二进制频移键控(2FSK)和二进制相移键控(2PSK和2DPSK)三种。本课题中的RFID系统涉及到的是二进制幅移键控。下面做简要介绍。二进制幅移键控(2ASK)方法是数字调制技术中最早出现的,也是最简单的一种调制方法。(1)2ASK信号的时域表达假定载波信号C(t)=cos(wct),设信息源发出的序列是由二进制符号0和1组成,假设0符号出现的概率为P,1符号出现的概率为1-P,二者彼此独立。该二进制基带信号序列可表示为(2.1)式(2.1)中,Ts——二进制基带信号序列(码元)的时间间隔;g(t)——调制信号的脉冲表达式;an——二进制数字信号;其取值服从下述关系:0,出现的概率为Pan=(2.2)1,出现的概率为1-P则二进制振幅键控信号可以表示成一个单极性矩形脉冲序列与一个正弦形载波的相乘,它的时域表达式为(2.3)(2)2ASK信号的产生2ASK信号的产生方法有两种,如图2.3所示。图2.3(a)是通过二进制基带信号序列S(t)与载波直接相乘而产生2ASK信号的模拟调制法。图2.3(b)是一种键控法,这里的电子开关受调制信号S(t)的控制。开关电路cos(wct)S(t)S2ASK(t)S2ASK(t)cos(wct)S(t)(a)模拟调制法(b)键控法图2.32ASK信号的产生(3)2ASK信号的解调2ASK信号的解调可以采用非相干解调(包络检波法)和相干解调(同步检测法)两种方式来实现,如图2.4所示。其中,抽样判决器的最佳判决门限为a/2,与接收机的输入信号幅度a有关。抽样值大于a/2时,判为“1”。抽样值小于a/2时,判为“0”。图2.42ASK信号的接收系统组成方框图3125kHz的RFID系统125kHz的RFID系统属于低频RFID范围。它的特点是结构相对简单,成本较低(无论是阅读器还是标签卡片),数据量较少(几十到二百多位),传输速率较低(波特率一般低于10kb/s),操作范围在几厘米左右,应用范围广。本课题介绍的是比较普及的EM4100只读型标签芯片和U2270B基站(阅读器)芯片。3.1只读型芯片EM4100EM4100是瑞士EM公司生产的CMOS集成电路,用于只读型RFID标签的芯片。EM4100芯片为非接触式,无源,只读芯片,中心工作频率为125kHz。芯片通过线圈从外部电磁场获得供电和时钟。通过开通和断开调制电路,该芯片将发送出原先在工厂就写入存储阵列的64位信息。这是用激光写入硅片永久保存的每芯片唯一的编码。芯片的内部数据框图如图3.1所示。注:a处只有当psk方式时打开。图3.1EM4100内部结构框图(1)存储器阵列EM4100的存储器是EEPROM,存储容量为64位,分5组信息:9位用于前导,10行奇偶校验位(P0~P9),4列偶校验位(PC0~PC3),40个数据位(D00~D93),还有一个停止位S0设置为逻辑0,见图3.2。图3.2存储阵列中的64位数据前导是开始的9位,全是1。由于数据和奇偶校验的结合,这种序列不可能在数据串中重复出现。前导后面的10组四个数据位有100亿种组合,还有每行的偶校验位。最后一行是4列的偶校验位。S0是停止位,被写成0。位D00~D03和D10~D13是客户特定的识别码。64位串行输出控制调制器。当64位数据串输出后,这个序列输出又重复进行,直到掉电为止。(2)序列发生器给存储阵列寻址和对串行数据编码输出提供全部所需的信号。有三种掩膜编码方式可用。它们是曼彻斯特、双相位和PSK。前两种方式的波特率是载波频率(RF)的64或32分之一。本课题使用曼彻斯特码,波特率设置为载波频率的64分之一,即RF/64。3.2基站芯片U2270BU2270B是低频RFID读写基站的一款专用集成电路,由德国Temic公司生产(已转入ATMEL公司)。它的组成有:给标签收发器提供能量的发送电路,片内电源,振荡器和线圈驱动器,还有所有信号的处理电路;它们最终输出微处理器可以接收的信号。U2270B制作的基站适合对前面介绍的EM4100及其兼容的那些类型的标签。它是面世较早的一类IC,应用比较广泛。图3.3是U2270B与EM4100组建的低频RFID系统结构示意图。阅读器电子标签图3.3U2270B与EM4100芯片组建的RFID系统U2270B芯片封装外形见图3.4。引脚说明见表3.1。图3.4U2270B芯片封装外形表3.1U2270B引脚说明表引脚号符号功能引脚号符号功能1GND地线9Coil1线圈驱动器12Output数据输出10VEXT外部电源供应3数据输出使能11DVs驱动器电压4Input数据输入12Vbatt电池电压5MS共模/差分模式选择13Standby待命输入6CFE载波频率使能14Vs内部电源供电(5V)7DGND驱动器地线15RF频率调整8Coil2线圈驱动器216HIPASS高通滤波电容U2270B基站阅读器的基本性能如下:①载波频率fosc范围为100~150kHz。②fosc为125kHz时,典型的数据传送率为5kb/s。③适用的调制方式为曼彻斯特码和双相位码。④可由5V的稳压电源或车辆蓄电池供电。⑤调谐能力。⑥与微控制器有兼容的接口。⑦处于等待工作方式时,其功耗甚低。⑧有为微控制器供电的输出端。U2270B的内部结构如图3.5所示。图3.5U2270B的内部结构图下面简单介绍各功能快。(1)电源(powersupply)U2270B可以用单一的稳定电源,也可以用双电源或不规则的车载电源。其中+5V单电源是一般常用的。相应电路如图3.6和3.7所示。图3.6稳定的5V电源图3.7稳定的双电源(2)振荡器片内振荡器的频率可由馈入RF引脚的电流控制,频率调节电路如图3.8所示。通过改变电阻Rf的大小,可以对振荡器频率进行调节。由振荡频率f0,可用式(3.1)计算出电阻Rf。当振荡频率f0为125kHz时,电阻Rf的阻值为110kΩ。Rf=14375/f0(kHz)-5(kΩ)(3.1)图3.8频率调节电路的等效电路3.3微控制器AT89C51AT89系列单片机是ATMEL公司生产的8位Flash单片机。AT89系列单片机一共由7种典型型号。其中标准型号AT89C51作为AT89系列的主流机型,在嵌入式控制系统中获得广泛应用。AT89C51单片机与Intel80C51单片机在引脚排列、工作特性、硬件组成、指令系统等方面完全兼容。其主要工作特性是:内含4KB的Flash存储器,擦写次数1000次;内含128字节的RAM;具有32跟可编程I/O线;具有2个16位可编程定时器;具有6个中断源、5个中断矢量、2级优先权的中断结构;具有一个全双工的可编程串行通信接口;具有一个数据指针DPTR;两种低功耗工作模式,即空闲模式和掉电模式;具有三级程序锁定位;AT89C51的工作典型电源电压为5(10.2)V;AT89C51最高工作频率为24MHz。3.3.1单片机的基本组成单片机的基本组成如图3.9所示。下面简要说明各部分的组成及功能。(1)中央处理器单片机的中央处理器(CPU)是单片机的核心,完成运算和控制操作。中央处理器主要包括运算器和控制器两部分。图3.9单片机的基本组成(2)存储器单片机内部的存储器分为程序存储器和数据存储器。程序存储器主要用来存储指令代码和一些常数及表格。程序在开发调试成功后就永久性地驻留在程序存储器中,在机器断电状态下代码也不会丢失。程序存储器在操作运行过程中只读不写,因而又被称为只读存储器ROM(ReadOnlyMemory)。AT89C51单片机的程序存储器采用4KB的快速擦写存储器FlashMemory,编码和擦除完全是电气实现。编程和擦除速度快,可以使用通用的编程器脱机编程,也可在线编程。在单片机中,用随机存储器RAM(ReadAccessMemory)来存储程序运行期间的工作变量和数据,所以又被称为数据存储器。AT89C51单片机含有128×8位RAM,采用单字节地址。实际上片内的字节地址空间是256字节(00H~FFH),其中高128字节地址(80H~FFH)被特殊功能寄存器SFR占用,用户只能使用低128字节单元(00H~7FH)来存放可读写的数据。(3)外围接口电路CPU与外部设备的信息交换都需要通过接口电路来进行。这主要是为了解决CPU的高速处理能力和外部设备低速运行之间的速度匹配问题,并可以有效地提高CPU的工作效率;同时也提高了CPU的对外驱动能力。AT89C51单片机的外围接口电路主要包括:4个可编程并行I/O口,1个可编程串行口,2个16位的可编程定时器以及中断系统等。(4)时钟振荡电路时钟振荡电路是CPU所需要的各种定时控制信号的必备单元。CPU只有在时序信号和控制信号的协调工作下,才能执行各种指令。单片机芯片内部有时钟电路,但石英晶体和微调电容需要外接。AT89C51的晶振频率最高为24MHz。3.3.2引脚排列及功能AT89C51单片机的封装形式有PDIP,TQFP和PLCC等。图3.10为PDIP封装的引脚排列图。图3.10PDIP封装的AT89C51引脚排列图(1)电源引脚电源引脚主要负责单片机的供电,有两根引脚。VCC(Pin40):电源端,正电源接4.0~5.0V电压,正常工作电压+5V。GND(Pin20):接地端。(2)外接晶振或外部振荡器引脚外接晶振或外部振荡器引脚主要负责为单片机的运行提供时钟振荡器,主要有两根引脚。XTAL1(Pin19):时钟XTAL1脚,片内振荡电路的输入端。使用片内振荡器时,连接外部石英晶体和微调电容。XTAL2(Pin18):时钟XTAL2脚,片内振荡电路的输出端。使用片内振荡器时,连接外部石英晶体和微调电容。当使用外部振荡器时,引脚XTAL1接收外振荡器信号,XTAL2悬空。(3)输入输出(I/O)端口引脚AT89C51提供了4个8位并行I/O端口,部分引脚有扩展功能。分别介绍如下:P0口:即P0.0~P0.7(Pin39~Pin32)。8位,漏极开路的双向I/O口。P0口做通用I/O口使用时,需加上上拉电阻,变为准双向口。当作为普通输入时,应将输出锁存器置1。P0口可驱动8个TTL负载。P1口:即P1.0~P1.7(Pin1~Pin8)。8位,准双向I/O口,具有内部上拉电阻。在编程和校验时,可用作输入低8位地址。用作输入时,应先将输出锁存器置1。P1口可驱动4个TTL负载。P2口:即P2.0~P2.7(Pin21~Pin28)。8位,准双向I/O口,具有内部上拉电阻。P2口可做普通I/O口使用。用作输入时,应先将输出锁存器置1。P2口可驱动4个TTL负载。P3口:即P3.0~P3.7(Pin10~Pin17)。8位,准双向I/O口,具有内部上拉电阻。P3口可做普通I/O口使用。用作输入时,应先将输出锁存器置1。P3口可驱动4个TTL负载。P3口还提供各种替代功能,如表3.2所列。表3.2P3口的第二功能引脚替代功能说明P3.0RXD串行口数据输入(接收数据)P3.1TXD串行口数据输出(发送数据)P3.2外部中断0申请P3.3外部中断1申请P3.4T0定时器0的外部输入(计数输入)P3.5T1定时器1的外部输入(计数输入)P3.6外部数据存储器写选通P3.7外部数据存储器读选通(4)复位、控制和选通引脚复位、控制和选通引脚主要负责单片机程序复位、编程控制及外部程序存储器的选通。RST(Pin9):复位输入信号,高电平有效。在振荡器稳定工作时,在RST脚施加两个机器周期(即24个晶振周期)以上的高电平,将器件复位。(Pin30):ALE为地址锁存使能端和编程脉冲输入端。(Pin29):访问外部程序存储器选通信号,低电平有效。(Pin31):为访问内部或外部程序存储器选择信号。当接Vcc时,对ROM的读操作从内部程序存储器开始,并可延续至外部程序存储器。3.3.3存储器结构AT89系列单片机的存储器特点之一是将程序存储器和数据存储器分开,并有各自的存储空间和访问指令。这种结构的单片机称为哈佛(Harvard)型结构单片机。AT89C51有4个存储空间:片内ROM、片外ROM、片内RAM、片外RAM。其结构如图3.11所示。图3.11AT89C51存储器结构(1)程序存储器程序存储器是只读存储器,用于存放程序代码和表格常数。AT89C51片内的ROM为4KB的FlashMemory,地址为0000H~0FFFH。AT89C51有16位地址线,寻址空间为64KB,地址范围为0000H~FFFFH。为了满足不同应用的需要,可以进行外部ROM扩展。(2)数据存储器数据存储器是RAM型存储器,用于暂存数据和运算结果等。RAM分为片内RAM和片外RAM。片外RAM用16位地址指针DPTR寻址。最大地址空间是64KB,地址范围为0000H~FFFFH,用MOVX指令访问。片内RAM的地址范围是00H~FFH,用MOV指令访问。片内RAM结构如图3.12所示。图3.12片内RAM的结构片内RAM可划分为两部分:0H~7FH为低128字节地址;80H~FFH为高128字节地址。低128字节地址还可分为三个区域:00H~1FH:通用寄存器区。可供用户用于数据运算和传送过程中的暂存单元。通用寄存器可划分为4个区:0区(00H~07H)、1区(08H~0FH)、2区(10H~17H)、3区(18H~1FH)。每个区有8个通用寄存器R0~R7。每个寄存器可以用寄存器的名称寻址,也可以用直接字节地址(00H~1FH)寻址。20H~2FH:位寻址区,共16字节,128位。这些单元可以按字节操作,也可以按位操作。30H~7FH:字节寻址区,共80字节,用户使用的一般RAM,可在此开辟堆栈。高128字节片内RAM,地址空间为80H~FFH地址单元,为特殊功能寄存器(SFR)区。SFR的功能是固定的,用户不能更改。AT89C51共有21个SFR,分散在片内RAM的高128字节中。每个SFR的名称和地址列于表3.3中。表3.3特殊功能寄存器一览表寄存器符号地址寄存器名称*ACCE0H累加器*BF0HB寄存器*PSWD0H程序状态字SP81H堆栈指示器DPL82H数据指针低8位DPH83H数据指针高8位*IEA8H中断允许控制寄存器*IPB8H中断优先控制寄存器*P080HI/O口0*P190HI/O口1*P2A0HI/O口2*P3B0HI/O口3PCON87H波特率选择寄存器*SCON98H串行口控制寄存器SBUF99H串行数据缓冲寄存器*TCON88H定时器控制寄存器TMOD89H定时器方式选择寄存器TL08AH定时器0低8位TL18BH定时器1低8位TH08CH定时器0高8位TH18DH定时器1高8位*寄存器即可以字节寻址,也可以位寻址。3.3.4单片机的最小系统(1)复位电路复位是单片机的初始化操作。其主要功能是将程序计数器PC初始化为0000H,使单片机从0000H单元开始执行程序。复位操作也可使处于死机状态的单片机重新开始运行。单片机复位的原理是在时钟电路开始工作后,在单片机的RST引脚施加24个时钟振荡脉冲(即两个机器周期)以上的高电平,单片机便可以实现复位。在实际应用中,一般采用外部复位电路来进行单片机复位。一般在RST引脚保持10ms以上的高电平,保证单片机能够可靠的复位。单片机的复位电路可以有上电复位、手动复位、手动加上电复位等复位电路。在实际应用的电路中,一般采用即可以手动复位,又可以上电复位的电路,这样可以人工复位单片机系统。这种电路如图3.13所示。上电复位部分的原理也是RC电路的充放电效应。除了系统上电的时候可以给RST引脚一个短暂的高电平以外,当按下按键开关的时候,Vcc通过一个电阻连接到RST引脚,给RST一个高电平;按键松开的时候,RST引脚恢复为低电平,复位完成。图3.13手动加上电复位电路(2)时钟振荡电路振荡器时钟电路用于产生单片机正常工作时所需要的时钟信号。单片机可以采用内部时钟模式和外部时钟模式。内部时钟模式是采用单片机内部振荡器来工作的模式。当单片机工作于内部时钟模式的时候,只需要在XTAL1和XTAL2引脚接一个晶体振荡器或陶瓷振荡器,并接两个电容后接地即可,如图3.14所示。对电容的要求:当外界晶体振荡器时,电容值一般选择C1=C2=3010pF;当外界陶瓷振荡器时,电容值一般选择C1=C2=4010pF。外部时钟模式采用外部振荡器产生时钟信号,直接提供给单片机使用。AT89C51采用CMOS工艺,外部时钟信号接XTAL1引脚,XTAL2引脚悬空。如图3.15所示。图3.14内部时钟电路图3.15外部时钟电路(3)单片机的最小系统单片机的最小系统是单片机能够工作的最小硬件组合。主要包括电源、晶体振荡器、复位电路等。AT89C51单片机最小硬件电路如图3.16所示。该电路可以实现复位及程序运行的基本功能。图3.16单片机最小系统图3.4射频卡读写电路设计一种基于U2270B芯片的射频卡读写电路如图3.17所示。该电路采用5V直流电源供电,并具有利用二极管反馈的振荡器控制环路。图3.17U2270B-5V电源的射频卡读写电路(1)基本工作原理振荡器频率fosc和阅读器无线电路的谐振频率fres应尽可能保持一致。如果不能保持在一定的容限内,多标签的使用及产品的批量化都会遇到很多困难。此外,失谐时振荡器的调频噪声会转换为解调电路能检测到的调幅噪声,从而降低了有效工作距离。因而需要采取一些调节手段来调节振荡器的频率fosc,使其和无线电路的谐振频率fres能保持在一个误差允许范围内,这样,天线电路的设计就变得更为容易实现。(2)环路调节原理图3.17中采用了振荡器控制环路,现将这一部分电路单独给出,如图3.18所示,图3.18振荡器控制环路电感L和电容C构成天线谐振回路。U2270B芯片驱动器输出端(coil1和coil2引脚)的输出电压波形如图3.19(a)所示。在图中T1为coil1引脚输出为低的时间,T2为引脚coil2输出为低的时间。在电阻R1和R2之间测得的相应的天线电路电压波形如图3.19(b)所示。T2a是T2内天线电路电压为负的时间间隔,T2b是T2内天线电路电压为正的时间间隔。图3.19驱动输出与天线电路电压(3)曼彻斯特码与时钟的时序关系U2270B芯片接收通道处理后输出的曼彻斯特码基带信号,经output引脚输出至微控制器的I/O端口,微控制器通过软件程序实现对数据的读入。微控制器程序是通过对基带信号电平跳变的检测来判别输入的数据码位是0还是1,因此根据数据传输速率来计算下面的基本时间参数,以确保同步和正确的解码。数据基带信号和时钟的时序关系如图3.20所示。图3.20数据信号和时钟的关系对于曼彻斯特码,数据基带信号的跳变出现在时钟的上跳沿或(和)下跳沿,因此图中数据输出的阴影部分可能是不稳定区。为此,定义了图中的两个时间参数Ts1和TL1用于区分数据跳变是半时钟周期跳变,还是一个时钟周期的跳变。本课题中EM4100的编码类型设置为曼彻斯特码,载波频率fosc=125kHz,数据传输速率(波特率)fs是RF/64。即fs=125000/64=1953.125bit/s,一位数据传输周期Ts=1/fs=512us。则两个时间参数Ts1=3/4Ts=384us,TL1=5/4Ts=640us。4译码软件设计4.1总体设计本课题以AT89C51单片机为核心,采用U2270B组成基站读写电路作为硬件环境,并以汇编语言为开发工具,针对EM4100只读式射频卡,进行译码软件设计。开始当射频卡进入基站读写电路所发射的磁场区域时,会产生磁场耦合而获得能量,从而发出一组固定频率的电磁波,当基站电路接收到射频卡发送的电磁波后,经过其内部电路的一系列处理,会在Output端输出与微控制器接口兼容的信号,该信号被微控制器所采集。我们将采集到的信号进行逻辑处理,然后根据曼彻斯特编码规则进行译码和校验,最后将译码出的ID码转换成ASCII码以便系统使用。整个译码软件由四个模块组成:数据采集模块、译码模块、ASCII码转换模块、下一次读卡判断模块。其程序流程图如图4.1所示。开始译码处理译码处理校验位正确否?N校验位正确否?Y等待下一次读卡判断数据采集等待下一次读卡判断数据采集ASCII码转换ASCII码转换下一次读卡否?下一次读卡否?NY图4.1译码软件流程图4.2详细设计本节分别介绍4个模块的工作原理和实现功能,对关键代码予以分析,画出模块流程图清晰直观地展示模块的工作步骤。4.2.1数据采集模块(1)原理 通过对整个读卡系统的分析,数据采集模块应该是本软件的第一模块,当卡进入基站读写电路的感应范围内,程序开始执行采集操作。数据从U2270B的Output引脚传输到微控制器的I/O口,由数据采集模块检测I/O口的电平值。半个周期内,由采集到的输出电平的状态给出逻辑值。如果半个位周期内,输出电平的状态为低,则逻辑值为0;如果半个周期内,输出电平的状态为高,则逻辑值为1。(2)具体流程首先计算标签的数据传输率RF/64,标签工作频率典型值为125kHz,数据传输率RF/64=1.95kb/s,计算出接收1个位数据所需要的时钟周期为Ts=512us;那么半个周期为Ts/2=256us。然后确定采集的范围,实际中考虑到各种误差的因素,我们将半个周期的采样点范围确定在3/4Ts内(即Ts<384us),1个位周期的采样点范围确定在3/4Ts和5/4Ts之间(即384us<Ts<640us)。在进行数据采集时,实际是通过检测输出的电平的状态及变化来得出一个位周期和半个位周期的逻辑值的。如果输出的电平由低到高(或由高到低)跳变发生在Ts<384us,则得出的半个位周期的逻辑值为0(或1);如果输出的电平由低到高(或由高到低)跳变发生在384us<Ts<640us,则得出的一个位周期的逻辑值为00(或11)。按照这种方法,连续采集足够长的数据信号,并将采集到的逻辑值存放在微控制器的内存中。经过数据采集模块得到的电平值,还不是各段的数据位的逻辑值,需要对其进行译码处理。(3)采集的256位数据 由于每次耦合的时机不同,射频卡和磁场接触距离不同等原因,因此采集到的数据是随机的。由于标签EM4100内含64位数据,再依据曼彻斯特编码的特点,一共要采集256位数据才能保证接收到完整的标签信息。例如卡号为C168117AFF的射频卡:第一次采集到的数据为:55,5A,69,65,65,69,5A,6A,A6,5A,A6,A9,A9,6A,AA,AA55,5A,62,B2,B2,B5,5A,6A,A6,5A,A6,A9,A9,6A,AA,AA第二次采集到的数据为:55,5A,69,65,65,69,5A,6A,A6,5A,A6,A9,A9,6A,AA,A2 55,5A,69,65,65,69,5A,6A,A6,5A,A6,A9,A9,6A,AA,AA共采集到256位数据,其中有128位是有效位。从上面采集的数据可以很清楚地看到,虽然数据不尽相同,但真正有效的数据都包含在内。(4)数据采集模块流程图。数据采集模块流程图如图4.2所示。开始采集开始采集采样时间少于一采样时间少于一位周期?采样时间少于半位周期?N采样一个“0采样一个“0”采样两个“0采样两个“0”出错重来采样时间少于半位周期?采样时间少于半位周期? N 采样时间少于一采样时间少于一位周期? Y 采样一个“1” 采样一个“1” 是否到256是否到256位?采样两个“1”出错重来采样两个“1”出错重来Y开始译码开始译码 图4.2数据采集模块流程图4.2.2译码模块 (1)译码原理 通过对整个读卡系统的分析,译码处理模块应该是本软件的核心部分。译码处理是将数据采集模块得到的逻辑值译码成各段数据位的逻辑值,同时对采集的数据进行横向和纵向校验,以保证数据的正确。在译码处理中,对每个数据位的译码是依据曼彻斯特编码规则进行的,即依据1位周期内,输出电平的状态变化得出逻辑值。如果在1位周期内,采集到的逻辑值为01,则得到的数据位为0;如果在1位周期内,采集到的逻辑值为10,则得到的数据位为1;如果为其它情况,则进行出错处理。 根据EM4100的数据格式,整个译码处理过程可以分为三个部分:起始段译码处理、数据段译码处理、校验段译码处理。起始段译码处理是寻找连续的9个数据位1,当寻找到起始位,便开始进入数据段译码处理;否则进行出错处理。数据段译码处理是以起始段后的每5个数据位为一个数据单元进行处理的,其中需要对每个数据单元进行偶校验,如果10个数据中的每个数据单元的校验都正确,便进入校验段译码处理;否则进行出错处理。校验段译码处理是将校验段的数据位进行译码,然后对译码成功的10个数据分别进行纵向校验,如果校验正确,则本次接收数据译码成功。否则进行出错处理。(2)曼彻斯特码编码原理 根据曼彻斯特编码原理,如果在一个周期内发生由0到1的电平跳变,数据位为0,如果在一个周期内发生由1到0的电平跳变,数据位为1。编码方法如图4.3:图4.3曼彻斯特码编码原理图(3)译码具体流程起始段译码本次设计采用的是EM4100只读卡,此卡的起始位为9个1,接受9个1的方波信号的数据位应该为:01101010101010101010即:6AAAA而译出的数据应该为:0111111111但是前面为什么是6A,而不是AA或者是其它的什么呢?这是因为如果想出现连续的9个1,这9个1前必须有一个0,只有这样才能保证连续的9个1出现,译出这9个1的代码如下:Decode1: MOV R6,#0 ;起始段译码处理Decode2:MOV A,20H;从20H开始寻找数据头 CJNE A,#6AH,Decode3;寻找6A MOV A,21H CJNE A,#0AAH,Decode3;寻找AA MOV A,22H ANL A,#0F0H CJNE A,#0A0H,Decode3;寻找A SJMP Decode4Decode3:LCALL RLC1 DJNZ R6,Decode2;是否收集到256位 LJMPError其中在执行的过程中,如果不能找到连续的9个1,就要反复的进行寻找9个1的操作,此时程序中用了这条指令:Decode3:LCALL RLC1,其中RLC1是循环左移的子程序。当循环256次之后,仍然没有找到连续的9个1,那么将出错重来,返回到起始段等待重新采集数据。如果在循环256次之前找到了连续的9个1,则进入数据段的译码。数据段译码这段程序是此次设计的核心部分,在正确的找到了连续的9个1之后,便从连续的9个1之后开始进行译码。首先,需要对40H~4FH上的空间清0,用于存储即将译出的10个数据。在前面的起始位的判断中,22H单元中用了高4位,为使22H单元要译出数据的第一个字节,这里需要重复执行4条循环左移指令,补全一个字节,对应的指令为:LCALLRLC1。然后从22H~3FH单元开始两位两位的译出10个字节的数据,需要判断的是每个字节的第7、6位,第5、4位,第3、2位,第1、0位是否为01或是10,如果是则继续译码,否则将进行出错重来。部分程序代码如下:Decode6:MOV A,@R0 ANL A,#0C0H ;第7、6位保持不变,其他位清零 CJNE A,#40H,Decode7;第7、6为是否为01 SJMP Decode8Decode7:CJNE A,#80H,Err ;第7、6位是否为10 INC @R1 需要说明的是,为何只可以是01或者10?这是因为对于曼彻斯特编码来说只有当电平跳变才有意义,当由低电平跳变到高电平为0,反之为1。00或11不代表任何意义,是错误的。每译出4位数据后还需要进行横向校验位的判断,在做校验位的判断中用到了下一个字节的高两位,为了保证下一个字节要译出4位数据,需要做调整存储单元的操作,例如:22H之后是23H所以需要的校验位为23H的第7、6位,为了使23H地址单元为下一个数据的完整单元,需要补上第7、6位,这要做两次循环左移操作,调用两次RLC1子程序。但在调用之前需要做一个非常重要的操作,那就是现场保护,这是因为在调用子程序时,对之前操作的一些数据将进行修改,因此必须将这些数据保护起来,当调用完子程序之后再将这些数据恢复,这段程序的代码如下:Decode16:PUSH 01H;入栈,现场保护LCALL RLC1;循环左移1位LCALL RLC1;循环左移1位POP 01H;出栈,现场还原LJMP Decode6当完成了一个字节的译码,像这样在连续译出10个字节数据存储在10个连续的存储单元中。接下来开始校验段译码及对这10个字节数据的纵向校验。校验段译码及纵向校验纵向校验段是射频卡数据格式的最后部分,它共有五位数据,首先也是按照曼彻斯特编码原理接收4位数据,即上面接收的第11个字节数据,这4位数据即为纵向校验位,然后将前面得到的10个数据和校验位的前4位相异或,最后判断相异或的结果是否等于零,如果等于零则说明数据正确,否则说明数据错误。纵向校验段的最后一位为零,这是系统默认的。部分程序代码如下:Even: INC R0 ;列校验 XRL A,@R0 CJNE R0,#4AH,Even CJNE A,#0,Err MOV R0,#40H(4)译码模块流程图译码模块流程图如图4.4所示。译码处理开始译码处理开始 将采集的数据循环左移一位 找到起始位否? 将采集的数据循环左移一位找到起始位否?N Y进行下一个数据单元的译码 循环到数据尾否? N 进行下一个数据单元的译码循环到数据尾否? 本数据校验位正确否? 本数据校验位正确否? N Y出错重来 出错重来 10个数据单元译码结束否? Y 10个数据单元译码结束否?N Y校验段数据译码校验段数据译码纵向校验是否正确? N纵向校验是否正确? Y译码处理结束译码处理结束图4.4译码模块流程图4.2.3ASCII码转换模块这个模块的任务是将译码成功的10个数据转换成ASCII码。具体的方法是:将10个数据分别与10相比较,当小于10时,即0~9,对其加30H,完成ASCII码的转换;当大于10时,即A~F,需要对其加37H完成ASCII码的转换。转换的ASCII存储在10个连续的存储单元中,以便于系统使用和处理。4.2.4下一次读卡判断模块(1)发送数据部分当数据的读取和转换都成功后,开始通过串口发送数据。发送数据头,其ASCII码设为02H。发送10个字节的数据,每个字节以帧的形式发送,最后还需要有停止位的判断,每发送完一个字节,需要由软件来清除发送中断标志位TI。 MOV SBUF,A JNB TI,$ CLR TI发送数据尾,由ASCII值为0DH、0AH和03H三个字节组成。这些ASCII码都是由通信双方制定的通信协议规定的。(2)下一次读卡判断部分当射频卡不离开基站读写电路所发射的磁场区域时,就会持续发射固定频率的电磁波,如果不加以控制,就会产生射频卡进入磁场一次,而重复译码多次的现象。在实际使用时,往往希望卡进入磁场一次,只需要一次成功读卡就可以了。为了避免产生不必要的重复译码,我们在译码成功后进行下一次读卡判断的控制。程序中是采用两个周期内是否接收到的波形来判断的。如果在译码成功后,没有采集到电平的变化,则认为该射频卡已经离开磁场区域,本次读卡结束,可以进行其他处理或进入下一次读卡开始;如果译码成功后,继续采集到输出电平的状态变化,则不进行译码处理,而是等待射频卡离开磁场区域。具体情况分为以下三种:连续接收的波形不同,证明已经换卡。连续接收的波形相同,中间无时间间隔,证明卡未离开。虽然接收的波形相同,但是中间有一段时间间隔,说明前一次卡已经离开,第二次又重新读了相同的一张卡。需要说明的是:所谓“下一次读卡”就是说当卡进入磁场感应区域进行读卡操作结束,离开感应区域后,再次进入磁场感应区则被视为“下一次”,即第二次;当磁卡进入感应区而未离开,则被视为一次。(3)下一次读卡判断流程图 下一次读卡判断流程图如图4.5所示。已经判断出卡已在感应已经判断出卡已在感应区域内 接收到此时的卡号接收到此时的卡号此时卡号是否等于上次的卡号?N此时卡号是否等于上次的卡号?发送数据发送数据 Y 是否有两个连续的高电平? N是否有两个连续的高电平?Y 是否有两个连续的高电平? N是否有两个连续的高电平?Y卡已移出卡已移出图4.5下一次读卡判断流程图5软件调试5.1系统开发工具MedWin简介MedWinV3.0是万利电子有限公司制作的高性能集成开发环境,支持汇编语言和C51。集编辑、编译/汇编、在线及模拟调试为一体。VC风格的用户界面,内嵌自主版权的宏汇编器和连接器,并完全支持Franklin/KeilC扩展OMF格式文件,支持所有变量类型及表达式,配合Insight系列仿真器,是开发80C51系列单片机的理想开发工具。以下是MedWin集成开发环境项目管理方式开发应用程序的步骤:(1)建立一个新的项目 在菜单栏点击“项目管理”→“新建项目”,在弹出的对话框中选择“OMF格式编译工具”,如图5.1所示。图5.1新建项目(2)点击“下一步”,输入项目名称,如图5.2所示。图5.2输入项目名称(3)依次点击“下一步”,最后点击“完成”。就新建了一个项目。(4)在左侧的“文件管理器”窗口中,右击“源文件组”→“新建文件”,弹出“新建文件向导窗口”,如图5.3所示。(5)输入文件名,依次点击“下一步”,最后点击“完成”。则建立了一个汇编语言源文件,可以在编辑窗口中编辑源代码,如图5.4所示。(6)源代码编译完成后,在菜单栏点击“项目管理”→“编译/汇编”,检查程序有无错误,如图5.5所示。(7)在菜单栏点击“项目管理”→“产生代码并装入”,将程序装入到仿真器运行,如图5.6所示。查看编写的软件是否达到了预期的目的。图5.3“新建文件向导”窗口图5.4源代码编辑窗口图5.5编译程序图5.6装入仿真器运行5.2程序的仿真调试仿真器是用以实现硬件仿真的硬件。仿真器可以实现替代单片机对程序的运行进行控制,例如单步,全速,查看资源断点等。仿真器内部的P口等硬件资源和51系列单片机基本是完全兼容的。将仿真器和电脑上的MedWin软件是通过串口相连,就可以实现程序的硬件仿真。通过仿真主控程序可以做到让目标程序做特定的运行,比如单步、指定断点、指定地址等,并且通过MedWin可实时观察到单片机内部各个存储单元的状态。下面介绍程序的仿真调试。(1)将仿真器通过串口连接电脑,在数据采集模块结束处设置断点,如图5.7所示。图5.7在数据采集模块结束处设置断点然后执行“调试”→“全速运行”,程序会在数据采集开始处等待数据信号的到来。将电子标签EM4100(其ID号为C1681B0A74)置于线圈附近,程序会立即暂停在刚才设置的断点处,之后便可在数据区IData中查看数据采集模块采集到的数据。采集的数据存放在20H~3FH单元,数据区IData中的数据如图5.8所示:图5.8数据采集结束后的数据区IData(2)ASCII码转换模块结束处设置断点在ASCII码转换模块结束处设置第二个断点,如图5.9所示。单击“调试”→“全速运行”,程序会从第一个断点处运行到第二个断点处暂停,即让程序执行完ASCII码转换模块的代码。点击数据区IData查看数据,该数据就是ASCII码转换模块所得到的数据,也就是将之前译码模块得到的数据由十六进制转换成ASCII码,转换后的数据仍然存储在40H~49H内存单元,将译码模块得到的数据覆盖。ASCII码转换后得到的数据如图5.10所示,经过与ASCII码表的对照,可得到字符串“C1681B0A74”,跟EM4100卡号相吻合。图5.9在ASCII码转换模块结束处设置断点图5.10ASCII码转换后的数据区IData(3)下一次读卡判断模块结束处设置断点取消之前设置的所有断点,在下一次读卡判断模块结束处重新设置新的断点,如图5.11所示。程序复位后,单击“调试”→“全速运行”,程序会停留在数据采集的开始处,当将标签EM4100置于线圈附近时,程序在执行完数据采集、译码处理、ASCII码换之后会一直在下一次读卡判断模块的程序中无限循环,等待标签的离场。当把标签EM4100移出线圈时,程序会立即暂停在断点处,表示标签已经离开磁场区域,准备进行下一次读卡。图5.11在下一次读卡判断模块结束处设置断点结论本课题中微控制器使用查询的方式检测电平跳变,采用的译码方法是当检测到电平发生跳变时,延迟3/4倍位宽时间再去检测电平,然后再每隔半个位宽周期去检测电平,最后根据采集到的数据来译码。本文的译码方法仅用微控制器的1个或2个引脚就可以完成译码,硬件接口电路简单,算法全部采用汇编语言编写,指令运行速度快。该译码方法可以在仿真器上演示运行,而且译码准确,首读率高。可以广泛应用于门禁、考核等多种系统中。然而,该方法也有一些问题。首先,当信号产生毛刺时容易误判。其次,当载波频率偏离预定的125kHz时,位宽时间会发生变化,而程序仍以固定的时间间隔去读码,所以每次都会发生一定的偏移,积累偏移可能会导致漏读或多读,有时甚至会读到电平发生跳变的过渡状态,从而也产生误判。本文对设计的低频RFID系统组成结构和工作原理做了深入解读,对用到的相关元器件的基本知识做了详细介绍。在软件设计上运用了结构化设计方法,将译码软件分为4个模块设计,并具体阐述了各个模块的编程思路与功能实现。致谢从论文选题到搜集资料,从写稿到反复修改,期间经历了喜悦、烦闷、痛苦和彷徨,在写作论文的过程中心情是如此复杂。如今,伴随着这篇毕业论文的最终成稿,复杂的心情烟消云散,自己甚至还有一点成就感。回想在大学求学的四年,心中充满无限感激和留恋之情。感谢母校为我们提供的良好学习环境,使我们能够在此专心学习,陶冶情操。值此本科毕业论文完成之际,谨向我的导师马秀丽教授致以最诚挚的谢意!感谢她在忙碌的教学工作中挤出时间来审查、修改我的论文。从论文的选题、文献的采集、框架的设计、结构的布局到最终的论文定稿,从内容到格式,从标题到标点,她都费尽心血。没有马老师的辛勤栽培、孜孜教诲,就没有我论文的顺利完成。感谢我亲爱的同学们,在学习中我们相互帮助,互相激励和关心。是你们让我在学习生活中收获到了更多的东西。还要感谢你们陪伴我度过了最美好的大学时光。

我还要感谢我的父母,谢谢你们在远方对我的关心、支持与鼓励,让背井离乡的我依然感受到温暖。这么多年来,正是因为你们的支持和鼓励,让我有足够的信心和能力战胜前进路上的艰难险阻。也因为你们的日夜辛劳,我才有机会如愿完成自己的学业。

参考文献[1]游战清,李苏剑.无线射频识别技术(RFID)理论与应用.北京:电子工业出版社,2004:1-4[2]周晓光,王晓华.射频识别(RFID)技术原理与应用实例.北京:人民邮电出版社,2006:1-8[3]周晓光,王晓华,王伟.射频识别系统设计、仿真与应用.北京:人民邮电出版社,2008:24-26[4]董丽华.RFID技术与应用.北京:电子工业出版社,2008:30-40[5]刘禹,关强.RFID系统测试与应用实务.北京:电子工业出版社,2010:41-44[6]谢维成等.单片机原理与应用及C51程序设计.第2版.北京:清华大学出版社,2009:14-23附录A英文文献RadioFrequencyIdentificationTechnologyIntroductionRFIDistheabbreviationforRadioFrequencyIdentification,calledelectronicslabel.RFIDrecognitionisanon-contactautomaticidentificationtechnology,rfsignalthroughitsautomatictargetrecognitionandaccesstorelevantdata,identifyworkwithoutmanualintervention,itcanworkinvariousenvironments.RFIDtechnologycanidentifyhigh-speedmovingobjectsandcanidentifymultipletags,theoperationisfastandconvenient.Accenturelaboratory'schiefscientistsiralexfergusonfeelsRFIDisabreakthroughtechnology:"first,canidentifyaveryspecificobjects,ratherlikethecodethatcanidentifyclassobjects;second,theuseofrf,canreaddatathroughexternalmaterials,andbarcodemustrelyonlasertoreadinformation;third,canalsoreadontomultipleobjects,andbarcodecanonlyreadonebyone.Inaddition,storeofinformationisalsoverybig."ThebasiccomponentofRFIDThemostbasicRFIDsystemconsistsofthreeparts:Tag:Tagconsistsofcomponentsandchips,eachTaghasonlyelectroniccoding,adheretotheobjectforidentifyingtarget;Reader:read(sometimesalsocanwrite)labelinformationequipment,itcanbedesignedforportableorfixed;Antenna:Transmitradiofrequencysignalsbetweeninthelabelandreader.ThebasicprincipleofRFIDtechnologyThebasicprincipleofRFIDtechnologyisnotcomplex:Labelintothefield,Receiveradiofrequencysignalsfromreadercollision,withalltheenergystoredinachipoftheproductinformation(passivetag,thereisnosourcelabelorlabels),Oractivelytosendafrequencysignals(activetagandtolabelorlabels);toreadinformationandunderstandingofthedecoderafterthecentralinfor

温馨提示

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

评论

0/150

提交评论