Étape 4: Programmation manette sans fil
(Transmeter)
/*
-Ce qu’il fait : lit
Analogue aux valeurs de A0, A1 et transmet
eux par liaison Radio nRF24L01 à un autre émetteur/récepteur.
1 - GND
2 - 3.3V SCR!!! PAS DE 5V
3 - CE sur la broche 9 de Arduino
4 - CSN à Arduino broche 10
5 - SCK pour Arduino pin 13
6 - MOSI Arduino pin 11 Transmeter
7 - MISO pour Arduino axe 12
8 - UNUSED
-Joystick analogique :
GND pour Arduino GND
VCC pour Arduino + 5V
X Pot à Arduino A0
Pot de Y pour Arduino A1
*
*---(Importation préalable bibliothèques)---* /
#include
#include
#include
/ *---(Déclarer les constantes et Pin Numbers)---* /
#define CE_PIN 9
#define CSN_PIN 10
#define JOYSTICK_X A0
#define JOYSTICK_Y A1
NOTE : le « LL » à la fin de la constante est « Pauline » type
const uint64_t tuyau = 0xE8E8F0F0E1LL ; Définir le tube de transmission
/ *---(Déclarer des objets)---* /
RF24 radio (CE_PIN, CSN_PIN) ; Créer une Radio
/ *---(Déclarer des Variables)---* /
manette de jeu int [2] ; Tableau de 2 éléments tenant lectures Joystick
void setup() / *** SETUP : s’exécute une fois *** /
{
Serial.Begin(9600) ;
radio.Begin() ;
radio.openWritingPipe(pipe) ;
} //--(end setup)---
void loop() / *** boucle : fonctionne constamment *** /
{
manette de jeu [0] = analogRead(JOYSTICK_X) ;
manette de jeu [1] = analogRead(JOYSTICK_Y) ;
radio.Write (joystick, sizeof(joystick)) ;
} //--(end boucle principale)--
(RECEPTEUR)
/*
-Ce qu’il fait : Reçoit les données d’un autre
émetteur/récepteur avec
2 les valeurs d’un Joystick analogiques
Affiche reçues valeurs sur Serial Monitor
RECEPTEUR
1 - GND
2 - 3.3V SCR!!! PAS DE 5V
3 - CE sur la broche 9 de Arduino
4 - CSN à Arduino broche 10
5 - SCK pour Arduino pin 13
6 - MOSI pour Arduino broche 11
7 - MISO pour Arduino axe 12
8 - UNUSED
/ *---(Importation préalable bibliothèques)---* /
#include
#include
#include
/ *---(Déclarer les constantes et Pin Numbers)---* /
#define CE_PIN 9
#define CSN_PIN 10
NOTE : le « LL » à la fin de la constante est « Pauline » type
const uint64_t tuyau = 0xE8E8F0F0E1LL ; Définir le tube de transmission
/ *---(Déclarer des objets)---* /
RF24 radio (CE_PIN, CSN_PIN) ; Créer une Radio
/ *---(Déclarer des Variables)---* /
manette de jeu int [2] ; Tableau de 2 éléments tenant lectures Joystick
void setup() / *** SETUP : s’exécute une fois *** /
{
Serial.Begin(9600) ;
Delay(1000) ;
Serial.println ("Nrf24L01 récepteur à partir") ;
radio.Begin() ;
radio.openReadingPipe(1,pipe) ;
radio.startListening() ;
} //--(end setup)---
void loop() / *** boucle : fonctionne constamment *** /
{
Si (radio.available())
{/ / Lire la charge utile de données jusqu'à ce que nous avons reçu tout
bool = false ;
tandis que (! fait)
{/ / Extraire la charge utile de données
fait = radio.read (joystick, sizeof(joystick)) ;
Serial.Print ("X =") ;
Serial.Print(joystick[0]) ;
Serial.Print ("Y =") ;
Serial.println(joystick[1]) ;
}
}
d’autre
{
Serial.println ("aucune radio disponible") ;
}
} //--(end boucle principale)---