非接触式智能卡模块的原理
扫描二维码
随时随地手机看文章
1概述
当前社会生活中使用的主要为接触式智能卡,工作时需与读写终端触点接触,存在易磨损、并行性差、响应时间长等特点;而非接触式智能卡由于具有无接触,可并行处理、与接触式相比可节约70%-90%的时间等优点正越来越广泛的运用于医疗、交通,社会保险、税务等诸多领域。
这里提供的ID10/15非接触式智能卡模块具有远距离、低功耗、小体积等特点,它专为OEM厂商设计。
2ID10/15模块工作原理
ID10/15模块外接的电感应线圈产生125KHz的电磁波,当ID-0/1-/15智能卡片在ID-0/10/15产生的磁场范围内时,智能卡片内的线圈接收电磁波的能量,智能卡片内的电路对其整流、稳压后作为卡片系统工作电压,并从接收到的振幅调制脉冲调制出信息并送到内部控制逻辑,并将内部数据经由天线送出,ID-0/10/15收到智能卡上的资料后再重新依输出格式编码输出。
3ID-0/10/15模块特点
电源﹕5VDC。
数据输出接口:有二种数据输出格式
(1)Wiegand26模式
(2)ASCⅡ模式
读卡距离﹕0/7~10cm/12~15cm@5V
工作频率﹕125KHz
读写能力﹕只读
视觉声音指示﹕指示灯和2.7KHz蜂鸣器驱动输出
体积﹕22*20*6mm/26*25*6mm/39*39*9mm
4ID-0/10/15模块引脚定义
1.电源地
2.重置脚(ResetBar)
3.天线A
4.天线B
5.接地为ASCⅡ模式/接5V为韦根26模式
6.CMOS/OneOutput
7.TTLData/ZeroOutput
8.Beeper/LED
9.+4.6V~+5.5V
ID-10的读卡距离为8厘米,ID-15的读卡距离为14厘米
5应用实例
5.1Wiegand26模式
在Wiegand26模式下,ID-0/10/15引脚接法如下﹕
PIN1﹕地
PIN2﹕ResetBar
PIN3,4﹕Antenna
PIN5﹕接+5VDC
PIN6﹕DATA1
PIN7:DATA0
PIN8:Beeper/Led
PIN9:+4.6V~+5.5V
在Wiegand26模式下,ID-0/10/15数据引脚输出波形如下﹕
data0
。。。
data1950μs50μs
。。。
50μs950μs
DATA0和DATA1总共26个低电平脉冲,每一个脉冲代表一个BIT数据,第1个BIT为1-13BIT的偶校验位,第26个BIT为14-26BIT的奇校验位,BIT2-BIT25共6DIGITS(每4BIT为一个DIGITS)代表卡片号码的后六位数。
此模式下与MCS51单片机接口的程序如下﹕
ID-0_DATA0:EQUP1.7;P1.7CONNECTTODATA0
ID-0_DATA1:EQUP1.6;P1.6CONNECTTODATA1
ADDR_1:EQU30H;6BYTESDATASAVEININRAM30-35H
EVEN_CHECKEQU00H;20H_BIT0SAVEASEVENPARITY
ODD_CHECKEQU01H;20H_BIT1SAVEASODDPARITY
EVEN_FLAGEQU02H;20H_BIT2
TIME_OUT_FLAGEQU03H;20H_BIT3
ORG000BH
LJMPTIMER0_IN
ORG30H
WIEGAND_START:TMOD,#01H;
SETBEA
SETBEVEN_FLAG;SETEVENCHECKFLAG
CLRTIME_OUT_FLAG
MOV R2,#6;TOTAL6BYTESDATA
MOV R3,#4;4BITSPERBYTE
MOV R0,#ADDR_1;STARTADDRESSOFDATA
WIEGAND1:JNBID-0_DATA0,WIEGAND2;DATA0ISLOWTHENSTARTTOOUTPUTDATA
JBID-0_DATA1,WIEGAND1;DATA0ANDDATA1ISHIGHTHENWAITDATA
JBTIME_OUT_FLAG,ERR
MOV TH0,#0F8H;2000USINTERRUPT
MOV TL0,#30H
CLRTIME_OUT_FLAG
SETBTR0;TIMER0START
LCALLDELAY25US
MOV C,ID-0-DATA0
LCALLDELAY175US
JNBID-0-DATA1,ERR
LJMPWIEGAND3
WIEGAND2:NOP
JBTIME_OUT_FLAG,ERR
MOV TH0,#0F8H;2000USINTERRUPT
MOV TL0,#30H;
CLRTIME_OUT_FLAG
SETBTR0;TIMER0START
LCALLDELAY25US;DELAY25μS
MOV C,ID-0_DATA0;MOVEDATAINCREGISTER
LCALLDELAY175US
JNBID-0-DATA,ERR
WIEGAND3:JNBEVEN_FLAG,WIEGAND_DATA;EVENIS0THENOUTPUTISDATA
MOV EVEN_CHECK,C;OUTPUTISEVENCHECKBIT
CLREVEN_FLAG;CLREVENCHECKBIT
LJMPWIEGAND1;RECEIVEDATA
WIEGAND_DATA:RLCA;
DJNZR3,WIEGAND1;BYTEISNOTOVER
ANLA,#00001111B;BYTEOVER
MOV @R0,A;SAVEDATATOINRAM
INCR0;INCREASEINRAMADDRESS
MOV R3,#4;4BITSPERBYTE
DJNZR2,WIEGAND1;READDATAAGAIN
ODD:JNBID-0_DATA0,ODD_BIT;WAITODDCHECKBIT
JBID-0_DATA1,ODD;
ODD_BIT:NOP;
LCALLDELAY25US;DELAY25μS
MOV C,ID-0_DATA0;ODDCHECKBIT
MOV ODD_CHECK,C;SAVEODDCHECKBIT
NOP
LJMPOTHER_PROGRAM;READCARDOVER
DELAY25US: MOV R4,#11;DELAY25μS
DELAY25US_A:DJNZR4,DELAY25US_A
NOP
RET
DELAY175US: MOV R4,#86;DELAY175μS
DELAY175US_A:DJNZR4,DELAY175US_A
NOP
RET
TIMER0_IN:SETBTIME_OUT_FLAG
CLRTR0
RETI
ERR:NOP;ERREXECEL
.;
.;
.;
LJMPWIEGAND_START;READDATAAGAIN
5.2ASCⅡ模式
在ASCⅡ模式下,ID-0/10/15引脚接法如下﹕
PIN1﹕地PIN2﹕ResetBarPIN5﹕接地
PIN3,4﹕Antenna
PIN6:CMOS
PIN7:TTLData
PIN8:Beeper/Led
PIN9:+4.6V~+5.5V
在ASCⅡ模式下,ID-0/10/15与MCS51 单片机 的连接如下图﹕
ID-0/10/15PIN780C51UART
80C51I/O波形如下﹕
在c模式下,ID-0/10/15输出数据为9600波特率,8位数据位,1位停止位,无奇偶校验位。
此模式下输出数据格式如下﹕
STX(02H)DATACHSUMCRLFETX(03H)
Thechecksumistheresultofthe‘exclusiveor‘ofthe5BinaryDatabytes
(the10ASCⅡdatacharacters)
eg:DATA=0000001164(Hex)
CHECKSUM=75H
STX(02HEX)是数据启示位,DATA是10位卡片号码,CR(0DHEX)是计算器回车符,LF(0AHEX)是计算器换行符,ETX(03HEX)是数据停止位。
此模式下与MCS51 单片机 接口的程序如下﹕
ID-0/10/15_DATA:EQUP1.7;P1.7CONNECTTODATA
ADDR_1:EQU30H;6BYTESDATASAVEININRAM30-35H
MAIN: MOV SP,#60H;
MAIN_1: MOV R2,#14;TOTAL14BYTES
MOV R0,#ADDR_1;
LOOP_BYTE_READ: MOV R3,#8;8BITSPERBYTES
WAIT_DATA1:JBID-0_DATA,WAIT_DATA1;DATAISHIGHTHENWAIT
WAIT_DATA2:JNBID-0_DATA,WAIT_DATA2;
LCALLDELAY_BIT_2;DELAY45μS
LOOP_BIT_READ:LCALLDELAY_BIT_1;DELAY95μS
CLREA;INTERRUPTDISABLE
MOV C,ID-0_DATA;MOVEDATAINCRESIGTER
RRCA;
DJNZR3,LOOP_BIT_READ;8BITSPERBYTE
CPLA;
MOV @R0,A;SAVEDATAINNRAM
INCR0;INCREADEINRAMADDRESS
LCALLDELAY_BIT_1;DELAY95μS
DJNZR2,LOOP_BYTE_READ;14BYTEISNOTOVERTHENAGAIN
SETBEA;INTERRUPTENABLE
LJMPOTHER_PROGRAM;READCARDEND
DELAY_BIT_1: MOV R4,#46;DELAY95μS
DELAY_BIT_1_A:DJNZR4,DELAY_BIT_1_A
NOP
RET
DELAY_BIT_2: MOV R4,#21;DELAY45μS
DELAY_BIT_2_A:DJNZR4,DELAY_BIT_2_A
NOP
RET