Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Mirf.h>
- #include <MirfHardwareSpiDriver.h>
- #include <MirfSpiDriver.h>
- #include <nRF24L01.h>
- void setup() {
- Mirf.cePin = 9; // Broche CE sur D9
- Mirf.csnPin = 10; // Broche CSN sur D10
- Mirf.spi = &MirfHardwareSpi;
- Mirf.init();
- Mirf.setTADDR((byte *)"trans"); //@emeteur
- Mirf.setRADDR((byte *)"recep"); //@recepteur
- Mirf.payload = 32;
- Mirf.channel = 8;
- Mirf.config(); //sauvegarde de la configuration mirf
- Serial.begin(9600);
- }
- int newChannel(){ //définit le nouveau channel de communication aléatoire
- return random(0,127);
- }
- void loop() {
- int chan;
- byte message[32];
- byte messageChiffre[32];
- // Lit un message de maximum 32 caractères depuis le port série
- int len = Serial.readBytesUntil('\n', (char*) message, 31);
- if (!len) {
- return; // Pas de message
- }
- else
- {
- chan = newChannel(); //création du nouveau canal de transmission
- message[len] = (byte) chan; //ajout du numeto à la fin du message
- int j;
- for(j=0;j<len;j++){ //debut du chiffrement
- messageChiffre[j] = message[j];
- }
- message[1] = messageChiffre[3];
- message[2] = messageChiffre[4];
- message[3] = messageChiffre[1];
- message[4] = messageChiffre[2]; //chiffrement terminé
- Serial.println((char*)message);
- }
- message[len+1] = '\0'; // Ferme la chaine de caractères
- Mirf.send(message); // On envoie le message
- //
- while(Mirf.isSending());// On attend la fin de l'envoi
- Mirf.channel = chan; //changemenet de channel
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement