собираю приемник и передатчик на основе этой библиотеки двух переменных по принципу отсюда http://homes-smart.ru/index.php/obo...tmov-peredachi-dannykh-v-vide-tsifrovogo-koda передатчик работает и передает коды вот скетчь Код (C++): #include <Wire.h> #include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x27,16,2); #include <RCSwitch.h> RCSwitch mySwitch = RCSwitch(); int q; int z; int q1; //переменная для конвертации int z1; //переменная для конвертации #define key1 300000 #define key2 303000 void setup() { lcd.init(); lcd.backlight(); Serial.begin(9600); lcd.setCursor(0, 0); // Устанавливаем курсор в начало 2 строки String s = "START ARDUINO"; for (int i = 0; i < s.length(); i++) { lcd.print(s[i]); delay(100); } mySwitch.enableTransmit(8); // пин,на который подключен передатчик randomSeed(analogRead(0)); } void loop() { delay(20); // Защита от скачков напряжения тока. int q = analogRead(A0); // Чтоб не засорять радио эфир, отправим данные только, если обнаружим изменения на PIN (A0). int z = analogRead(A1); // Чтоб не засорять радио эфир, отправим данные только, если обнаружим изменения на PIN (A1). q = map(q, 0, 1023, 0, 120); // Конвертируем значения z = map(z, 0, 1023, 0, 120); // Конвертируем значения q1 = map(q, 0, 120, 0, 360); // Конвертируем значения для вывода в монитор и на экран z1 = map(z, 0, 120, 0, 180); // Конвертируем значения для вывода в монитор и на экран sendRC(q+key1); sendRC(z+key2); lcd.clear(); lcd.print("Horizont -- "); lcd.print(q1); // Выводим текст lcd.setCursor(0, 1); // Устанавливаем курсор в начало 2 строки lcd.print("Vertical -- "); lcd.print(z1); // Выводим текст Serial.print(q1); Serial.print(z1); digitalWrite(13, LOW); } // подпрограмма отправки данных void sendRC(unsigned long code) { mySwitch.send(code, 20); } А вот с приемником что то невыходит молчит намертво вот код Код (C++): #include <RCSwitch.h> RCSwitch mySwitch = RCSwitch(); int q=0,z=0; #define key1 300000 // датчик температуры #define key2 303000 // датчик температуры void setup() { mySwitch.enableReceive(0); // Receiver on inerrupt 0 => that is pin #2 // иницилизация.Используется вывод м/к с прерыванием под номером 0. } void loop() { if (mySwitch.available()) { unsigned long receivedCode= mySwitch.getReceivedValue(); if (receivedCode == 0) { // обработка:не верный формат данных } else { if (key1<=receivedCode && key1+999>receivedCode) q=(int)(receivedCode-key1); else if (key2<=receivedCode && key2+999>receivedCode) z=(int)(receivedCode-key2); } mySwitch.resetAvailable(); // сброс данных. } // end available // тут могут выводится данные tempout и tempin на лсд экран или отправлятся через езернет. Serial.print(q); Serial.print(z); }