Exemple de code pour la bibliothèque Mirf – Client d'envoi de tableau de valeurs

par skywodd | | Langue : C++ | Licence : GPLv3

Description :

Exemple de code pour la bibliothèque Mirf – Client d'envoi de tableau de valeurs.

Code source :

Voir le code source brut | Télécharger mirf_vartable_client.ino | Télécharger mirf_vartable_client.ino.zip

/**
 * Exemple de code pour la bibliothèque Mirf – Client d'envoi de tableau de valeurs
 */

#include <SPI.h>      // Pour la communication via le port SPI
#include <Mirf.h>     // Pour la gestion de la communication
#include <nRF24L01.h> // Pour les définitions des registres du nRF24L01
#include <MirfHardwareSpiDriver.h> // Pour la communication SPI
 
void setup() {
  Serial.begin(9600);
   
  Mirf.cePin = 9; // Broche CE sur D9
  Mirf.csnPin = 10; // Broche CSN sur D10
  Mirf.spi = &MirfHardwareSpi; // On veut utiliser le port SPI hardware
  Mirf.init(); // Initialise la bibliothéque

  Mirf.channel = 1; // Choix du cannal de communication (128 canaux disponible, de 0 à 127)
  Mirf.payload = sizeof(int) * 6; // Taille d'un message (maximum 32 octets)
  Mirf.config(); // Sauvegarde la configuration dans le module radio

  Mirf.setTADDR((byte *) "nrf02"); // Adresse de transmission
  Mirf.setRADDR((byte *) "nrf01"); // Adresse de réception
   
  Serial.println("Go !"); 
}
 
void loop() {
  int valeurs[6];
  
  // Lit les broches analogiques
  valeurs[0] = analogRead(0);
  valeurs[1] = analogRead(1);
  valeurs[2] = analogRead(2);
  valeurs[3] = analogRead(3);
  valeurs[4] = analogRead(4);
  valeurs[5] = analogRead(5);
  
  Mirf.send((byte *) &valeurs); // On envoi le message
  while(Mirf.isSending()); // On attend la fin de l'envoi
  
  delay(1000);
}