Lettura seriale con array di char

SukkoPera:
Posta lo sketch intero.

#include <SoftwareSerial.h>

//SIM800 TX is connected to Arduino D8
#define SIM800_TX_PIN 8

//SIM800 RX is connected to Arduino D7
#define SIM800_RX_PIN 7

#define LED_PIN 2
#define BUFLEN 200
//Create software serial object to communicate with SIM800
SoftwareSerial serialSIM800(SIM800_TX_PIN, SIM800_RX_PIN);
char lastCharRead[16];
char firstRead;
int index;
String content = "";
String readStrings;
char string[32];
char byteRead;
char response[200];
int indexByteMessaggio;
byte inByte;
byte messaggio[] = {
  0, 0, 0, 0, 0, 0, 0, 0
};
void setup() {
  //Begin serial comunication with Arduino and Arduino IDE (Serial Monitor)
  Serial.begin(9600);
  while (!Serial);

  //Being serial communication witj Arduino and SIM800
  serialSIM800.begin(9600);
  delay(1000);
  pinMode(LED_PIN, OUTPUT);

  Serial.println("Setup Complete!");
}

void loop() {
  serialSIM800.write("AT\r\n");
  risposta();
}

void risposta() {
  char response[BUFLEN] = {'\0'};
  byte i = 0;
  do {
    if (serialSIM800.available()) {
      char c = serialSIM800.read();
      Serial.write(c);
      response[i++] = c;
      response[i] = '\0';
    }
  } while (i < BUFLEN - 1 && response[i] != '\r');
}