void setup() {
  Serial.begin(9600); // Initialize Serial communication
  while (!Serial);    // Wait for the serial monitor to open (for some boards)
}

void loop() {
  unsigned long startTime = micros(); // Record the start time

  
   String message; // Declare a String object
/*
  // First message
  message = "Test message Test message  Test message   Test message   Test message ";
  message += '\n';
  message = "Test message";
  message += '\n';
  message = "Test message";
  message += '\n';
  message = "Test message";
  message += '\n';
  message = "Test message";
  message += '\n';
  message = "Test message";
  message += '\n';
  message = "Test message";
  message += '\n';
  // message += millis();
  message += '\n';
  Serial.print(message);

*/
  
  Serial.print("Test message"); 
 
  Serial.print("Test message"); 
  Serial.print("Test message"); 
  Serial.print("Test message"); 
  Serial.print("Test message");
  
  Serial.print("Test message"); // Arduino Uno  8376ms // Nucleo C031C6 9847 až 13019microseconds

  /*
  Serial.print("Test message"); 
  Serial.print("Test message"); 
 
  Serial.print("Test message"); 
  Serial.print("Test message");       // Perform the Serial.print operation
 */
  unsigned long endTime = micros();   // Record the end time

  // Calculate and print the time taken for the Serial.print operation
  unsigned long elapsedTime = endTime - startTime;
  Serial.print(" Time taken (microseconds): ");
  Serial.println(elapsedTime);

  delay(1000); // Wait 1 second before repeating
}