Anfänger:string zusammensetzen und wieder zerlegen

ist doch super ( das mit dem kleiner )
jetzt würde ich folgendes vorschlagen:

statt 4 buffer variablen und 4 sprintf's machste:

// Sticks 1-4

#include <Wire.h>

// ADC PINS deklarieren
int ADC0=0;
int ADC1=1;
int ADC2=2;
int ADC3=3;

//Kanäle deklarieren
int Kanal_1;
int Kanal_2;
int Kanal_3;
int Kanal_4;

//div deklarationen

char Buffer[20];

void setup ()
{
  Serial.begin(57600);
  Wire.begin(1);                                // Starte i2c bus als Slave mit addresse #1
  Wire.onRequest(i2c_request);                  // I2C interrupt Routine i2c request
}

void loop()
{
  //Kanäle einlesen
  Kanal_1=analogRead(ADC0);
  Kanal_2=analogRead(ADC1);
  Kanal_3=analogRead(ADC2);
  Kanal_4=analogRead(ADC3);

  //Kanäle Rechnen
  
  
  // ausgabe vorbereiten
  
  sprintf(Buffer,"%04i - %04i - %04i - %04i",Kanal_1,Kanal_2,Kanal_3,Kanal_4);

  // Werte Seriell ausgeben
  Serial.println(Buffer);
  

}

void i2c_request()                                      //daten per i2c senden
{
//  char buffer[32];
//  Geber_sum.toCharArray(buffer, 32);
  Wire.send(Geber_1);
}

alles in einem. ... dann sollte dieses merkwürdige, mir unerklärlich verhalten aufhören :wink:

Gruß JKW