PIC Lesson: Wiegand RFID Reader


Wiegand RFID Reader adalah jenis RFID Reader yang lain, ia menggunakan Wiegand Protocol. Wiegand protocol menggunakan dua isyarat iaitu DATA0 dan DATA1.

Wiegand format mempunyai 26 bit. Bit pertama dan bit terakhir adalah parity.  Oleh itu, saya menukarkan bit ke-2 hingga bit ke-25 kepada nombor 24 bit. Di bawah adalah cara menentukan bit 0 dan bit 1 dalam isyarat Wiegand.

Sambungan DATA0 dan DATA1 boleh di sambungkan di mana-mana pin PIC.

Berikut adalah videonya.

PIC Source Code

Sertai Telegram Group bagi dapatkan source code


10 responses to “PIC Lesson: Wiegand RFID Reader”

  1. Hi

    I have a problem about reading data of wiegand 26 protocol. I am using PIC18F46K22.

    Can you give a lead about this. Can you send sample codes about it. I have written code but failed.

    Code is below. I wanna how many received data “0” and data “1”.

    I read

    data0: 25 piece

    data1: 1 piece.

    Can you help me pls?

    #include “lcd_test.c”

    #zero_ram

    #use delay(crystal=20000000)
    #INT_EXT2
    void read_wiegandD1()
    {
    disable_interrupts(INT_EXT2);
    if(length_count<26)
    {
    wie_data[length_count]="1";
    data1=data1+1;
    length_count=length_count+1;
    clear_interrupt(INT_EXT2);
    enable_interrupts(INT_EXT2);
    }
    }

    #use delay(crystal=20000000)
    #INT_EXT1
    void read_wiegandD0()
    {
    disable_interrupts(INT_EXT1);
    if(length_count25)
    {
    length_count=0;

    output_high(pin_D5);

    data_show();

    delay_ms(8000);

    }

    }
    }

    #use delay(crystal=20000000)
    void data_show()
    {
    lcd_gotoxy(1,3);
    printf(lcd_putc,”Data0: %u”,data0);

    lcd_gotoxy(1,4);
    printf(lcd_putc,”Data1: %u”,data1);

    }

    /**************************************
    Function: board_init
    Input Arguments:None
    Output Arguments: None
    Purpose:Initialize the board
    **************************************/
    /*
    #use delay(crystal=20000000)
    void board_init(void)
    {
    set_tris_b(0xFF);
    enable_interrupts(INT_EXT2_H2L);
    enable_interrupts(INT_EXT1_H2L);
    enable_interrupts(GLOBAL);

    length_count=0;

    }

  2. hi.. sya mahu tanya.. how the wiegand rfid connect to PC ? how to connect it ? erm, is there any other software are use ? PROTUES ?

  3. trima kasih Shahrul.. Shahrul, boleh sya tahu, UART jenis macam mna kena guna utk connect ke PC tu ya ? SK40C boleh kah ? erm, jika gunakan coding bagi PIC18F4580, adakah ia sama dengan coding PIC18F4550 ? sorry sya banyak tanya.. 🙂

  4. oh ok.. erm, sbenarnya sya masih blurr lagi tentang wiegand rfid ne.. tak boleh kah kalau PIC yang akan transfer data yang kena save..maksud sya, tak perlu connect wiegand rfid tu dekat PC ? so, PIC ke PC then PIC ke wiegand rfid ?

Leave a Reply to Shahrul Cancel reply

Your email address will not be published. Required fields are marked *