Gestion et boucle - gestion port serie

Bonjour,
J’ai un petit programme qui reçois des Data d’un port série, et transfert ces derniers sur un port en radio,
Cela fonctionne bien, mais je n’envoi une trame radio que l’or de la réception d’une trame serial.
Pour éviter les pertes radios, je veux emmètre la trame reçu en boucle (250ms) jusqu’à la réception d’une nouvelle trame serial,
Avez vous une idée de modification de mon programme ? pour ne pas avoir de latence.
Merci de vos conseils
Olivier

void loop() {
 portOne.listen();
 while (portOne.available() > 0) 
 {
    octetreception = portOne.read();
    if (octetreception==13) // fin de la trame 
    {
      chainerecu.toCharArray(chaineradio,chainerecu.length()+1); 
      radio.write(&chaineradio,sizeof(chaineradio)); // envoi de la chaine recu RS en radio
      delay(5);
      chainerecu = "";
      caractererecu ="";
      break;
    }
    else
    {
     caractererecu = char (octetreception);
     chainerecu = chainerecu + caractererecu;
    }

}

}

Je ne comprends pas très bien ton problème, mais tu trouveras ici un bon tuto pour la réception série sans latence : je m'en suis inspiré pour une horloge à LEDs commandée par bluetooth et ça fonctionne très bien.

Il te faut 2 variables String, disons ChaineCourante et ChaineNouvelle. Tu fais une boucle sans bloquage cadencée à 250 ms. Quelque chose comme :

unsigned long tprecedent = 0;
void loop () {
  static unsigned long tprecedent = 0;
  unsigned long tpresent = millis();
  if ( tpresent - tprecedent >= 250 ) {
    tprecedent = tpresent;
   // ENVOYER LE CONTENU DE ChaineCourante ...
  }

  // recevoir les caractères 
  char octetreception = portOne.read();
  if ( octetreception == 13 ) {
    ChaineCoutante = ChaineNouvelle;
    ChaineNouvelle = "";
  } else {
    // AJOUTER LE CARACTERE RECU à ChaineNouvelle...
  }
}

Merci lesept pour ce tuto et merci Biggil pour ton astuce, cela fonctionne parfaitement. Olivier