Помогите со скетчем для nrf24lo1
- Войдите на сайт для отправки комментариев
Ср, 21/01/2015 - 12:13
#include <SPI.h> #include "RF24.h" #include <LiquidCrystal_I2C.h> #include <Wire.h> int led=3; // Set up nRF24L01 radio on SPI bus plus pins 9 & 10 //Контакты от радиомодуля NRF24L01 подключаем к пинамнам -> Arduino //SCK -> 13 //MISO -> 12 //MOSI -> 11 //CSN -> 10 //CE -> 9 int da=0; RF24 radio(9, 10); const uint64_t pipes[2] = { 0xF0F0F0F000LL, 0xF0F0F0F0FFLL};// адреса каналов приема и передачи LiquidCrystal_I2C lcd(0x27,16,2); void setup(){ radio.begin(); radio.setDataRate(RF24_250KBPS); // Скорость передачи radio.setChannel(100); // Номер канала от 0 до 127 radio.setRetries(15,15); // Кол-во попыток и время между попытками radio.openWritingPipe(pipes[0]); // Открываем канал передачи radio.openReadingPipe(1, pipes[1]); // Открываем один из 6-ти каналов приема radio.startListening(); // Начинаем слушать эфир pinMode(6, OUTPUT); pinMode(5, OUTPUT); pinMode(3, OUTPUT); pinMode(2, OUTPUT); lcd.init(); // initialize the lcd lcd.backlight(); } void loop(){ digitalWrite(6, HIGH); digitalWrite(5, LOW); if(radio.available()) { char data[32] = ""; radio.read(&data, 32); //принимает пакет с Arduino №1 if (data[0] == '1') da=data[0]; digitalWrite(led, HIGH); digitalWrite(2, LOW); delay(10000); lcd.clear(); digitalWrite(2, LOW); digitalWrite(led, LOW); if (data[0] == '2') digitalWrite(led, LOW); radio.stopListening(); radio.write(&data, 32); // и отправляет обратно в Arduino №1 radio.startListening(); } if(da >= 0){ lcd.print(da); delay(30000); lcd.clear(); }else{ lcd.print("nope"); } delay(50); }
В общем не могу понять что не так там...По идее должно принять данные и вывести на экран,но что то видимо идет не так...Экран даже не загорается подсветкой