Hallo,
ich habe es geschafft, meinen Pro Micro so zu programmieren dass er beim Tippen eines Buzzers ein 'Leerzeichen' an meinen PC sendet.
Nun wollte ich das ganze ohne Verbindungskabel über zwei NRF24L01 und einem weiteren Pro Micro lösen. Aber bekomme die zwei Sketches nicht so zusammengefügt dass da was funktionstüchtiges dabei rüber kommt.
Dies ist mein Grundsketch um ein 'Leerzeichen' zu erzeugen
#include <Keyboard.h>
// Einen Taster mit dem Pin 9 verbinden
int space = 9;
void setup()
{
// Den Taster als Active-Low verschalten, als INPUT konfigurieren und
// das ausgehende Signal bei ungedruecktem Taster ueber einen Pull-up
// Widerstand auf VCC leiten
pinMode(space, INPUT_PULLUP);
Keyboard.begin();
}
void loop()
{
// Wenn der Taster gedrueckt wird
if (digitalRead(space) == 0)
{
// Dem Computer das Enter senden. Die Zahl 32 entspricht
// dabei der Leertaste in der ASCII-Tabelle
;Keyboard.write(32);
// Kurze Pause, um Wiederholungen zu vermeiden
delay(1500);
}
}
dies wäre Jetzt der Sender Code welcher beim NRF24L01 dabei war und darunter der Empfänger Code welche ich eben mit dem obigen vereinen möchte damit ich das Leerzeichen über Funk senden kann. Seid mir bitte nachsichtig dass ich nicht so viel plan habe.
In diesem Beispiel werden wir einfach eine "Hello World"-Nachricht vom
Sender zum Empfänger senden. Hier ist der Sketch für den Sender:
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
RF24 radio(9, 8); // create an RF24 object, CE, CSN
const byte address[6] = "00001"; // address
void setup() {
radio.begin();
radio.openWritingPipe(address); // set the address
radio.stopListening(); // set module as transmitter
}
void loop() {
const char text[] = "Hello World"; // message
radio.write(&text, sizeof(text)); // send message
delay(1000);
}
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
RF24 radio(9, 8); // CE, CSN
const byte address[6] = "00001"; // address
void setup() {
while(!Serial);
Serial.begin(9600);
radio.begin();
radio.openReadingPipe(0, address); // set the address
radio.startListening(); // set module as receiver
}
void loop() {
// Read the data if available in buffer
if(radio.available()) {
char text[32] = {0};
radio.read(&text, sizeof(text));
Serial.println(text);
}
}
das der Serielle Port hier nur zum Anzeigen ist weiß ich. Aber bei mir kommt eben nichts an..
Vllt hat ja jemand Tipps wie ich die Sketches vereinen kann.
Danke