Tư vấn: 0979.466.469 / 0938.128.290

MENU

Giao tiếp RFID với vi điều khiển 8051

Báo giá đặt hàng nhập

Giao tiếp RFID với vi điều khiển 8051 và nguyên lý của giao tiếp RFID với vi điều khiển này. Chúng ta hãy cùng nhau tìm hiểu qua bài viết sau

Giao tiếp RFID với vi điều khiển 8051

 

RFID là viết tắt của Radio Frequency Identification (nhận dạng qua tần số vô tuyến) là một phương pháp dùng sóng điện từ để truyền dữ liệu cho mục đích nhận dạng thẻ được liên kết với cá thể nào đó. Một hệ thống RFID bao gồm một bộ truyền dữ liệu (thẻ) và một bộ đọc. Thẻ sẽ được mã hoá thành một code riêng biệt và bộ đọc sẽ quét mã này cho mục đích nhận dạng.

Thẻ có 2 loại: chủ động và bị động. Thẻ chủ động có được tích hợp pin và nó truyền code (mã vạch) một cách định kỳ, còn gọi là thẻ cảm ứng. Thẻ bị động được cấp nguồn nhờ vào nguyên lý cảm ứng điện từ tín hiệu truyền bởi bộ đọc. Ứng dụng đặc trưng của RFID: truy cập vào hệ thống, thẻ ID (thẻ nhận dạng cá nhân), xác định danh tính người hoặc động vật, dùng trong hệ thống thanh toán, định dạng mã vạch của hàng hoá... Thẻ RFID là loại thẻ có nhiều hình dạng nhưng hình dạng phổ biến nhất là dạng thẻ dẹt. Bộ đọc RFID có mặt trên thị trường trong hình dạng của một module với các phần cứng hỗ trợ. Dưới đây là hình minh hoạ một thẻ RFID và bộ đọc RFID

Về cơ bản các thiết bị này bao gồm bộ nhớ bán dẫn để chứa đựng mã vạch (là mã độc nhất), mạch điều chế và một cuộn dây. Cuộn dây đóng vai trò là nguồn cấp nhờ ứng dụng cảm ứng điện từ khi nó ở gần bộ đọc, cuộn dây còn được coi như là một ăng ten trong việc truyền mã ID.

Mạch điều chế điều chế mã vạch (độc nhất) vào sóng truyền. Bộ đọc về cơ bản chứa cuộn cảm và các sơ đồ mạch điện. Cuộn cảm làm bộ kích hoạt thẻ và còn là ăng ten nhận tín hiệu được truyền từ thẻ. Mạch giải mã tín hiệu này chuyển sang một dạng phù hợp cho giai đoạn tiếp theo (vi điều khiển). Sơ đồ nguyên lý giao tiếp module RFID với vi điều khiển 8051 được biểu diễn ở hình dưới:

Mã ID độc nhất trong thẻ RFID được đọc bởi mạch và được hiển thị trên màn hình LCD 16 × 2. Chân Tx của mô-đun RFID được kết nối với Cổng 3.5 của vi điều khiển. Bộ vi điều khiển nhận dữ liệu từ mô-đun RFID thông qua kênh này. Khoá S1, tụ C1 và điện trở R1 tạo thành mạch Reset. Tụ điện C2, C3 và tinh thể thạch anh X1 được liên kết với mạch Reset.

Chương trình nạp vào vi điều khiển 8051:

RS EQU P2.7                  //equates P2.7 to RS

RW EQU P2.6                  //equates P2.6 to RW

E  EQU P2.5                  //equates P2.5 to E

ORG 000H                     //origin

MOV TMOD,#00100001B          //Timer1=Mode2 timer & Timer0=Mode1 timer

MOV TH1,#253D                //loads TH1 with 253D(9600 baud)

MOV SCON,#50H                //sets serial port to Mode1 and receiver enabled

SETB TR1                     //starts Timer1

 

