韋根26協(xié)議以及示例程序_第1頁
韋根26協(xié)議以及示例程序_第2頁
韋根26協(xié)議以及示例程序_第3頁
免費預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、韋根協(xié)議ID卡號讀取2021-03-31 20:52最近在做門禁系統(tǒng),第一次聽說韋根協(xié)議。我第一階段要做的事情就是用韋根讀 卡器將ID卡的卡號讀出來,當(dāng)我拿到讀卡器和ID卡的時候感覺無從下手??僧?dāng) 我把韋根協(xié)議都研究透之后想想也不過如此而已,下面簡單的介紹一下韋根協(xié) 議。韋根協(xié)議是國際上統(tǒng)一的標(biāo)準(zhǔn),它也是一種數(shù)據(jù)傳輸協(xié)議。標(biāo)準(zhǔn)的26-bit應(yīng)該是最常用的格式。此外,還有 34-bit、37-bit等格式。格式的含義如下:當(dāng)給 出這一串?dāng)?shù)字088,用戶并不知道這串?dāng)?shù)字的含義,但如果說這是一個 號碼 的時候,那么你可能就會說:哦,028是成都的區(qū)號,而是 號碼。呵呵,不 錯,這正是四川航空的效勞熱

2、線。 但是安防行業(yè)并不愿意把這些格式公開,而安防公司也常常變化這些格式來保證產(chǎn)品的保密性。而標(biāo)準(zhǔn)26-bit格式是一個開放式的格式,這就意味著任何人都可以購置某一特 定格式的HID卡,并且這些特定格式的種類是公開可選的。26-Bit格式就是一個廣泛使用的工業(yè)標(biāo)準(zhǔn),并且對所有HID的用戶開放。幾乎所有的門禁控制系統(tǒng)都 接受標(biāo)準(zhǔn)的26-Bit格式。Data。,數(shù)據(jù) 1 Data1D0, D1在沒有數(shù)據(jù)輸出時都、Wiegand 韋根接口號。Wiegand接口通常由3根線組成,它們是:數(shù)據(jù)0 和Data return。這3條線負(fù)責(zé)傳輸 Wiegand信 保持+5V高電平。假設(shè)輸出為0,那么D0拉低一段

3、時間,假設(shè)輸出為1,那么D1拉低毓沖周期Mms脈沖ov0V段時間。如圖:、標(biāo)準(zhǔn)26位Wiegand通訊協(xié)議 標(biāo)準(zhǔn)韋根輸出是由26位二進制數(shù)組成,每一位的含義如下:1 2 9 10 25 26NCUDtatOZinaDatalX X X X X X X X X X X X X X X X X X XXXXXXX二進制第1位為213位的偶校驗位第29位對應(yīng)與電子卡 HID碼 的低8位第10-25位對應(yīng)電子卡的PID號 碼第26位為14-25位的奇校驗位這26位數(shù)據(jù)在讀出器的韋根輸出線 DO, D1上輸出、HID和 PIDHID號碼即Hidden ID code隱含碼,PID號碼即Public ID

4、 code公開碼。PID很容 易在讀出器的輸出結(jié)果中找到,但 HID在讀出器的輸出結(jié)果中局部或者全部隱 掉。HID是一個非常重要的號碼,它不僅存在于卡中,也存在于讀卡器中。如果 卡中的HID與讀卡器中的HID不同的話,那么這張卡就無法在這個讀卡器上正常 工作。四、Wiegand接口硬件設(shè)計可以將 Wiegand接口的DataO和Data1兩個輸出接到MCU的兩個IO腳上,采用 查詢的方式接收數(shù)據(jù),但這樣接收并不可靠。比較好的方法是將Data0和Data1接到MCU的兩個中斷引腳上,采用中斷的方式接收數(shù)據(jù)。如圖:例如程序:#in clude<>#in clude<>#in

5、 clude<>#define DELAY_TIME 60 /*經(jīng)實驗,不要小于 50 !否那么可能造成時序混亂 */#define TRUE 1#define FALSE 0#defi ne uchar un sig ned char#define uint unsigned intsbit DATA仁P32; /韋根讀卡器的 DATA1接單片機的 P3A2sbit DATA0=P3A3; /韋根讀卡器的 DATA 0接單片機的 卩3人3bit Even; / 偶檢驗位bit Odd; / 奇檢驗位bit CheakEven=0 ;/偶檢驗bit CheakOdd=1;/ 奇檢驗

6、uchar Cnt=0;/uchar WG26=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;/ 接收韋根數(shù)據(jù) 26 位PIDuchar WGstr3=0,0,0;存韋根ID卡卡號的HID和PID碼,其中HID碼為8位即一字節(jié), 碼 16 位兩字節(jié)uchar i;uchar j=0;void Init()EA=0;TMOD=0x20;TL1=0xfd;TH1=0xfd;設(shè)置波特率為9600的定時器1為方式2以及初始值PCON=0x00;SCON=0xd8; /設(shè)置串口方式IT0=1;/ 設(shè)置外部中斷0為下降沿觸發(fā)方式IT1=1;/ 設(shè)置

7、外部中斷1為下降沿觸發(fā)方式EX0=1;/ 開外部中斷 0EX1=1;/開外部中斷 1TR1=1;/ 開定時器 1EA=1;/ 開所有中斷void Weigand(uchar *str) / 把 26 位韋根數(shù)據(jù)轉(zhuǎn)換為 3 字節(jié)數(shù)據(jù)存儲uchar k;for(k=0;k<26;k+)if(k<=0)/ 讀偶檢驗位if(strk=0)Even=0;elseEven=1;if(k>=25) / 讀奇檢驗位if(strk=0)Odd=0;elseOdd=1;if(k<=8) / 讀 HID 碼低 8 位if(strk=0x00) WGstr0|=0x00;else WGstr0

8、|=0x01;CheakEven= CheakEven;/ 根據(jù)HID碼低8位1的個數(shù)來確定偶檢驗位是 1 還是 0 if(k<8) WGstr0=WGstr0<<1;if(k<=16)/ 讀 PID碼高 8 位if(strk=0x00) WGstr1|=0x00;elseWGstr1|=0x01;CheakOdd=CheakOdd; 1111根據(jù)PID碼高8位1的個數(shù)來確定奇檢驗位是 1 還是 0 if(k<16)WGstr1=WGstr1<<1;else /讀PID碼的低8位if(strk=0x00)WGstr2|=0x00;elseWGstr2|

9、=0x01;CheakOdd=CheakOdd; II根據(jù)PID碼低8位1的個數(shù)來確定奇檢驗位是 1 還是 0 if(k<24)WGstr2=WGstr2<<1; void main()/P1=0x55;Init();/ 調(diào)用初始化函數(shù) Cnt=0;while(1)if(Cnt>=26)EA=0; / 關(guān)中斷以免外部中斷的干擾Weigand(WG);/ 將讀到的 26 位韋根數(shù)據(jù)轉(zhuǎn)換位 3 字節(jié)格式 EA=1;for(j=0;j<3;j+) / 用串口調(diào)試工具顯示讀到的卡號 SBUF=WGstrj; while(TI=0); TI=0; WGstrj=0; Cnt=0;void DATA0_Interr

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論