Arduino 433Mhz отсылаем коды кнопок радио-пультов - от радио розеток через bat файл Radio sockets
ฝัง
- เผยแพร่เมื่อ 8 ม.ค. 2025
- /* Radio_sockets_433Mhz_bat_timer_Arduino_2021_01_08
отсылаем "пакеты" с кодами кнопок (радио-пультов - от радио розеток) с ПК - через bat файл или (монитор порта)-(COM порт)
для каждого радио-кода есть свой "независимый" таймер.
в каждом "пакете" с кодами, есть данные для таймера, для авто выключения радио розетки.
Arduino radio sockets on off Leonardo ATmega32u4 Arduino radio sockets on off RF Radio 433Mhz коды
arduino-IDE v 1.6.12
Вспомогательные видео материалы.
как ? узнать код - кнопки радио пульта 433Mhz
how? learn the code button RF Remote control.
• Video
Библиотека для отправки Radio кодов. yadi.sk/d/6kwep...
Radio_sockets_433Mhz_bat_timer_Arduino_2021_01_08.ino
drive.google.c...
drive.google.c...
'#' символ конца строки,
'~' символ разделения частей строки
Идентификатор части строки 'N' для записи в переменную numberCode // номер "пакета" с кодами
Идентификатор части строки 'C' для записи в переменную radioCode_ON // код включения радио розетки
Идентификатор части строки 'c' для записи в переменную radioCode_OFF // код выключения радио розетки
Идентификатор части строки 'T' для записи в переменную timer_auto_off // время таймера для авто выключения радио розетки
Идентификатор части строки 'R' для записи в переменную repeats // количество повторов отправляемых радио кодов
пример строки
0N~18062C~18060c~60T~7R# для отправки кода для RF_1_ON_OFF
1N~19034C~19032c~0T~7R# для отправки кода для RF_2_ON_OFF
2N~15146C~15144c~0T~7R# для отправки кода для RF_3_ON_OFF
3N~45717C~45717c~1T~0R# для отправки кода для R_1
4N~45699C~45699c~1T~0R# для отправки кода для R_2
5N~45691C~45691c~1T~0R# для отправки кода для R_3
3N~45717C~45717c~0T~0R# для отправки кода для R_1
4N~45699C~45699c~0T~0R# для отправки кода для R_2
5N~45691C~45691c~0T~0R# для отправки кода для R_3
*/
/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
// Препроцессорная компиляция кода.
// Препроцессор выполняет предварительную настройку кода, перед передачей компилятору (загрузкой в Arduino)
#define DEBUG_PRINT_SERIAL HIGH // (ВЫБЕРИТЕ!) режим тестирования устройства
//#define DEBUG_PRINT_SERIAL LOW // (ВЫБЕРИТЕ!) режим эксплуатации устройства
// для экономии памяти микроконтроллера, в режиме эксплуатации устройства, эти строки не будут загружаться в микроконтроллер
#if DEBUG_PRINT_SERIAL == HIGH
#define DEBUG_SERIAL_PRINT(x) Serial.print(x);
#define DEBUG_SERIAL_PRINTLN(x) Serial.println(x);
#define DEBUG_SERIAL_WRITE(x) Serial.write(x);
#else
#define DEBUG_SERIAL_PRINT(x)
#define DEBUG_SERIAL_PRINTLN(x)
#define DEBUG_SERIAL_WRITE(x)
#endif
/* ###################################### */
// для отладки кода, выводим название функции, номер строки начало функции, и другую информацию.
#define DEBUG_FUNCTION_LINE \
DEBUG_SERIAL_PRINT(__PRETTY_FUNCTION__); \
DEBUG_SERIAL_PRINT(F("\t""LINE""\t")); \
DEBUG_SERIAL_PRINT(__LINE__); \
DEBUG_SERIAL_PRINT(F("\t")); \
DEBUG_SERIAL_PRINTLN(__COUNTER__);
#include "RemoteSwitch.h" // устанавливаем библиотеку для отправки радио кодов на радио розетки
#define RADIO_PIN 10 // PIN для радио передатчика 433 МГц.
#define MAXIMUM_PACKETS_RADIO_CODES 6 // максимальное количество пакетов с радио кодами
#define SIZE_STRUCT_CODE (sizeof(arrStructCode)/sizeof(arrStructCode[0])) // вычисляем количество элементов массива структур
byte numberCode; // номер структуры "пакета" с радио кодами
char arrSerialRead[99] = {0}; // массив char для хранения входящей сырой строки
struct // массив структур для хранения "пакетов" с кодами, таймерами,...
{
bool flag_oldCode : 1; // флаг - повторно отправленный, один и Тодже код, занимает 1 бит
unsigned long radioCode_ON; // поступивший код включения радио розетки
unsigned long radioCode_OFF; // поступивший код выключения радио розетки
unsigned long timer_auto_off; // время таймера - для автоматического отключения розетки
byte repeats; // количество повторов отправляемых радио кодов
} arrStructCode[MAXIMUM_PACKETS_RADIO_CODES]; // максимум радио розеток
Ссылка на
• Arduino 433Mhz отсылае...