Paso 2: Construcción del receptor
El receptor es relativamente fácil, así, otra vez, cableado del NRF24L01 es poco complicado. Por favor siga la siguiente tabla y el diagrama de la NRF24L01 :)
NRF24L01: Función: Nano Pin
1: GND: TIERRA
2: VCC: 3.5v
3: CE: D9
4: CSN: D10
5: SCK: D13
6: MOSI: D11
7: MISO: D12
8: IRQ:
Encontrará el código a continuación y en el archivo adjunto, sólo tienes que copiar y pegar en el arduino IDE:
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define OLED_RESET 4
Display(OLED_RESET) de Adafruit_SSD1306;
#define NUMFLAKES 10
#define XPOS 0
#define YPOS 1
#define DELTAY 2
#define LOGO16_GLCD_HEIGHT 16
#define LOGO16_GLCD_WIDTH 16
#if (SSD1306_LCDHEIGHT! = 64)
#error ("altura incorrecta, por favor, arreglar Adafruit_SSD1306.h!");
#endif
int msg [1];
Radio(9,10) de RF24;
const uint64_t tubo = 0xE8E8F0F0E1LL;
int lastmsg = 1;
String mensaje;
String theMessage1 = "";
void setup(void) {}
Serial.Begin(9600);
radio.Begin();
radio.openReadingPipe(1,pipe);
radio.startListening();
display.Begin (SSD1306_SWITCHCAPVCC, 0x3C); inicializar con dirección I2C 0x3D (de 128 x 64)
init realizada
Mostrar imagen buffer en el hardware de la pantalla.
Puesto que el almacenador intermediario es desencadenar con un splashscreen Adafruit
internamente, esto mostrará el splashscreen.
display.display();
Delay(2000);
display.clearDisplay();
testscrolltext(theMessage);
Delay(2000);
display.clearDisplay();
}
void loop(void) {}
Si (radio.available()) {}
bool = false;
= radio.read (msg, 1);
char theChar = msg [0];
Si (msg [0]! = 2) {}
theMessage.concat(theChar);
}
Else {}
int messageSize = theMessage.length();
Serial.println(messageSize);
Serial.println(theMessage);
testscrolltext(theMessage);
Delay(5000);
display.display();
display.clearDisplay();
Mensaje = "";
watchdogSetup();
String theMessage1 = theMessage.substring (0, (messageSize/4));
display.setTextSize(2);
display.setTextColor(WHITE);
display.setCursor(0,0);
display.println(theMessage1);
display.display();
Delay(5000);
String theMessage2 = theMessage.substring((messageSize/4), (messageSize/2));
display.clearDisplay();
display.setCursor(0,0);
display.println(theMessage2);
display.display();
Delay(5000);
String theMessage3 = theMessage.substring((messageSize/2), ((messageSize/4) * 3));
display.clearDisplay();
display.setCursor(0,0);
display.println(theMessage3);
display.display();
Delay(5000);
String theMessage4 = theMessage.substring(((messageSize/4)*3), messageSize);
display.clearDisplay();
display.setCursor(0,0);
display.println(theMessage4);
display.display();
Delay(5000);
Serial.println(theMessage1);
Serial.println(theMessage2);
Serial.println(theMessage3);
Serial.println(theMessage4);
display.clearDisplay();
Mensaje = "";
}
}
}
Una vez todo conectado y comprobado para trabajar la banda era 3D impreso en un Jr de DaVinci con PLA. Archivo adjunto. Los componentes se llevaron a cabo en lugar con pegamento caliente.
Cualquier duda pregunte por favor :)