Créer une trame contenant des caractères et des données (nbr en décimal)

Bonjour,

Je souhaiterais réaliser un transfert d'information avec mon arduino nano en utilisant le port UART.

J'ai déjà réalisé une ébauche de programme. Le problème que je rencontre est le suivant, j'arrive à transmettre des données et des caractères séparément mais pas ensemble.

Mon but transmettre un STX(0x02) pour le début de trame puis un LF pour le début du bloc de donnée, une etiquette en char, puis un HT (séparateur), puis des données (en décimal), puis un HT, puis un checksum et pour finir CR fin du bloc de donnée et ETX fin de trame.

#include <SoftwareSerial.h>
#include <String.h>
String trame_complet;
const String STX1 = "2";
const String ETX1 = "3";
const String LF1 = "A";
const String HT1 = "9";
const String CR1 = "D";
const String SP1 = "20";
String etiquette = "ADCO";
int donnee = 123456;
String Som1;



void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);//,SERIAL_7E1);
}

void loop() {
    
    Som1= etiquette + HT1 + var + HT1;
   String Checksum = (Som1 & 0x3F) + 0x20;
   //(etiquette + HT*2 + donnee & 0x3F) + 0x20;
  // put your main code here, to run repeatedly:
  // trame_complet = "";
  trame_complet = STX1 + LF1 + etiquette + HT1 + var + HT1 + Checksum + CR1 + ETX1;
  Serial.print(trame_complet);
  delay(1000);
}

2 posts were merged into an existing topic: Créer une trame contenant des caractères et des données (nombres)