摘要:采用ti公司最新的多协议收发器芯片s6700,结合mcu设计了iso/iec15693读卡器,介绍s6700通信协议和iso/iec15693标准,给出部分子程序。s6700和mcu的接口非常简单。
关键词:ic卡 rfid iso/iec15693 读卡器
*命令字节:规定asic与vicc通讯时的有关参数。例如,2dh,表示支持的射频协议是15693(1 out of 4),am调制方式,调制率100%,返回数据波特率6.67kb/s。注意:命令字节的发送顺序是高位在先,即:msb first。
决冲突问题。其参数包括:flags、command、masklength、maskvalue。一种最简单的情况,设定:flags.6=nb_slots_flag=1,maklength=4,maskvalue=0,当命令序列发送后,maskvalue会被自动与卡的uid的最低位比较,因为0≠2≠8,所以两张卡均不回答。同样的命令,如果maskvalue=2,则第一张卡就会回答;当maskvalue=8时第二张卡回答。如果两张卡的卡号是:e00700000158d1d2和e0070000015869e2,则当masklength=4,maskvalue=2时两张卡均回答,就会发生冲突。解决的方法是:令masklength=8,maskvalue=x2,x从0到f自增。这样,x2=d2时第一张卡回答,x2=e2时,第二张卡回答。依此类推。卡的uid最低位冲突的概率为62‰,最低两位冲突的榔为4‰。理解了此算法,就很容易理解标准中所描述的复杂算法。笔者采用这种逐位搜索算法编的读多卡程序,连续读3张卡的时间不超过500ms。