Verketten von zwei nicht-Konstanten char-arrays in Arduino

Habe ich zwei nicht-Konstante char-arrays. Man ist buff und andere buffa.
Ich bekomme Werte in buffa via rf transmitter von anderen Arduino und ich möchte anfügen dieser Daten in der Daten in buff.
Dann sende ich alle Daten auf den anderen Arduino. Also ich will nicht senden zwei verschiedene char arrays. Ich möchte Ihnen allen auf einmal nur ein array.

Versuchte ich sprintf() aber es funktioniert nicht.

char buffa[144]; 
char buff[1000];

void loop() {

    uint8_t buf[VW_MAX_MESSAGE_LEN];
    uint8_t buflen = VW_MAX_MESSAGE_LEN;

    sprintf(buff,"<status>\n");    

    if (vw_get_message(buf, &buflen)) { //check to see if anything has been received
        int i;
        for (i = 0; i < buflen; i++) {
            buffa[i] = (char) buf[i];  //the received data is stored in buffer

        }
    }


    distance1 = getDistance(initPin1, echoPin1);
    sendData(3, distance1);

    sprintf(buff, "%s", buffa);

    delay(5000);
    const char *msg0 = buff;

    vw_send((uint8_t *)msg0, strlen(msg0)); //Send control character 
    vw_wait_tx();

    Serial.print(msg0);

}
  • Ich habe die for-Schleife um dies zu erreichen, wie diese; for (i = 0, j=9; i < buflen; i++, j++) { buff[j] = (char) buf[i]; }
InformationsquelleAutor na7abay | 2015-01-13
Schreibe einen Kommentar