0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于射频基站模块与PIC16型单片机实现AT88RF256型射频卡读写器的设计

电子设计 来源:郭婷 作者:电子设计 2019-07-09 08:02 次阅读

1 引言

随着计算机和嵌入式系统的发展,IC卡已经融人人们的日常生活并发展成几个大类,其中,非接触IC卡的出现引起了人们的特别关注。射频卡属于非接触IC卡,它避免了普通IC卡与读卡器之间的物理接触,减少了卡的磨损,所以受到广泛的欢迎。射频卡也是射频识别(RFID)系统的组成部分之一。

射频识别(Radio Frequency Identification,以F简称RFID)威廉希尔官方网站 是20世纪90年代兴起的一种自动识别威廉希尔官方网站 。它利用无线射频方式进行非接触双向通信并交换数据,以达到识别目的。典型的RFID系统由电子标签(Tag)、读写器(Read/Write Device)及数据交换和管理系统等组成。电子标签也称射频卡,具有智能读写及加密通信能力。

2 系统工作原理硬件设计

笔者设计的射频卡读写系统由计算机、读写器和射频卡组成,系统结构如图1所示。

基于射频基站模块与PIC16型单片机实现AT88RF256型射频卡读写器的设计

2.1 射频卡读写器

射频卡读写器主要由PICl6型单片机和北京威利姆兴公司生产的AT—RFMODCl6系列射频基站模块组成。该模块采用一种常见的U2270B型非接触卡读写基站电路。电路内部集成了由片上电源振荡器和线圈激励器组成的能量传输线路,用来给射频卡提供工作电源;还集成了信号放大和天线驱动线路来完成与射频卡之间的信号发送与接收。AT—RFMOD06与PICl6的接口电路如图2所示。

基于射频基站模块与PIC16型单片机实现AT88RF256型射频卡读写器的设计

AF—RFMOD06模块的引脚功能如表1所示。该模块采用单列9引脚封装,内部集成了时钟、射频驱动、滤波、放大、调制解调等interwetten与威廉的赔率体系 电路,所以按照图2连接好数字接口电路后,只需选择适当的天线和谐振电容器即可完成射频电路的设计。

基于射频基站模块与PIC16型单片机实现AT88RF256型射频卡读写器的设计

在图2中,基站天线和振荡电容器组成了LC振荡电路,系统要求产生的振荡频率限定在125 kHz(±5%),天线的振荡幅度最高可以达到120 V,一般不要大于80 V,可以通过和天线线圈串联的电阻器来调节天线的振荡幅度。振荡电容的耐压值应大于100 V。经过反复调试,参数设定为C=2 200 DF,L=680μ H.R=82Ω 。

2.2 AT88RF256型射频卡

AT88RF256—12卡是美国ATMEL公司推出的一款基于125 kHz工作频率的感应卡,可以加密.数据量为256位。作为典型的低频、加密和可读写卡.AT88RF256一12在市场上有着广泛的应用前景。AT88RF256—12由电路和线圈组成.电路内部结构如图3所示。

基于射频基站模块与PIC16型单片机实现AT88RF256型射频卡读写器的设计

电路的L1引脚和L2引脚与线圈连接,当线圈的电感为10.1 mH时,卡片的工作频率为125 kHz。其工作电源由片内线圈与电路内置电容产生LC振荡蓄电提供.AT88RF 256一12设计时把电容内置到电路中,既减少了卡的加工环节.又提高了模块及成卡的成品率和可靠性。LC振荡产生的电能经卡片内的电源电路变换后分别提供给控制部分和EEPROM单元。

3 编解码及软件流程

3.1 射频卡的寄存器和命令

卡片内部的EEPROM分为lO页.每页包括32位,其内容如表2所示。

基于射频基站模块与PIC16型单片机实现AT88RF256型射频卡读写器的设计

用户对卡的操作包括读卡、写卡、核对密码、停止卡等,必须按以下7个命令格式来执行上述操作:

0A2A1A010:写第A2A1A0页32位的EEPROM;

0A2Al A001:读第A2A1A0页32位的EEPROM;

000011:数据固化命令(8位);

010011:写卡片控制位命令(24住):

000111:写卡片密码命令:

011000:停止卡命令:

011100:核对密码命令。

3.2 射频卡的控制要点

3.2.1 编码要求

