高頻讀卡器linux開發指南
為了用戶系統兼容更多的平臺,友我科技發布了linux開發包,這個linux開發包
適用于友我科技所有高頻IC卡讀卡器,型號包括:SDT-HA,YW-605系列,YW-607系列,YW-608,YW-610,YW-627系列,YW-1607系列. 支持的接口有232串口,485
和USB HID免驅動.
Linux相關下載:
開發例程及編譯
1.requestcard.c
requestcard.c演示程序用于讀取卡號并且輸出,主程序中每按一次回車鍵,就讀一次卡, 如果按別的按鍵和回車鍵就退出
#include <stdio.h>
#include <termios.h>
#include <unistd.h>
#include <fcntl.h>
#include "yw60x.h"
int main(int argc, char** argv)
{
int readerid=1;
unsigned short CardType=0;
char CardMem;
unsigned char SNLen;
unsigned char Cardno[4];
int BusMode=0;
int iopen;
printf("0 for USB, 1-255 for COM Port:"); //提示出入端口,USB輸入0, 串口輸入串口號,與dev/ttySn對應,n是多少這里就輸入多少
scanf("%d",&BusMode);//輸入端口
if(BusMode==0)
iopen=YW_USBHIDInitial();//如果是USB,就初始化USB端口
else
iopen=YW_ComInitial(BusMode,19200); //如果是串口,就初始化串口
if(iopen<0)
{
printf("Open Port Fail\n"); //打開端口失敗提醒
return 0;
}
printf("\nEnter for Read Card, others + Enter to Exit\n");//提示回車開始讀卡,其他鍵+回車就退出
while(getchar()=='\n') //如果火車就開始讀卡,否則退出
{
if(YW_RequestCard(readerid, REQUESTMODE_ACTIVE,&CardType)>0) //如果尋到卡片
{
if(YW_AntiCollideAndSelect(readerid,0,&CardMem,&SNLen,Cardno)>0) //讀出卡號
{
for(int i=0;i<SNLen;i++)printf("%.2X",Cardno[i]);//將卡號按照16進制打印出來
printf("\n");
}
}
}
printf("Exit\n");
if(BusMode==0)
YW_USBHIDFree();//如果是USB端口,則釋放USB端口
else
YW_ComFree();//如果是串口就釋放串口
}
編譯requestcard.c
gcc requestcard.c -L. -lyw60x -lpthread -o requestcard
2.readblock.c
readblock.c演示程序用于讀取第一塊數據并且輸出,主程序中每按一次回車鍵,就讀一次卡, 如果按別的按鍵和回車鍵就退出
#include <stdio.h>
#include <termios.h>
#include <unistd.h>
#include <fcntl.h>
#include "yw60x.h"
int main(int argc, char** argv)
{
int readerid=1;
unsigned short CardType=0;
char CardMem;
unsigned char SNLen;
unsigned char Cardno[4];
int BusMode=0;
int iopen;
int BlockID=1;//要讀取的塊號
unsigned char Key[6]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};//默認密鑰6字節0xFF
unsigned char Data[16];
printf("0 for USB, 1-255 for COM Port:");
scanf("%d",&BusMode);
if(BusMode==0)
iopen=YW_USBHIDInitial();
else
iopen=YW_ComInitial(BusMode,19200);
if(iopen<0)
{
printf("Open Port Fail\n");
return 0;
}
printf("\nEnter for Read Card, others + Enter to Exit\n");
while(getchar()=='\n')
{
if(YW_RequestCard(readerid, REQUESTMODE_ACTIVE,&CardType)>0)
{
if(YW_AntiCollideAndSelect(readerid,0,&CardMem,&SNLen,Cardno)>0)
{
printf("Card No:");
for(int i=0;i<SNLen;i++)printf("%.2X",Cardno[i]);
printf("\n");
if(YW_KeyAuthorization(readerid,PASSWORD_A,BlockID,Key)>0)// 密鑰認證成功
{
if(YW_ReadaBlock(readerid,BlockID,16,Data)>0)//讀取M1卡第一塊的數據
{
printf("Data:");
for(int i=0;i<16;i++)printf("%.2X",Data[i]);
printf("\n");
}
}
}
}
}
printf("Exit\n");
if(BusMode==0)
YW_USBHIDFree();
else
YW_ComFree();
}
編譯readblock.c
gcc readblock.c -L. -lyw60x -lpthread -o readblock
2.writeblock.c
writeblock.c演示程序用于讀取第一塊數據并且輸出,主程序中每按一次回車鍵,就讀一次卡, 如果按別的按鍵和回車鍵就退出
#include <stdio.h>
#include <termios.h>
#include <unistd.h>
#include <fcntl.h>
#include "yw60x.h"
int main(int argc, char** argv)
{
int readerid=1;
unsigned short CardType=0;
char CardMem;
unsigned char SNLen;
unsigned char Cardno[4];
int BusMode=0;
int iopen;
int BlockID=1;//要寫入的塊號
unsigned char Key[6]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};//默認密鑰6字節0xFF
unsigned char Data[16]={0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0A,0x0B,0x0C,0x0D,0x0E,0x0F,0x00};;
printf("0 for USB, 1-255 for COM Port:");
scanf("%d",&BusMode);
if(BusMode==0)
iopen=YW_USBHIDInitial();
else
iopen=YW_ComInitial(BusMode,19200);
if(iopen<0)
{
printf("Open Port Fail\n");
return 0;
}
printf("\nEnter for Read Card, others + Enter to Exit\n");
while(getchar()=='\n')
{
if(YW_RequestCard(readerid, REQUESTMODE_ACTIVE,&CardType)>0)
{
if(YW_AntiCollideAndSelect(readerid,0,&CardMem,&SNLen,Cardno)>0)
{
printf("Card No:");
for(int i=0;i<SNLen;i++)printf("%.2X",Cardno[i]);
printf("\n");
if(YW_KeyAuthorization(readerid,PASSWORD_A,BlockID,Key)>0)// 密鑰認證成功
{
if(YW_WriteaBlock(readerid,BlockID,16,Data)>0)//寫入數據
{
printf("Write Data OK");
}
}
}
}
}
printf("Exit\n");
if(BusMode==0)
YW_USBHIDFree();
else
YW_ComFree();
}
編譯writeblock.c
gcc writeblock.c -L. -lyw60x -lpthread -o writeblock
注意事項: 由于串口和USB操作在部分linux下需要root權限, 執行時請使用root權限
RFID讀寫器,SDK,IC卡讀卡器,開發包,二次開發,智能卡讀卡器,RFID讀卡器,CPU卡讀寫器,讀卡模塊
北京友我科技有限公司 版權所有 (C)2015-2015
客戶服務中心信箱:coodor#126.com(將#改為@).客戶服務MSN: coodor#126.com(將#改為@)
熱線直撥: 010-57049038 18910685939 QQ: 896163157,1403463073
京ICP備14016005號
|
人与嘼ZOZO免费观看,人妻丰满熟妞AV无码区,成人动漫在线观看},日本三级带日本三级带黄
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<蜘蛛词>|
<文本链>
<文本链>
<文本链>
<文本链>
<文本链>
<文本链>