XBee + XBee lectura codigos ascill

El protocolo dependerá de los datos que quieras enviar. Suponiendo que lo que envíes son datos muy sencillos, es decir que cada dato lo puedas enviar mediante un byte (sólo necesitas como información un número de 0 a 255 para cada dato) puedes hacer algo así para el envío de 4 datos (esta es una forma muy sencilla dentro de las muchísimas posibilidades que hay). No los he compilado y no están enteros a nivel de definir variables y demás.

//Emisor

  Serial.print("!");     //identificador inicio de trama
  Serial.write(Byte1);
  Serial.write(Byte2);
  Serial.write(Byte3);
  Serial.write(Byte4);
  Serial.println();    //identificador final de trama, tener en cuenta que son dos bytes
//Receptor

byte Trama[7];
boolean ErrorTrama = false;

void loop() {
  if (Serial.available() > 6) {
    
while (Serial.available() > 6) {
  Trama[0] = Serial.read();

  if (Trama[0] = '!' && Serial.available() > 5) {
    
    for (int i=1; i < 7; i++) {
      Trama[i] = Serial.read();
    }
    
  if (Trama[5] == '\r' && Trama[6] == '\n') {     //Los dos bytes que envía Serial.println()
    ErrorTrama = false;
  }
  else {
    ErrorTrama = true;
  }
  
  }

}

  if (ErrorTrama == false) {
    Byte1 = Trama[1];
    Byte2 = Trama[2];
    Byte3 = Trama[3];
    Byte4 = Trama[4];
  }

}
}