Mit Kommas getrennten String auslesen

Es gibt für Dein Problem sicher verschiedene Lösungen.
Falls Du den ankommenden String zeichenweise einliest, kannst Du den ja schon beim Lesen zerlegen.

unsigned long data;
char buffer[40];
int index = 0;
int counter = 0;

void setup() {
  
  Serial.begin(9600);
}

void loop() {
  //wenn serielle Daten vorhanden, dann einlesen 
  if(Serial.available()) {
     //einzelnes Zeichen lesen
     char c = Serial.read();
     
     //wenn Trennzeichen, dann vorherige Daten verarbeiten
     if(c==',' ) {
       //bisher gelesenen String terminieren (letzte Byte = \0)
       buffer[index] = 0;
       //Zähler für die Anzahl der gelesenen Werte erhöhen
       counter++;
       //Puffer-Index wieder auf 0 setzen
       index=0;
       
       //String in Zahl umwandeln
       data = atol(buffer);
       
       //Ausgabe
       Serial.print("Zahl "); 
       Serial.print(counter); 
       Serial.print(" = "); 
       Serial.println(data);
     } else {
       //kein Trennzeichen, dann Ziffer in den Puffer schreiben und Index erhöhen
       buffer[index++] = c;
     } 
  }
}

Das ist nur ein Beispiel und krankt auch an der Umwandlung der großen Zahl, die leider nicht in ein unsigned long passt. Aber das Prinzip wird denke ich klar.