AT88RF256卡在默认状态下读卡片用MILLLER(密勒)码,写命令数据用MANCHESTER(曼彻斯特)码。初始化下,密勒码元宽度是。128μ8,曼彻斯特码元宽度是256μs。

3.2.2 发送命令的时间

读写器要对卡片发送命令,除了卡片要进入射频场内获取能量外,发送时间也受限制。卡片进入射频场后,按如下格式向读写卡器循环发送数据:起始位;32~152位(长度可自行设定)的ID数据;停止位;8位收听窗(Listening Window)。

图4示出基站模块的DATA OUT引脚的输出波形,在每个数据包之间都有一个持续8位密勒码元宽度的低电平状态的收听窗。只有在收听窗第2位至第7位,射频才可以接收读写卡器发送的读、写命令。所以本设计的一个关键是如何捕捉到收听窗,这属于读卡和解码操作的一部分,解码是建立在对基站模块DATA OUT引脚的波形分析的基础上的。

基于射频基站模块与PIC16型单片机实现AT88RF256型射频卡读写器的设计

3.2.3 发送命令格式

基站根据需要在7种命令格式中选择向射频卡发送的命令,当发送带有数据的命令时,在命令的最后要添加一个bit的校验位.校验位是命令字和所有参数的奇校验。卡片接收到命令后要比对奇偶校验位.只有当校验位正确时才真正地执行命令,否则将返回ID,不执行命令。这样可以有效避免因为空间干扰而对卡片数据的错误操作.大大提高卡片读写的可靠性。

3.2.4 多张卡冲突

在开发过程中,多张卡片同时进场时,DATAOUT引脚的波形相当于若干个卡片单独进场时的波形的叠加,无法选定某一卡片进行读写。出现这种情况时,为了避免误写卡的操作,等待检测到只有惟一的卡片在场内时再进行所需的操作。

3.3 程序设计

已知密勒码元宽度为128μs,卡片ID的长度是32位,只能在收听窗的第2位至第7位发送命令。下面是用PIC单片机编写的收听窗程序。其中RB口的OUT引脚输入的是基站模块DATA OUT引脚的信号,参考图2。出错返回5AH,正确返回OH。

LISTEN: MOVLW .80

MOVWF CARDDEL.

LISLOOP:MOVIJW .70

MOVWF D1

BTFSC RB,OUT

GOTO LISTEN2

LISTENl:NOP

BTFSC RB,OUT

GOTO LISTEN0

DECFSZ D1.1

GOTO LISTENl

RETLW OH

LISlEN2:NOP

BTFSS RB,OUT

GOTO LISTIEN0

DECFSZ D1,1

GOTO LJSTEN2

RETLW 5AH

LISTEN0:DECFSZ CARDDEL,1

GOTO LISLOOP

RETLW 5AH

在正确跟踪收听窗的基础上,以曼彻斯特编码格式向射频卡第5页写入32位数据为例,如图5所示。每当成功写入某页32位数据后。卡片循环发送新写入的数据,直至卡片退场。这就方便了用户对写入的数据进行校验。

基于射频基站模块与PIC16型单片机实现AT88RF256型射频卡读写器的设计

4 结束语

由于基站模块集成了调制解调功能,所以通信上只需注重基带信号的处理,降低了设计难度。这套射频卡读写器已经应用到电能表预付费系统中,替代了一批原先使用的普通IC卡电表,系统的可靠性得到用户的肯定,加上射频卡操作便捷,该系统的应用前景十分看好。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6034

    文章

    44531

    浏览量

    633884
  • 嵌入式
    +关注

    关注

    5079

    文章

    19062

    浏览量

    304177
  • 计算机
    +关注

    关注

    19

    文章

    7457

    浏览量

    87809
