广告招募

当前位置:全球贸易网 > 技术中心 > 所有分类

安卓下如何开发UHF读写器

2024年12月06日 09:23:05      来源:北京友我科技有限公司 >> 进入该公司展台      阅读量:9

分享:

随着Android系统的设备越来越多,在Andriod设备上使用UHF读写器变得越来越广泛。为了将UHF读写器应用android设备上,友我科技独立研发了UHF读写器的android开发包,使用此开发包,工程师只需在工程中导入jar包,使用java语言就可以轻松的开发出Android下的UHF读写器应用APP。

首先在工程中导入yoworfidreaderuhf.jar接口包.接口API如下:

1 byte[] YW_G2_Inventory()

UHF电子标签盘库寻卡,读到卡返回EPC,没有读到卡返回null.每次返回一张卡的EPC, 对于多张卡, 可以多次调用.

byte[] EPC = rfidreader.G2.YW_G2_Inventory();

if(EPC==null)return;


2 byte[] YW_G2_Read(byte[] EPC, byte MemType, byte StartPos, byte ReadLen,int Password)


读UHF电子标签的内存区,参数如下:

byte[] EPC: 输入,要读的UHF标签的EPC.

byte MemType: 内存类型,用户区,EPC区,TID区,保留区中的一个.

byte StartPos:起始地址,字节为单位,但必须是2的倍数.

byte ReadLen:要读的字节数,必须是2的倍数.

int Password: 读写的密码,默认为0.


byte[] Data= rfidreader.G2.YW_G2_Read (EPC, rfidreader.G2. MEMBANK_USER,0,10,0);

if(Data==null)return



3 int YW_G2_Write(byte[] EPC,byte MemType, byte StartPos,int Password,byte[] G2Data)


写UHF电子标签的内存区,参数如下:

byte[] EPC: 输入,要写的UHF标签的EPC.

byte MemType: 内存类型,用户区,EPC区,TID区,保留区中的一个.

byte StartPos:起始地址,字节为单位,但必须是2的倍数.

int Password: 读写的密码,默认为0.

byte[] G2Data: 要写得数据数组,数组长度必须是2的倍数.


byte[] Data =new byte[10];

int rt= rfidreader.G2. YW_G2_Write(EPC, rfidreader.G2. MEMBANK_USER,0,0, Data);

if(rt<=0)return



4 int YW_G2_WriteEPC(byte[] EPC, int Password)

写UHF电子标签的EPC代码,相当于修改卡号,每次只能写一张标签,参数如下:

byte[] EPC:新的EPC代码,数组长度必须是2的倍数.

int Password: 读写的密码,默认为0.


byte[] NewEPC=new byte[12];

int rt= rfidreader.G2.YW_G2_WriteEPC(NewEPC, 0);

if(rt<=0)return



5 int YW_G2_KillTag(byte[] EPC,int Password)


灭活一张电子标签,灭活后,标签将不可用,如果KillPassword=0,则不能灭活,即kill失败. 参数如下:

byte[] EPC:要操作的电子标签的EPC.

int Password: KillPassword的密码,当为0,则不能灭活.


int KillPassword=5230;

int rt= rfidreader.G2. YW_G2_KillTag (EPC, KillPassword);

if(rt<=0)return


6 int YW_G2_SetProtected(byte[] EPC,byte Protect, byte ProtectMode,int Password)

标签设置保护, 参数如下:

byte[] EPC:要操作的电子标签的EPC.

byte Protect:

byte ProtectMode:

int Password: 访问password的密码


int rt= rfidreader.G2. YW_G2_ SetProtected (EPC, 2,3,0);

if(rt<=0)return


7 int YW_G2_Earse(byte[] EPC,byte MemType, byte StartPos,byte Nums,int Password)

标签擦除某个内存数据,将所选择的内存数据全部设置为0.

byte[] EPC:要操作的电子标签的EPC.

byte MemType: 内存类型,用户区,EPC区,TID区,保留区中的一个.

byte StartPos:起始地址,字节为单位,但必须是2的倍数.

byte Nums:要擦除的字节数,必须是2的倍数.

int Password: 读写的密码,默认为0.


int rt= rfidreader.G2. YW_G2_ Earse (EPC, rfidreader.G2. MEMBANK_USER,0,10,0);

if(rt<=0)return


8 int YW_G2_SetReadProtectedWithEPC(byte[] EPC,int Password)

设置标签读保护.

byte[] EPC:要操作的电子标签的EPC.

int Password: 读写的密码,默认为0.


int rt= rfidreader.G2.SetReadProtectedWithEPC (EPC, 0);

if(rt<=0)return


9 int YW_G2_SetEASAlert(byte[] EPC,int Password, byte EAS)


设置标签EAS报警

byte[] EPC:要操作的电子标签的EPC.

int Password: 读写的密码,默认为0.

byte EAS: EAS值.


int rt= rfidreader.G2.SetEASAlert(EPC, 0,0x50);

if(rt<=0)return



10 byte[] YW_G2_TestEASAlert()


获取标签EAS报警


byte[] EAS= rfidreader.G2.GetEASAlert();

if(EAS==0)return



11 int YW_G2_LockUser(byte[] EPC,int Password, byte UserAddr)


锁定用户区内存

byte[] EPC:要操作的电子标签的EPC.

int Password: 读写的密码,默认为0.

byte UserAddr: 用户区地址.


int rt= rfidreader.G2.LockUser (EPC, 0,10);

if(rt<=0)return


下面以读写内存区作为例子, 代码只需要几行:

byte[] Data=MainActivity.rfidreader.G2.YW_G2_Read(EPC, mem, (byte)addr, (byte)len, password);

if(Data!=null)

{

edtData.setText(MainActivity.bytesToHexString(Data));

MainActivity.rfidreader.ReaderHardware.YW_Buzzer(5, 5, 1);

}

写内存区:

if(MainActivity.rfidreader.G2.YW_G2_Write(EPC, mem, (byte)addr, password, Data)>0)

{

MainActivity.rfidreader.ReaderHardware.YW_Buzzer(5, 5, 1);

MainActivity.dialog("写入成功",Readwrite.this);

}

else

{

MainActivity.dialog("写入失败",Readwrite.this);

}

安卓下调用UHF读写器YW-602H就是这样简单,具体参考RFID读写器安卓开发指南

版权与免责声明:
1.凡本网注明"来源:全球贸易网"的所有作品,版权均属于兴旺宝装备总站,转载请必须注明兴旺宝装备总站。违反者本网将追究相关法律责任。
2.企业发布的公司新闻、技术文章、资料下载等内容,如涉及侵权、违规遭投诉的,一律由发布企业自行承担责任,本网有权删除内容并追溯责任。
3.本网转载并注明自其它来源的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品来源,并自负版权等法律责任。 4.如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系。