Nguồn blog : thachdt.com

Hướng dẫn viết code mạch điều khiển 4 kênh bạnc lệnh remote RF

Chức năng của mạch như sau :
 + Học lệnh từ remote 4 nút RF trên thị trường để điều khiển bất tắt 4 relay
 + Chuyển đổi giữa chế độ tự giữ relay hoặc không tự giữ relay khi nhấn nút trên remote đã học lệnh bằng cách nhấn giữ nút nhấn

Video mạch :

TRUNG TÂM SỬA CHỮA ĐIỆN TỬ QUẢNG BÌNH
MR. XÔ - 0901.679.359 - 80 Võ Thị Sáu, Phường Quảng Thuận, tx Ba Đồn, tỉnh Quảng Bình
Sửa điện tử tại Quảng Bình


Sơ đồ mạch :

sơ đồ mạch


+ Điện áp hoạt động của mạch này là 12V

+ Trong mạch mình sử dụng vi điều khiển PIC12F683 để thực hiện việc giải mã và lưu mã lệnh của nút nhấn vào bộ nhớ eepom nôi , sử dụng clock nội nên không cần thạch anh ngoài


Hình một trong nhiều mẫu remote nút mà mạch này hổ trợ học lệnh

Mẫu remote 4 nút

+ Mạch tách sóng mình sử dụng mạch tách thu sóng 315Mhz có sẵn và thông dụng nhất trên thị trường để dùng với remote 315MHz, hoặc các bạn có thể dùng với remote tần số 433MHz thông qua việc đổi sang dùng module thu sóng 433MHz

Hình module thu tách sóng :

Module thu sóng 315MHz hoặc 433MHz

Chuỗi dữ liệu thu được ở module thu sóng:

Code của mạch này như sau : mình sử dụng CCS để viết code 

Giải thích về code  :
 + Mình sử dụng ngắt ngoài trên chân INT để thực hiện việc đọc giữ liệu , sử dụng timer1 để đo thời gian xung mức cao và phân biệt bit 0 hoặc bit 1 trong chuỗi dữ liệu sau khi qua mạch tách thu sóng
 + Ngắt timer0 mỗi 1ms một lần để phục vụ giám sát thời gian có sóng RF tới và giám sát thời gian giấn nút
 + Hàm RF(); thực hiện việc đọc dữ liệu RF và lấy dữ liệu RF ra biến data
 + Hàm  read(char address); đọc dữ liều từ bộ nhớ eeprom
 + Hàm write(char address, long val); ghi dữ liệu vào bộ nhớ eeprom
 + Hàm  learn (); thực hiện chế độ học lệnh
 + Hàm main(); là hàm chính thực hiện gọi các hàm trên và thực thi chương trình

Ở mạch này mình sử dụng thêm watch dog timer để nếu có hiện tượng treo chương trình thì hàm restart_wdt(); sẽ tự động reset chip vi điều khiển PIC

Đoạn code này để chuyển giữ chế độ tự giữ relay và không tự giữ relay
   switch(chedo)
     {
      case 0:
         {
          if(data==data1)output_high(R1);
          else output_low(R1);
          if(data==data2)output_high(R2);
          else output_low(R2);
          if(data==data3)output_high(R3);
          else output_low(R3);
          if(data==data4)output_high(R4);
          else output_low(R4);
          break;
         }
      case 1:
         {
          if((data==data1)&&(m==1)){output_toggle(R1);m=0;}
          if((data==data2)&&(m==1)){output_toggle(R2);m=0;}
          if((data==data3)&&(m==1)){output_toggle(R3);m=0;}
          if((data==data4)&&(m==1)){output_toggle(R4);m=0;}
          if(data==0)m=1;
          break;
         }
     }

Giới thiệu sản phẩm :
Bo điều khiển từ xa 4 kênh bạnc lệnh đa chức năng
NO : THACHDT-RF-IR-4-12V V1.0
Điện áp hoạt động : 12V DC hoặc 12V AC ( 50Hz – 60Hz )
Chức Năng :
  + Học lệnh hầu hết các loại remote RF trên thị trường ( tần số 315MHz, hoặc 433MHz)
  + Học lệnh từ tất cả các remote hồng ngoại của tivi, đầu kĩ thuật số ..v.v
  + Nhớ được 3 remote khác nhau
  + Chế độ tự giữ hoặc không tự giữ relay
  + Chế độ tự sao lưu trạng thái relay khi mất điện
  + Còi bip báo ( một tiếng báo bật relay , hai tiếng báo tắt relay )
  + Bật tắt trực tiếp 4 relay bằng 4 nút nhấn trên bo

Bo điều khiển từ xa 4 kênh bạnc lệnh đa chức năng bản 12V

                                        NO : THACHDT-RF-IR-4-220V V1.0

220von
Bo điều khiển từ xa 4 kênh bạnc lệnh đa chức năng bản 220V 

                                         NO : THACHDT-RF-IR-4-220V V1.0

220von
Phiên bản 220V đấu với tải là các bóng đèn 220V


Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

− 3 = 3