// Ce code est basé sur l'exemple de code fourni par Arduino pour l'utilisation des interruptions sur la carte Nano. 

// Définir la broche pour le signal PWM 
#define PWM_PIN 3 

// Définir la variable pour stocker la valeur PWM 
int pwmValue = 0; 

// Définir la fonction d'interruption 
void pwmInterrupt() { 
  // Lire la valeur du signal PWM 
  pwmValue = pulseIn(PWM_PIN, HIGH); 
  
  // Imprimer la valeur sur le moniteur série 
  Serial.print("La valeur PWM est : "); 
  Serial.println(pwmValue); 
} 

void setup() { 
  // Initialiser le moniteur série 
  Serial.begin(9600); 
  
  // Définir la broche PWM comme entrée 
  pinMode(PWM_PIN, INPUT); 
  
  // Attacher l'interruption à la broche PWM 
  attachInterrupt(digitalPinToInterrupt(PWM_PIN), pwmInterrupt, RISING); 
} 

void loop() { 
  // Ce code s'exécutera en continu, mais l'interruption se déclenchera chaque fois qu'il y aura un front montant sur la broche PWM. 
  // La fonction d'interruption lira la valeur du signal PWM et l'imprimera sur le moniteur série. 
} 

// Référence : https://www.arduino.cc/reference/en/language/functions/external-interrupts/attachinterrupt/