Étape 6: Arduino connexion/programmation.
Le programme est attaché.
declarando variables
emisor int = 12 ;
récepteurs int = A0 ;
char à ; valor int ;
int modulo ;
int bytes [8] = {0,0,0,0,0,0,0,0} ;
int i = 0 ; int T = 20 ; int t = 10 ;
dato int ; int EH = 0 ; int ED = 1 ;
int SYN = 0 ;
int valoresbase [8] = {1,2,4,8,16,32,64,128} ;
mensaje de char [100] ; int j = 0 ;
Valor = en-48 ; Conversion de Caracter un nombre décimal
in = valor + 0 x 30 ; Convierte décimal un caracter
installation Sub ()
{pinMode(emisor,OUTPUT) ;
digitalWrite(emisor,HIGH) ;
Serial.Begin(9600) ;
while(SYN==0) {Serial.println("Sincronizando...") ;
while(Eh==0) {dato=digitalRead(receptor) ;
if(Dato==High) {Serial.println ("Recibiendo senal...") ;
EH = 1 ; ED = 0 ; } }
arreglo para almacenamiento de datos
Serial.println ("Presione 1 para iniciar comunicacion") ;
while(ed==0) {if(Serial.available() > 0) {in=Serial.read() ;
if(in=='1') {ED = 1 ; SYN = 1 ; dato=digitalRead(receptor)}} ;
if(Dato==Low) {Serial.println ("Se perdio la senal...") ; EH = 0 ; ED = 1 ; SYN = 0 ;
} } }
Serial.println ("Inicia comunicacion") ; Serial.println() ; }
void loop ()
{if(Serial.available() > 0)
{//Transmite dato in=Serial.read() ;
Serial.Print ("Enviar:") ;
Serial.println(in) ;
Valor = en ;
Conversion de Caracter a Decimal Serial.print("Valor Decimal:") ;
Serial.println(Valor) ;
Serial.Print ("Valor Binario:") ;
Inicia conversion de décimal un Binario
while(Valor>1)
{modulo = valor %2 ; bytes [i] = modulo; i ++ ;
Valor = valor/2 ; } if(valor==1)
{modulo = valor %2 ; bytes [i] = modulo;}
if(Valor==0) {bytes [i] = 0;} pour (i = 7; j’ai > -1; i--)
{Serial.print(bytes[i]) ;
Binario numero imprime
}
Serial.println() ;
Inicia Transmision de dato
Serial.Print ("Transmitiendo:")
; digitalWrite(emisor,LOW) ;
Delay(t) ; pour (i = 0; i < 8; i ++)
{Serial.print(bytes[i]) ;
if(bytes[i]==0)
{digitalWrite(emisor,LOW) ;
} if(bytes[i]==1)
{digitalWrite(emisor,HIGH) ;
} delay(T) ;
}
Réinitialisation des Variables
digitalWrite(emisor,HIGH) ;
pour (i = 0; i < 8; i ++) {bytes [i] = 0 ;
} i = 0 ; Serial.println() ;
Serial.println() ;
Delay(100) ; }
Dato=digitalRead(receptor) ;
if(Dato==Low)
{//Recibe dato Serial.print ("Recibiendo:") ;
Delay(T) ;
Inicia Recepcion de dato
pour (i = 0; i < 8; i ++)
{dato=digitalRead(receptor) ;
if(Dato==High)
{bytes [i] = 1 ; Serial.Print('1') ;
}
if(Dato==Low) {bytes [i] = 0 ;
Serial.Print('0') ;
}
Delay(T) ;
}
while(Eh==0)
{
Termina Recepcion de dato
Dato=digitalRead(receptor) ;
if(Dato==High) {EH = 1;}}
Serial.println() ;
Serial.Print ("Valor Binario:") ;
pour (i = 7; j’ai > -1; i--
{Serial.print(bytes[i]);}
Serial.println() ;
Conversion de Binario un nombre décimal
Valor = 0 ; pour (i = 0; i < 8; i ++)
{if(bytes[i]==1)
{valor = valor + valoresbase [i];} }
Serial.Print ("Valor Decimales:") ;
Serial.println(Valor) ;
in = valor + 0 x 30 ;
Convierte décimal un caracter
Serial.Print ("envio de soi:") ;
Serial.println(in) ;
Si (en ==' pour (j = 0; j < 100; j ++)
{mensaje [j] =' ';} j = 0 ; }
else {mensaje [j] =; j ++ ; Serial.println() ;
Serial.println("mensaje:") ; pour (i = 0; i