Mục lục:
- Bước 1: Le Montage
- Bước 2: Le Code Arduino
- Bước 3: Infos Sur Les Codes Infra-Rouge
- Bước 4: Infos Sur Codes RX433
Video: Récupérer Les Codes Infra-Rouge Et 433mhz: 4 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:35
Le but est d’afficher les Code des télécommandes du style commande de lampe, porte de gara et autre fonctionnant sous 433 mhz (RX433) mais aussi ceux des télécommandes Infra-rouge de télévision au autre.
Trên pourra donc ensuite, bản dựng phim grâce à une autre, envoyer ces Code et piloter n’importe quoi!
Bước 1: Le Montage
Đơn giản, không Arduino Nano, diode réceptrice Infra-rouge et un récepteur 433 mhz.
Bước 2: Le Code Arduino
// InfraRouge
#bao gồm
int recvPin = 11; // pin Arduino pour récepteur InfraRouge (TOSP4838)
IRrecv không thể thay đổi (recvPin);
// RX433
#bao gồm
RCSwitch mySwitch = RCSwitch ();
giải mã kết quả;
void setup ()
{
Serial.begin (9600);
không thể thay đổi.enableIRIn ();
Uncv.blink13 (true); // allume la LED interne lors de l'envoie InfraRouge
mySwitch.enableReceive (0); // Chân cắm Récepteur RX433 (XY-MK-5V) 2 de Arduino Uno et Nano
}
// mã affichage des InfraRouge
void ircode (decode_results * results)
{
// Panasonic
if (results-> decode_type == PANASONIC) {
Serial.print (kết quả-> địa chỉ, HEX);
Serial.print (":");
}
Serial.print (results-> value, HEX);
} // vô hiệu
// afficahge des mã encodés
mã hóa void (decode_results * kết quả)
{
switch (results-> decode_type) {
vỡ nợ:
case UNKNOWN: Serial.print ("Inconnu"); nghỉ;
case NEC: Serial.print ("NEC"); nghỉ;
case SONY: Serial.print ("SONY"); nghỉ;
case RC5: Serial.print ("RC5"); nghỉ;
case RC6: Serial.print ("RC6"); nghỉ;
case DISH: Serial.print ("DISH"); nghỉ;
case SHARP: Serial.print ("SHARP"); nghỉ;
case JVC: Serial.print ("JVC"); nghỉ;
case SANYO: Serial.print ("SANYO"); nghỉ;
case MITSUBISHI: Serial.print ("MITSUBISHI"); nghỉ;
case SAMSUNG: Serial.print ("SAMSUNG"); nghỉ;
case LG: Serial.print ("LG"); nghỉ;
case WHYNTER: Serial.print ("WHYNTER"); nghỉ;
case AIWA_RC_T501: Serial.print ("AIWA_RC_T501"); nghỉ;
case PANASONIC: Serial.print ("PANASONIC"); nghỉ;
case DENON: Serial.print ("Denon"); nghỉ;
}
}
// kết xuất les résultats
void dumpInfo (decode_results * results)
{
// Kiểm tra xem bộ đệm có bị tràn không
if (kết quả-> tràn) {
Serial.println ("Mã IR quá dài. Chỉnh sửa IRremoteInt.h và tăng RAWBUF");
trở lại;
}
// Hiển thị tiêu chuẩn mã hóa
Serial.print ("Mã hóa:");
mã hóa (kết quả);
Serial.println ("");
// Hiển thị mã & độ dài
Serial.print ("Mã:");
ircode (kết quả);
Serial.print ("(");
Serial.print (kết quả-> bit, DEC);
Serial.println ("bit)");
}
//kết cấu
void dumpRaw (decode_results * results)
{
// In dữ liệu thô
Serial.print ("Timing [");
Serial.print (results-> rawlen-1, DEC);
Serial.println ("]:");
for (int i = 1; i rawlen; i ++) {
unsigned long x = results-> rawbuf * USECPERTICK;
if (! (i & 1)) {// chẵn
Serial.print ("-");
if (x <1000) Serial.print ("");
if (x <100) Serial.print ("");
Serial.print (x, DEC);
} else {// lẻ
Serial.print ("");
Serial.print ("+");
if (x <1000) Serial.print ("");
if (x <100) Serial.print ("");
Serial.print (x, DEC);
if (i rawlen-1) Serial.print (","); // ',' không cần thiết cho cái cuối cùng
}
if (! (i% 8)) Serial.println ("");
}
Serial.println (""); // Dòng mới
}
//+=============================================================================
// Kết xuất cấu trúc decode_results.
//
void dumpCode (decode_results * results)
{
// Bắt đầu khai báo
Serial.print ("int không dấu"); // kiểu biến
Serial.print ("rawData ["); // tên mảng
Serial.print (results-> rawlen - 1, DEC); // kích thước mảng
Serial.print ("] = {"); // Bắt đầu khai báo
// Kết xuất dữ liệu
for (int i = 1; i rawlen; i ++) {
Serial.print (results-> rawbuf * USECPERTICK, DEC);
if (i rawlen-1) Serial.print (","); // ',' không cần thiết trên cái cuối cùng
if (! (i & 1)) Serial.print ("");
}
// Kết thúc khai báo
Serial.print ("};"); //
// Bình luận
Serial.print ("//");
mã hóa (kết quả);
Serial.print ("");
ircode (kết quả);
// Dòng mới
Serial.println ("");
// Bây giờ kết xuất các mã "đã biết"
if (results-> decode_type! = UNKNOWN) {
// Một số giao thức có địa chỉ
if (results-> decode_type == PANASONIC) {
Serial.print ("unsigned int addr = 0x");
Serial.print (kết quả-> địa chỉ, HEX);
Serial.println (";");
}
// Tất cả các giao thức đều có dữ liệu
Serial.print ("int data = 0x");
Serial.print (results-> value, HEX);
Serial.println (";");
}
}
void loop ()
/ ************************************************* * Hồng ngoại ********************************************** /
{
giải mã kết quả; // Nơi nào đó để lưu trữ kết quả
if (Uncv.decode (& results))) {// Lấy mã IR
dumpInfo (& kết quả); // Xuất kết quả
dumpRaw (& kết quả); // Xuất kết quả ở định dạng RAW
dumpCode (& kết quả); // Xuất kết quả dưới dạng mã nguồn
Serial.println (""); // Dòng trống giữa các mục nhập
không thể tìm thấy (); // Chuẩn bị cho giá trị tiếp theo
}
/ ************************************************* *** RX433 ******************************************** /
if (mySwitch.available ())
{
int value = mySwitch.getReceiveValue ();
Serial.println ("RX433");
if (giá trị == 0) {
Serial.print ("Mã hóa giải mã");
} khác
{
Serial.print ("Reçu");
Serial.print (mySwitch.getReceiveValue ());
Serial.print ("/");
Serial.print (mySwitch.getReceiveBitlength ());
Serial.print ("bit");
Serial.print ("Protocole:");
Serial.println (mySwitch.getReceiveProtocol ());
}
mySwitch.resetAvailable ();
} // RX433
}//vòng
Bước 3: Infos Sur Les Codes Infra-Rouge
Là giao thức plusieurs:
NEC: 32 bit (chi tiết giao thức)
Sony: 12 ou 20 bit (chi tiết giao thức) (Hiểu mã điều khiển từ xa IR của Sony.)
RC5: 12 bit (chi tiết giao thức)
RC6: 20 ou 36 bit (chi tiết giao thức)
Đổ Sony et RC5 / 6, hộp truyền động chaque doit être répétés 3 fois!
CHÚ Ý: la libraryirie IRremote.h ne semble pas pouvoir envoyer des mã codés sur plus de 32bits. Les RC6, 36 doivent donc êtres envoyer en raw, qui prennent plus de taille mémoire.
L’envoie des Code se fera avec laosystemirie IRremote.h
Exemple: (0x devant le code) et le nombre de bits irsend.sendNEC (0xA55A38C7, 32);
Bước 4: Infos Sur Codes RX433
L’envoie se fera avec laosystemirie RCSwitch.h
Exemple mySwitch.send (1975778, 24);
Trên peut facilement piloter avec cela des prises commandés.
Đề xuất:
Cách tạo chuông cửa không cảm ứng, phát hiện nhiệt độ cơ thể, GY-906, 433MHz bằng Arduino: 3 bước
Cách tạo chuông cửa không cảm ứng, phát hiện nhiệt độ cơ thể, GY-906, 433MHz bằng Arduino: Hôm nay chúng ta sẽ tạo chuông cửa không cảm ứng, nó sẽ phát hiện nhiệt độ cơ thể của bạn. Trong tình huống hiện tại, điều rất quan trọng là phải biết nhiệt độ cơ thể của ai đó cao hơn bình thường, khi ai đó đang thả đồ. Dự án này sẽ hiển thị Đèn đỏ nếu phát hiện bất kỳ
Bộ đàm tự làm với mô-đun RF 433MHz chung: 4 bước
Tự làm Walkie-Talkie với Mô-đun RF 433MHz Chung: Trong dự án này, tôi sẽ hướng dẫn bạn cách sử dụng các mô-đun RF 433MHz chung từ Ebay để tạo ra một Walkie-Talkie chức năng. Điều đó có nghĩa là chúng tôi sẽ so sánh các Mô-đun RF khác nhau, tìm hiểu một chút về bộ khuếch đại lớp d và cuối cùng là xây dựng Walkie-Talkie.
Điều khiển vô tuyến RF 433MHZ bằng HT12D HT12E - Tạo điều khiển từ xa Rf bằng HT12E & HT12D với 433mhz: 5 bước
Điều khiển vô tuyến RF 433MHZ bằng HT12D HT12E | Tạo điều khiển từ xa Rf bằng HT12E & HT12D với 433mhz: Trong phần hướng dẫn này, tôi sẽ chỉ cho bạn cách tạo điều khiển từ xa RADIO bằng cách sử dụng mô-đun bộ thu phát 433mhz với mã hóa HT12E & IC giải mã HT12D.Trong hướng dẫn này, bạn có thể gửi và nhận dữ liệu bằng các LINH KIỆN rất rẻ như: HT
ROBOCAR ĐIỀU KHIỂN TỪ XA MÀU ĐỎ INFRA SỬ DỤNG AVR (ATMEGA32) MCU: 5 bước
ROBOCAR ĐIỀU KHIỂN TỪ XA MÀU ĐỎ INFRA SỬ DỤNG MCU AVR (ATMEGA32): DỰ ÁN hiện tại mô tả thiết kế và triển khai RoboCar điều khiển từ xa bằng tia hồng ngoại (IR) có thể được sử dụng cho các ứng dụng điều khiển không người lái tự động khác nhau. Tôi đã thiết kế RoboCar được điều khiển từ xa (chuyển động trái-phải / trước-sau). NS
Mô-đun RF 433MHZ - Tạo bộ thu và bộ phát từ mô-đun RF 433MHZ mà không cần bất kỳ bộ vi điều khiển nào: 5 bước
Mô-đun RF 433MHZ | Tạo bộ thu và phát từ mô-đun RF 433MHZ mà không cần bất kỳ bộ vi điều khiển nào: Bạn có muốn gửi dữ liệu không dây không? Dễ dàng và không cần vi điều khiển? Sau đây chúng ta bắt đầu, trong phần hướng dẫn này, tôi sẽ chỉ cho bạn bộ phát và bộ thu rf cơ bản đã sẵn sàng để sử dụng! Trong hướng dẫn này, bạn có thể gửi và nhận dữ liệu bằng cách sử dụng rất nhiều phiên bản