中 文 名:EM4100卡存儲容量:64bit工作頻率:125KHZ讀寫距離:2-15cm產品名稱:EM4100/EM4102卡芯片類型:μEM瑞士微電 EM4100/EM4102擦寫壽命:讀不限,只讀外形尺寸:ISO標準卡/厚卡封裝材料:PVC、ABS典型應用:身份識別、考勤系統、門禁系統、財物標識等詳細資料:進口瑞士微電子EM4100/4102無線射頻芯片,采用先進的芯片封裝工藝,可作為非接觸卡片應用的優良解決方案。同時提供優惠的印刷服務和適合應用環境的異形卡。可廣泛用于身份識別,考勤系統,門禁系統,過程控制
EM4100卡命名的原因是該卡的核心芯片是由EM Microelectronic(瑞士微電)公司生產。
【數據格式】
EM4100存儲64bits只讀數據,其數據格式如下:
EM4100卡與RFID讀卡器的交互過程中,按照以上數據格式循環傳輸,連續9個1表示一次傳輸的開始,每組5位中最后一位(P0~P9)是偶校驗(每組5位中1的個數為偶數個),在進行數據校驗的同時,確保了不會出現連續9個1與傳輸開始標志沖突。PC0~PC3位列校驗位,S0位停止位。
以下為一次傳輸的數據情況,該卡的生廠商標志位為0x06,卡號為0x001259E3,但是為了便于人們理解,往往將卡號轉換和進行一定變化后印刷在卡面上。例如上述卡,首先將低6位的“0x1259E3”轉換成十進制“1202659”,再拆分成“0x12”和“0x59E3”分別轉換成3位和5位的十進制數“018”和“23011”,因此印刷到卡片上的序列號為:0001202659 018,23011
單片機源程序如下:
- #include <REGX52.H>
- #include "LCD1602.h"
- #include "UART.h"
- #include "Buzzer.h"
- #define ON 0 //宏定義
- #define OFF 1
- //--定義全局變量數組--//
- unsigned char cdata[]="ID Card number:";
- unsigned char pwdata[]={0x30,0x30,0x32,0x34,0x33,0x46,0x30,0x37}; //00 24 3F 07四個字節卡號對應ASCII碼
- unsigned char ldata[]="00243F07";
- unsigned char rdata[12]; //存放接收字節
- unsigned int time;
- //--位定義--//
- //sbit Beep=P2^7; //蜂鳴器引腳定義
- sbit LED1=P2^0; //LED引腳定義
- sbit LED8=P2^7; //LED引腳定義
- //主函數//
- void main()
- {
- unsigned char i;
- LCD_Init(); //初始化LCD液晶屏
- UART_Init(); //初始化串口
- LCD_ShowString(1,1,cdata); //顯示標題
- P2=0xFF;
- while(1)
- {
- for(i=0;i<12;i++) //連續接收12個字節
- {
- while(!RI); //等待接收結束
- rdata[i]=SBUF; //轉存接收數據
- RI=0; //清除標志位
- }
- if((pwdata[0]==rdata[1])&&(pwdata[1]==rdata[2])&&(pwdata[2]==rdata[3])&&(pwdata[3]==rdata[4])&&(pwdata[4]==rdata[5])&&(pwdata[5]==rdata[6])&&(pwdata[6]==rdata[7])&&(pwdata[7]==rdata[8]))
- { //對比正確合法卡
-
- LCD_ShowString(2,1,ldata); //顯示ID卡號
- LED1=ON; //LED燈亮
- LED8=OFF;
- Buzzer_Time(300); //蜂鳴器短鳴
- }
- else
- {
- LCD_ShowString(2,1,"ERR"); //顯示ID卡號
- LED8=ON;
- LED1=OFF; //綠燈亮
- Buzzer_Time(1000); //蜂鳴器短鳴
- }
- }
- }
復制代碼
Keil代碼下載:
低頻讀卡器.zip
(41.68 KB, 下載次數: 56)
2022-2-20 17:48 上傳
點擊文件名下載附件
項目代碼
|