Étape 6: RX MODULE(CODE)
CODE DE RX
/*
SimpleReceive
Cette esquisse affiche les chaînes de texte reçus à l’aide de VirtualWire
Brancher la fiche de données de récepteur sur la broche 11 de Arduino
*/
#include
#include
message d’octet [VW_MAX_MESSAGE_LEN] ; une mémoire tampon pour stocker les messages entrants
messageLength octets = VW_MAX_MESSAGE_LEN ; la taille du message
Innovente lcd (7, 6, 5, 4, 3, 2) ;
Variables globales :
cad de char [100] ;
int pos = 0 ;
void setup()
{
LCD.Begin (20, 4) ; Configuration d’écran LCD, 4 línes 20 caractères cada una.
lcd.setCursor (0, 0) ;
LCD.Write("Booting") ;
Delay(1000) ;
POS = 0 ;
LCD.Clear() ;
LCD.Write ("code de chargement") ;
Delay(1000) ;
POS = 0 ;
LCD.Clear() ;
LCD.Write(".") ;
Delay(900) ;
LCD.Write(".") ;
Delay(900) ;
LCD.Write(".") ;
Delay(900) ;
POS = 0 ;
LCD.Clear() ;
LCD.Write("Instructables") ;
Delay(900) ;
Serial.Begin(9600) ;
Serial.println ("périphérique est prêt ») ;
Initialiser l’e/s et l’ISR
vw_setup(2000) ; Bits par seconde
vw_rx_start() ; Démarrer le récepteur
}
void loop()
{
Byte buf [VW_MAX_MESSAGE_LEN] ;
buflen octets = VW_MAX_MESSAGE_LEN ;
int i ;
int k = VW_MAX_MESSAGE_LEN ;
Si (vw_get_message (buf, & buflen)) / / Non-bloquant
{
Serial.Print ("reçu:") ;
pour (int i = 0; i < buflen; i ++)
{
Serial.Write(BUF[i]) ;
}
Serial.println() ;
}
Si (vw_get_message (buf, & buflen))
{
if(pos < 4)
lcd.setCursor (0, pos) ;
d’autre
{
POS = 0 ;
LCD.Clear() ;
}
LCD.Write("distance:") ;
pour (i = 0; i < buflen; i ++)
{
LCD.Write(BUF[i]) ;
PDS ++ ;
}
LCD.Write("cm"); / / CM ou INC
}
}