Bonjour,
je suis en projet de terminale et je suis face a un petit soucis, je souhaite envoyer des données a partir de la carte 1 (Arduino Mega) jusqu’à la carte 2 (Arduino UNO) par liaison serie. J’arrive a envoyer une valeur, et la lire sur la deuxieme carte. Voici les deux programmes :
Carte 1 (Envoie)
#include <stdio.h>
char result[3] = "";
float tempf = 23.2;
int tempff = tempf*10;
void setup() {
// Begin the Serial at 9600 Baud
Serial.begin(9600);
Serial1.begin(9600);
// dtostrf(tempff, 3,0, result);
}
void loop() {
Serial1.write (tempff);
Serial.println(tempff); //Print data on Serial Monitor
delay(50);
}
Voici le deuxième code (recevoir) :
int val ;
float tempf;
void setup() {
// Begin the Serial at 9600 Baud
Serial.begin(9600);
}
void loop() {
// Serial.readBytes (result,3);
if (Serial.available() > 0) {
val = Serial.read();
tempf = val;
tempf = tempf/10;
Serial.println(tempf);
delay(50);}
//Serial.readBytes(result,4); //Read the serial data and store in var
// Serial.println(tempf); //Print data on Serial Monitor
}
Ces deux codes fonctionnent parfaitement, mais c’etait que des test, en effet j’ai plein de variables a envoyer et, là est ma question, comment faire pour les envoyer et les ranger des que je les recois (quand je dis ranger, c’est comme le val = Serial.read();
tempf = val;)