Transformation programme en algorigramme

Bonjour
Pour mon projet de terminale j'ai réalisé ce programme pour une station météo (ci-dessous) mais pour ma soutenance j'aurai besoin de ce programme en algorigramme.
Le problème est que je ne sais pas du tout par ou commencé.

Si vous pouviez m'aider

Merci d'avance

#include <LiquidCrystal.h>
#define pinILS 6
#define pi 3.14159265359
#define RayonDesBras    0.048 // en mètre de l'anénomètre

int sensorPin = A0;        // pin du potentiomètre
int sensorValue = 0;       // variable to store the value coming from the sensor
int degre =0;
int previousVitVent =0;

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
  lcd.begin(16, 2);
  pinMode(pinILS, INPUT);
  Serial.begin(9600);
}

unsigned long millis_old(0);

float deltaTime(0);

int vitesseVent(0);

float NombreTourSec(0);

float FEtalonage(0.82);

bool isActive(false);

void loop() {
  
  sensorValue = analogRead(sensorPin); // lire valeur du capteur

  degre = map(sensorValue, 0, 1023, 0, 359); // convertir valeur capteur en valeur en degré

  lcd.setCursor(0,0); // position du début du texte de la première ligne
 
  lcd.print("dir vent"); // texte à afficher
 
  lcd.setCursor(9,0); // position du début du texte de la deuxième ligne

  lcd.print(degre); // valeur de la variable à afficher

  lcd.setCursor(13,0); // position du début du texte à afficher
 
  lcd.print("deg"); // texte à afficher

  lcd.setCursor(0,1); // position du début du texte à afficher
 
  lcd.print("v vent"); // texte à afficher

  lcd.setCursor(8,1);

  lcd.print(vitesseVent); // texte à afficher

  lcd.setCursor(12,1); // position du début du texte à afficher
 
  lcd.print("km/h"); // texte à afficher
  

 UpdateILS();
    //convertion periode -> fréquense
   if (deltaTime!=0)
   {
    NombreTourSec = (1000 / deltaTime);
   }
   else{
    NombreTourSec=0;
   }
    
  vitesseVent = 2*pi*RayonDesBras*NombreTourSec*FEtalonage*3.6;

  Serial.println(vitesseVent);

  lcd.clear(); // remettre l'écran comme au début de la boucle

}

void UpdateILS()
{
    //lecture du capteur
    isActive = digitalRead(pinILS);
 
    while(!isActive)
        isActive = digitalRead(pinILS);
        
    while(isActive)
        isActive = digitalRead(pinILS);

    while(!isActive)
        isActive = digitalRead(pinILS);
        
    deltaTime = (millis() - millis_old) ;
    millis_old = millis(); // remise à 0 du compteur pour capturé la différence de temps au prochain tour
}

Généralement on fait l'inverse, on part de l'organigramme pour écrire le code.

Si tu maitrise ton code et sais ce qu'il fait, l'organigramme en découle tout seul.

Pourtant ça n'est pas le cas et c'est pour ça que je demande de l'aide :slight_smile:

Tu comprends pas ton code?

Jambe:
Tu comprends pas ton code?

On ne peut pas vraiment dire ça pb anemometre - Français - Arduino Forum.
Mais avec un commentaire pratiquement à chaque ligne je ne crois pas qu'il soit très difficile d'en sortir un algorithme.

C'était une manière de lui mettre le nez dans son caca...