MAIN:ACALL DINT              //calls DINT subroutine

     ACALL TEXT1             //calls TEXT1 subroutine       

     ACALL LINE2             //calls LINE2 subroutine

     ACALL TEXT2             //calls TEXT2 subroutine

     ACALL READ              / /calls READ subroutine

     CLR REN                 //disables serial data receive

     ACALL LINE2             //calls LINE2 subroutine

     ACALL WRITE             //calls WRITE subroutine

     ACALL DELAY1            //calls DELAY1 subroutine

     SETB REN                //enables serial data receive

     SJMP MAIN               //jumps back to MAIN label

 

DELAY1:MOV R3,#46D           //loads R3 with 46D

BACK:  MOV TH0,#00000000B    //loads TH0 with all 0's

       MOV TL0,#00000000B    //loads TL0 with all 0's

       SETB TR0              //starts Timer 0           

HERE1: JNB TF0,HERE1         //loops here until TFO flag is 1    

       CLR TR0               //stops TR1     

       CLR TF0               //clears TF0 flag

       DJNZ R3,BACK          //iterates the loop 46 times for 3s delay

       RET                   //returns from subroutine

 

READ:MOV R0,#12D             //loads R0 with 12D

     MOV R1,#160D            //loads R1 with 160D

WAIT:JNB RI,WAIT             //loops here until RI flag is set

     MOV A,SBUF              //moves SBUF to A        

     MOV @R1,A               //moves A to location pointed by R1

Quảng cáo đặt hàng nhập

     CLR RI                  //clears RI flag

     DJNZ R0,WAIT            //iterates the loop 12 times

     RET                     //return from subroutine

 

WRITE:MOV R2,#12D            //loads R2 with 12D

      MOV R1,#160D           //loads R1 with 160D

BACK1:MOV A,@R1              //loads A with data pointed by R1

      ACALL DISPLAY          //calls DISPLAY subroutine

      INC R1                 //incremets R1

      DJNZ R2,BACK1          //iterates the loop 160 times

      RET                    //return from subroutine

     

 

TEXT1: MOV A,#52H            //loads A with ascii of "R"

    ACALL DISPLAY            //calls DISPLAY subroutine

    MOV A,#46H               //loads A with ascii of "F"

    ACALL DISPLAY            //calls DISPLAY subroutine

    MOV A,#49H               //loads A with ascii of "I"

    ACALL DISPLAY            //calls DISPLAY subroutine

    MOV A,#44H               //loads A with ascii of "D"

    ACALL DISPLAY            //calls DISPLAY subroutine

    MOV A,#20H               //loads A with ascii of "space"

    ACALL DISPLAY            //calls DISPLAY subroutine

    MOV A,#52H               //loads A with ascii of "R"

    ACALL DISPLAY            //calls DISPLAY subroutine

    MOV A,#45H               //loads A with ascii of "E"

    ACALL DISPLAY            //calls DISPLAY subroutine

    MOV A,#41H               //loads A with ascii of "A"

    ACALL DISPLAY            //calls DISPLAY subroutine

    MOV A,#44H               //loads A with ascii of "D"

    ACALL DISPLAY            //calls DISPLAY subroutine

    MOV A,#45H               //loads A with ascii of "E"

    ACALL DISPLAY            //calls DISPLAY subroutine

    MOV A,#52H               //loads A with ascii of "R"

    ACALL DISPLAY            //calls DISPLAY subroutine

    RET                      //returns from subroutine

    

TEXT2: MOV A,#53H            //loads A with ascii of "S"

    ACALL DISPLAY            //calls DISPLAY subroutine

    MOV A,#77H               //loads A with ascii of "w"

    ACALL DISPLAY            //calls DISPLAY subroutine

    MOV A,#69H               //loads A with ascii of "i"

    ACALL DISPLAY            //calls DISPLAY subroutine

    MOV A,#70H               //loads A with ascii of "p"

    ACALL DISPLAY  

Gia công pcb 932*150
Sản phẩm nổi bật
Chưa có dữ liệu
Hỗ trợ liên kết
0979466469
0899909838
0938128290
0899909838
Khiếu nại: 0964238397
0979466469
0868565469
0868565469

Hotline: 0979 466 469

Loading
0359 366 469
Bạn cần linh kiện mẫu ? 7-11 ngày