#include #define ledLOW LOW #define ledHIGH HIGH #ifdef ESP32 #define ledPin 2 #elif ARDUINONANO #define ledPin 13 #elif STM32 #define ledPin PC13 #define ledLOW HIGH #define ledHIGH LOW #endif double pi(int m) { //https://create.arduino.cc/projecthub/colonel/calculating-pi-d85ea7 double result = 4; for (int x = 1; x < m; x++) { result *= (2 * x); result /= (2 * x + 1); result *= (2 * x + 2); result /= (2 * x + 1); } return result; } void setup() { // put your setup code here, to run once: pinMode(ledPin, OUTPUT); Serial.begin(115200); } void loop() { //put your main code here, to run repeatedly : digitalWrite(ledPin, ledLOW); Serial.println("benchmark started."); auto duration = millis(); double total = 0; for (int i = 0; i < 700; i++) { auto result = pi(i); total += result; } Serial.println(total); duration = millis() - duration; Serial.write("finished in ms: "); Serial.println(duration); digitalWrite(ledPin, ledHIGH); while (1) { delay(1000); } }