Stap 2: Bouw van de ontvanger
Gebouw van de ontvanger is ook relatief eenvoudig, nogmaals, de NRF24L01 bedrading is het lastig stukje. Volg de onderstaande tabel en het diagram van de NRF24L01 :)
NRF24L01: Functioneren: Nano Pin
1: GND: GND
2: VCC: 3.5v
3: CE: D9
4: CSN: D10
5: SCK: D13
6: MOSI: D11
7: MISO: D12
8: IRQ:
Hieronder vindt u de code hieronder en in het bijgevoegde bestand, gewoon Kopieer en plak in de arduino IDE:
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define OLED_RESET 4
Adafruit_SSD1306 display(OLED_RESET);
#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 ("hoogte onjuist is, gelieve te bevestigen Adafruit_SSD1306.h!");
#endif
int msg [1];
RF24 radio(9,10);
Const uint64_t pijp = 0xE8E8F0F0E1LL;
int lastmsg = 1;
String theMessage;
TheMessage1 koord = "";
ongeldig setup(void) {}
Serial.begin(9600);
Radio.begin();
radio.openReadingPipe(1,pipe);
radio.startListening();
display.begin (SSD1306_SWITCHCAPVCC, 0x3C); initialiseren met de I2C-addr 0x3D (voor de 128 x 64)
init gedaan
Toon beeldbuffer op de beeldschermhardware.
Omdat de buffer is intialized met een Adafruit splashscreen
intern wordt dit splashscreen weergegeven.
display.display();
delay(2000);
display.clearDisplay();
testscrolltext(theMessage);
delay(2000);
display.clearDisplay();
}
ongeldig loop(void) {}
Als (radio.available()) {}
BOOL = false;
= radio.read (msg, 1);
char theChar = msg [0];
Als (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();
theMessage = "";
watchdogSetup();
TheMessage1 koord = theMessage.substring (0, (messageSize/4));
display.setTextSize(2);
display.setTextColor(WHITE);
display.setCursor(0,0);
display.println(theMessage1);
display.display();
delay(5000);
TheMessage2 koord = theMessage.substring((messageSize/4), (messageSize/2));
display.clearDisplay();
display.setCursor(0,0);
display.println(theMessage2);
display.display();
delay(5000);
TheMessage3 koord = theMessage.substring((messageSize/2), ((messageSize/4) * 3));
display.clearDisplay();
display.setCursor(0,0);
display.println(theMessage3);
display.display();
delay(5000);
TheMessage4 koord = 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();
theMessage = "";
}
}
}
Zodra alle aangesloten en gecontroleerd om te werken was de band 3D geprint op een DaVinci Jr met behulp van PLA. Bestand is gekoppeld. De onderdelen waren op zijn plaats gehouden met hete lijm.
Eventuele vragen, vraag :)