收藏 人收藏

    评论

    相关推荐

    射频卡的设计原理

    MIFARE射频卡的容量为8K位,数据保存期为10年,可改写10万次,读无限次。M1不带电源,自带天线,内含加密控制逻辑电路和通讯逻辑电路,读写器之间的通讯采用国际通用的DES
    发表于 05-19 10:30

    新人求教如何实现RC522射频卡和AVR单片机通信

    刚接触单片机,老师有一个小项目,是实现用RC522射频卡和主机通信,然后主机收到消息之后给AVR单片机发消息,让他将GY-80九轴模块测得的
    发表于 12-28 11:00

    如何设计通用射频卡读写模块

    解决了无源和免接触等难题,是电子器件领域的一大突破。其高度安全保密性以及使用简单等特点,使之在各领域的应用异军突起。那么通用射频卡读写模块具体需要如何设计?需要注意什么事项呢?
    发表于 08-01 07:27

    远距离射频卡读写器数字处理模块的设计怎么实现

    本文较系统地介绍了一类远距离射频卡读写器数字处理模块的设计,特别在于采用单片CPLD实现射频卡
    发表于 05-07 06:00

    基于AT89C51CC01与FM1712开发一种非接触射频卡读写器

    解决了无源和免接触等难题,是电子器件领域的一大突破。其高度安全保密性以及使用简单等特点,使之在各领域的应用异军突起。引言本文介绍的非接触射频卡读写器就是基于单片机AT89C51CC01与FM1712嵌入式
    发表于 12-09 06:40

    TEMIC系列射频卡读写器的设计

    TEMIC系列射频卡读写器的研制;介绍了TEMIC系列射频卡的一种读写器,它可以对ATMEL公司的TEMIC系列射频卡E5550、E5551
    发表于 11-04 19:02 8次下载

    基于PIC单片机的IC读写器的设计

    摘要:本文介绍了以PIC16C74单片机为核心的IC读写器的系统设计,系统实现了IC及外部存
    发表于 12-22 21:52 216次下载

    TEMIC系列射频卡读写器的研制

    摘要:介绍了TEMIC系列射频卡的一种读写器,它可以对ATMEL公司的TEMIC系列射频卡E5550、E5551和T5557进行读写。通过使用这个
    发表于 03-11 11:49 2555次阅读
    TEMIC系列<b class='flag-5'>射频卡</b><b class='flag-5'>读写器</b>的研制

    地铁自动售检票(AFC)系统中射频卡读写器设计

    摘要: 针对地铁自动售检票(AFC)系统中射频卡读写器通信接口单一、无线接入等问题,设计一种基于ARM9 和MF RC531的高性能射频卡(非接触式IC
    发表于 07-17 10:55 2731次阅读
    地铁自动售检票(AFC)系统中<b class='flag-5'>射频卡</b><b class='flag-5'>读写器</b>设计

    射频卡读写器中CPLD应用

    提出了一种射频卡读写器数字处理模块的设计方案!特点是利用单片5GHI 器件实现读写器编码译码和
    发表于 12-17 00:28 58次下载
    <b class='flag-5'>射频卡</b><b class='flag-5'>读写器</b>中CPLD应用

    基于MFRC500的Mifare射频卡读写器设计

    基于MFRC500的Mifare射频卡读写器设计
    发表于 01-22 14:28 0次下载

    射频卡设计原理及实现简介

    内部的功能模块及原理见下图1 MIFARE 1射频卡含有l0248bitEEPROM组织,分为16个区,每区4个块,其中射频接口
    发表于 12-09 19:20 1.4w次阅读
    <b class='flag-5'>射频卡</b>设计原理及<b class='flag-5'>实现</b>简介

    MSP430单片机的实用射频卡读卡电路设计详析

    射频识别威廉希尔官方网站 的实际应用为背景, 采用低功耗 RF 射频感应式收发模块 MTP- K4, 结合低功耗 FLASH
    发表于 04-27 16:51 14次下载
    MSP430<b class='flag-5'>单片机</b>的实用<b class='flag-5'>射频卡</b>读卡电路设计详析

    如何使用PIC单片机实现IC读写器的设计

    本文介绍了以 PIC16C74 单片机为核心的 IC 读写器的系统设计,系统实现了 IC
    发表于 01-02 08:00 1次下载
    如何使用<b class='flag-5'>PIC</b><b class='flag-5'>单片机</b><b class='flag-5'>实现</b>IC<b class='flag-5'>卡</b><b class='flag-5'>读写器</b>的设计

    基于FM1712的通用射频卡读写模块设计

    解决了无源和免接触等难题,是电子器件领域的一大突破。其高度安全保密性以及使用简单等特点,使之在各领域的应用异军突起。引言本文介绍的非接触射频卡读写器就是基于单片机AT89C51CC01与FM1712嵌入式
    发表于 11-26 16:06 11次下载
    基于FM1712的通用<b class='flag-5'>射频卡</b><b class='flag-5'>读写</b><b class='flag-5'>模块</b>设计