Программирование радиоприемника.

Bratish_Vitalya
Offline
Зарегистрирован: 15.10.2017
//Передатчик;
#include <SPI.h>                                        
#include <nRF24L01.h>                                    
#include <RF24.h>                                       
RF24           radio(9, 10);                         
int            data[2];                               
void setup(){
    radio.begin();                                      
    radio.setChannel(5);                                
    radio.setDataRate     (RF24_1MBPS);                  
    radio.setPALevel      (RF24_PA_HIGH);                
    radio.openWritingPipe (0x1234567890LL);              
}
void loop(){
    data[0] = analogRead(A1);                             
    data[1] = analogRead(A2);                            
    radio.write(&data, sizeof(data));                    
}

//Приёмник;
#include <SPI.h>                                         
#include <nRF24L01.h>                                  
#include <RF24.h>                                        
#include <iarduino_4LED.h>                              
#include <Servo.h>                                      
RF24           radio(9, 10);                             
iarduino_4LED  dispLED(2,3);                         
Servo          myservo;                                  
void setup(){
    delay(1000);
    myservo.attach(4);                                  
    dispLED.begin();                                 
    radio.begin();                                       
    radio.setChannel(5);                                  
    radio.setDataRate     (RF24_1MBPS);                 
    radio.setPALevel      (RF24_PA_HIGH);                 // Указываем мощность передатчика (RF24_PA_MIN=-18dBm, RF24_PA_LOW=-12dBm, RF24_PA_HIGH=-6dBm, RF24_PA_MAX=0dBm)
    radio.openReadingPipe (1, 0x1234567890LL);            // Открываем 1 трубу с идентификатором 0x1234567890 для приема данных (на ожном канале может быть открыто до 6 разных труб, которые должны отличаться только последним байтом идентификатора)
    radio.startListening  ();                             // Включаем приемник, начинаем прослушивать открытую трубу
//  radio.stopListening   ();                             // Выключаем приёмник, если потребуется передать данные
}
void loop(){
    if(radio.available()){                                // Если в буфере имеются принятые данные
        radio.read(&data, sizeof(data));                  // Читаем данные в массив data и указываем сколько байт читать
        dispLED.print(data[0]);                           // Выводим показания Trema слайдера на индикатор
        myservo.write(map(data[1],0,1023,0,180));         // Поворачиваем сервопривод на угол заданный Trema потенциометром
    }
}

Помогите пожалуйста. Не могу понять, как запрограммировать передатчик одной платы ардуино, так чтобы он отсылал словесные сообщения, в другую плату ардуино с приемником. При этом я использую Модули nRF24L01+, которые могут работать и на приемник и на передатчик.

Но эту программу я написал быстро, так что наверняка много ошибок. Пожалуйста помогите!

 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Bratish_Vitalya пишет:
эту программу я написал быстро, так что наверняка много ошибок. Пожалуйста помогите!
А вот это уже хамство!

Вы сами-то себя слышите? "Я тут по-быстрому написал, ляпов наверняка много, но тратить время на их поиск мне в лом. Нахрена мне партиться и время терять, когда тут полный форум лохов - ищите давайте мои ляпы, а то мне некогда".

 

 

 

Ворота
Ворота аватар
Offline
Зарегистрирован: 10.01.2016

Твой приёмник просто не компилируется. Это-то можешь сам исправить? Или правда, нех нормальному пацану муйнёй хаяться, когда под рукой целый форум лохов?