ISO15693協議和ISO14443A/B協議是常見的三種通信協議,其中ISO15693協議的理論讀寫距離≤1m,ISO14443A/B協議的理論讀寫距≤10cm.遵循ISO15693協議的標簽常見的有ICODE1和ICODE2,TagIT等等.
友我科技IC卡讀卡器web插件系統對ISO15693標簽開放了全部接口,可以通過javascript來操作ISO15693標簽。

ISO15693ReadBlock(StartBlock, BlockNums, DataFormat)
參數:
StartBlock: 開始塊號
BlockNums:要讀的塊數量
DataFormat:返回數據的格式,0:16進制字符串,1:普通ascii字符串。
ISO15693WriteBlock(Block, Data, DataFormat)
參數:
Block: 塊號
Data:要寫入的數據字符串,由于一個數據塊可能有4字節或者8字節,系統會根據實際情況進行4字節或者8字節進行裁減,不夠的補充16進制0。
DataFormat:要寫入的數據的格式,0:16進制字符串,1:普通ascii
參數:AFI:要寫入的AFI值,1個字節16進制字符串。
ISO15693WriteDSFID(DSFID)
參數:DSFID:要寫入的DSFID值,1個字節16進制字符串。
15693標簽或卡片,鎖定DSFID
在安裝了友我科技IC卡讀卡器web插件后就可以通過js腳本對ISO15693標簽進行操作了。首先ISO15693盤庫的代碼如下:
function Start()
{
rfidreader.Repeat=1;
rfidreader.HaltAfterSuccess=1;
rfidreader.Request15693CardUID();
}
友我科技IC卡讀卡器web插件通過回調函數返回盤庫的標簽:
rfidreader.onResult(function(resultdata)
{
switch(resultdata.FunctionID)
{
case 2:
if(resultdata.Result>0)
{
ISO15693UID= resultdata.strData;
}
break;
}
}
);
ISO15693標簽的讀和寫,由于ISO15693標簽的每塊字節數有4字節和8字節, 寫數據前需要對所操作的卡片有了解。
function BlockRead()
{
var blockid;
blockid = 4;
rfidreader.HaltAfterSuccess=0;
rfidreader.ISO15693ReadBlock(blockid,1,0);
}
rfidreader.onResult(function(resultdata)
{
switch(resultdata.FunctionID)
{
case 37:
if(resultdata.Result>0)
{
ISO15693UID = resultdata.CardNo;
ISO15693BlockData = resultdata.strData;
}
else
{
alert("Error");
}
break;
}
}
);
function BlockWrite()
{
var blockid;
var data;
blockid = 4;
data = "11223344";
rfidreader.HaltAfterSuccess=0;
rfidreader.ISO15693WriteBlock(blockid,data,0);
}
rfidreader.onResult(function(resultdata)
{
switch(resultdata.FunctionID)
{
case 38:
if(resultdata.Result>0)
{
ISO15693UID = resultdata.CardNo;
alert("寫入成功" );
}
else
{
alert("Error");
}
break;
}
}
);