Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // http://buildbot.com.br/blog/comunicacao-wireless-com-o-modulo-nrf24l01/
- // Programa : Teste NRF24L01 - Receptor - Led
- // Autor : Adilson Thomsen
- #include <SPI.h>
- #include "nRF24L01.h"
- #include "RF24.h"
- int recebidos[1]; // Armazena os dados recebidos
- RF24 radio(9, 10); // Inicializa a placa nos pinos 9 (CE) e 10 (CS) do Arduino
- const uint64_t pipe = 0xE14BC8F482LL; // Define o endereco para comunicacao entre os modulos
- int LED1 = 5; // Define os pinos dos leds
- int LED2 = 3;
- int LED3 = 4;
- //-----------------------------------
- void setup()
- {
- pinMode(LED1, OUTPUT); // Define os pinos dos leds como saida
- pinMode(LED2, OUTPUT);
- pinMode(LED3, OUTPUT);
- Serial.begin(57600); // Inicializa a serial
- radio.begin(); // Inicializa a comunicacao
- radio.openReadingPipe(1, pipe); // Entra em modo de recepcao
- radio.startListening();
- Serial.println("Radio inicializado para receber ");
- }
- //-----------------------------------
- void loop()
- {
- if (radio.available()) // Verifica se ha sinal de radio
- {
- bool done = false;
- while (!done)
- {
- done = radio.read(recebidos, 1);
- Serial.print("Dados recebidos : ");
- Serial.println(recebidos[0]);
- if (recebidos[0] == 1) // Se recebeu o numero 1, acende o LED1
- {
- delay(10);
- digitalWrite(LED1, HIGH);
- digitalWrite(LED3, LOW);
- }
- else
- {
- digitalWrite(LED1, LOW);
- }
- if (recebidos[0] == 2) // Se recebeu o numero 2, acende o LED2
- {
- delay(10);
- digitalWrite(LED2, HIGH);
- digitalWrite(LED3, LOW);
- }
- else
- {
- digitalWrite(LED2, LOW);
- }
- delay(100);
- }
- }
- else
- {
- digitalWrite(LED3, HIGH);
- // Serial.println("Aguardando dados...");
- }
- }
- // http://shanes.net/another-nrf24l01-sketch-string-sendreceive/
- /*
- #include <nRF24L01.h>
- #include <RF24.h>
- #include <RF24_config.h>
- #include <SPI.h>
- /*
- This sketch receives strings from sending unit via nrf24
- and prints them out via serial. The sketch waits until
- it receives a specific value (2 in this case), then it
- prints the complete message and clears the message buffer.
- */
- /*
- int messageLength = 12;
- int msg[1];
- RF24 radio(9,10);
- const uint64_t pipe = 0xE8E8F0F0E1LL;
- int lastmsg = 1;
- String theMessage = "";
- void setup(void){
- Serial.begin(9600);
- radio.begin();
- radio.openReadingPipe(1,pipe);
- radio.startListening();
- }
- void loop(void){
- if (radio.available()){
- bool done = false;
- done = radio.read(msg, 1);
- char theChar = msg[0];
- if (msg[0] != 2){
- theMessage.concat(theChar);
- }
- else {
- if (theMessage.length() == messageLength) {
- Serial.println(theMessage);
- }
- theMessage= "";
- }
- }
- }
- */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement