Điều khiển từ xa bằng RF 4 kênh dùng PT2262-PT2272-PIC16F54

Điều khiển từ xa bằng RF 4 kênh dùng PT2262-PT2272-PIC16F54



-
 PT2262 & PT2272 là sản phẩm của  Princeton Technology ra đời sau dòng mã hóa 12E/D của hãng  Holtek
 PT2262 có 2 loại chính: +Loại 8 địa chỉ mã hóa và 4 địa chỉ dữ liệu vào 
                                                   +Loại 6 địa chỉ mã hóa và 6 địa chỉ dữ liệu vào      
 PT2272 cũng có 2 loại : +Loại 8 địa chỉ mã hóa và 4 chân dữ liệu ra (PT2272-L4) 
                                                    +Loại 6 địa chỉ mã hóa và 6 chân dữ liệu ra (PT2272-L6)
Mình chỉ giới thiệu về loại L4 vì nó thông dụng ở Việt Nam:
         PT2262 sử dụng cách mã hóa 12 bits với 3 địa chỉ trạng thái (tức là mã hóa  +,mã hóa -,mã hóa 0) như vậy nó có 531411 địa chỉ mã hóa ,bạn có thể truyền được cùng 1 lúc song song 4 dữ liệu, nếu truyền dữ liệu thì bạn nên mặc định cho 4 chân dữ liệu này là 1 hoặc 0 tức là dùng điện trở kéo lên VCC hoặc kéo xuống GND

Toàn bộ file tại đây các bạn có thể tải về miễn phí: 

http://www.mediafire.com/download/1aanovv7jva928v/Remote_RF_315.rar





   Xây dựng project: 
   +Ở bộ điều khiển từ xa thì mình mua module điều khiển từ xa 4 chấu (4 nút nhấn) giá 45k ở công ty ChipViet Đà Nẵng có vỏ đẹp ,màu vân gỗ  ,nhỏ gọn nhẹ và có móc để móc vào chìa khóa ,thời lượng pin lâu.
   +Mình chỉ xây dụng bo mạch thu:
                   +Yêu cầu của bo mạch thu:  nhấn bất kì nút trên remote thì role tương ứng sẽ giữ khi nhấn nút 1 lần nữa thì role mới nhả ,như vậy sẽ có 4 nút trên remote tương ứng với 4 role.
                    + Vì PT2272-L4 không giữ role khi nhả nút ấn trên remote nên mình sử dụng con PIC16f54 giá 12k để điều khiển role vì vậy yêu cầu các bạn làm theo cách này phải biết lập trình cho chíp vi xử lí (lập trình cho PIC) hoặc các bạn có thể dùng flipfop như 4013 để giữ role (cách này thì quá phức tạp độ tin cậy không cao so với cách của mình thì cách trên hay hơn)

Đây là mạch in do mình vẽ trên proteus:




Mạch đã test chạy tốt

Linh kiện trong mạch:
      +R 10K                                
      +R 620k                                 
      +R 2.2 (om) 2W                     
      +C 22pF                                 
      +C 0.001uF (104)                   
      +C 1000uF                             
      +C 10uF                                 
      +IC ULN2003                        
      +Thạch anh (Xtall) 12MHz   
      +IC Ổn áp nguồn 78L05        
      +Rơle 12V                              
      +PT2272                                 
      +PIC16F54                             
      +Domino xanh 2C                  
      +module RF thu 315MHz 
#include <16f54.h>
#FUSES LP, NOWDT, NOPROTECT
#use delay (clock = 4M)
int x,y,z,k;
void main (void)
{
output_low(PIN_B4);
output_low(PIN_B5);
output_low(PIN_B6);
output_low(PIN_B7);
while(true)
{
  while(true)
    {
     if (!input(PIN_B0)&&(x==0))
        {
         output_toggle(PIN_B7);
         x=1;
        }
     if (input(PIN_B0))
     x=0;
     break;
    }
  while(true)
    {
     if (!input(PIN_B1)&&(y==0))
        {
         output_toggle(PIN_B6);
         y=1;
        }
     if (input(PIN_B1))
     y=0;
     break;
    }
  while(true)
    {
     if (!input(PIN_B2)&&(z==0))
        {
         output_toggle(PIN_B5);
         z=1;
        }
     if (input(PIN_B2))
     z=0;
     break;
   }
  while(true)
    {
     if (!input(PIN_B3)&&(k==0))
        {
         output_toggle(PIN_B4);
         k=1;
        }
     if (input(PIN_B3))
     k=0;
     break;
   }
}
}

Previous
Next Post »