Modifications

Sauter à la navigation Sauter à la recherche
77 octets ajoutés ,  18 avril 2015 à 21:13
Ligne 80 : Ligne 80 :     
== Créer un compteur de microsecondes ==
 
== Créer un compteur de microsecondes ==
Vous pouvez utiliser un ''timer'' pour créer un compteur de microsecondes, ce qui peut s'avérer très pratique lorsque vous réalisez quelque-chose qui nécessite un chronométrage préçis. Nous allons utiliser le timer We will use timer 2 for this, since timer 2 has a 32-bit counter (so does timer 5, but if you use timer 5 then you can’t use the Servo driver at the same time).
+
Vous pouvez utiliser un ''timer'' pour créer un compteur de microsecondes, ce qui peut s'avérer très pratique lorsque vous réalisez quelque-chose qui nécessite un chronométrage préçis. Nous allons utiliser le ''timer'' 2 pour cela étant donné qu'il dispose d'un compteur 32-bit (comme c'est aussi le cas pour le ''timer'' 5, mais si vous utilisez le ''timer'' 5 alors vous ne pourrez pas piloter de Servo moteur en même temps).
   −
We set up timer 2 as follows:
+
Nous assignons le ''timer'' 2 comme suit:
    
  <nowiki>>>> micros = pyb.Timer(2, prescaler=83, period=0x3fffffff)</nowiki>
 
  <nowiki>>>> micros = pyb.Timer(2, prescaler=83, period=0x3fffffff)</nowiki>
   −
The prescaler is set at 83, which makes this timer count at 1 MHz. This is because the CPU clock, running at 168 MHz, is divided by 2 and then by prescaler+1, giving a freqency of 168 MHz/2/(83+1)=1 MHz for timer 2. The period is set to a large number so that the timer can count up to a large number before wrapping back around to zero. In this case it will take about 17 minutes before it cycles back to zero.
+
Le ''prescaler'' est configuré sur 83, which makes this timer count at 1 MHz. This is because the CPU clock, running at 168 MHz, is divided by 2 and then by prescaler+1, giving a freqency of 168 MHz/2/(83+1)=1 MHz for timer 2. The period is set to a large number so that the timer can count up to a large number before wrapping back around to zero. In this case it will take about 17 minutes before it cycles back to zero.
    
To use this timer, it’s best to first reset it to 0:
 
To use this timer, it’s best to first reset it to 0:
29 917

modifications

Menu de navigation