Ligne 40 : |
Ligne 40 : |
| | | |
| Note: | | Note: |
− | * L'interrupteur 3 positions (ch5) produit un signal 1050 µSec (haut), 1500 µSec (central), 2050 µSec (bas) | + | * L'interrupteur 3 positions '''fixes''' (ch5) produit un signal 1050 µSec (haut), 1500 µSec (central), 2050 µSec (bas). |
− | * L'interrupteur momentané 3 position (ch11) produit les mêmes signaux | + | * L'interrupteur 3 positions '''momentanées''' (ch11) produit les mêmes signaux. |
| + | |
| + | == Fonction time_pulse_us == |
| + | MicropPython prévoit la fonction {{fname|time_pulse_us()}} disponible dans le module {{fname|machine}}. |
| + | |
| + | C'est tardivement, mais avec plaisir, que je découvre que {{fname|time_pulse_us()}} est implémenté dans dans le firmware MicroPython du Pico. |
| + | |
| + | <nowiki>from machine import time_pulse_in |
| + | usec = time_pulse_in( pin(15), pulse_level=1 ) |
| + | </nowiki> |
| + | |
| + | Le code ci-dessus, attend que le broche 15 passe au niveau High (1) puis mesure la durée pendant laquelle cette broche reste au niveau haut. |
| | | |
| == Classe PWMCounter == | | == Classe PWMCounter == |
| | | |
− | La classe {{fname|PWMCounter}} publiée par [https://github.com/phoreglad/pico-MP-modules/tree/main/PWMCounter Phoreglad sur son dépôt GitHub] permet de mesurer la durée d'une impulsion en exploitant un compteur PWM (à 125 Mhz). | + | La classe {{fname|PWMCounter}} publiée par [https://github.com/phoreglad/pico-MP-modules/tree/main/PWMCounter Phoreglad sur son dépôt GitHub] est une alternative à la fonction {{fname|time_pulse_us()}}. |
| + | |
| + | La classe {{fname|PWMCounter}} permet de mesurer la durée d'une impulsion en exploitant un compteur PWM (à 125 Mhz). |
| | | |
| {{download-box|Téléchargez PWMCounter|https://github.com/phoreglad/pico-MP-modules/tree/main/PWMCounter}} | | {{download-box|Téléchargez PWMCounter|https://github.com/phoreglad/pico-MP-modules/tree/main/PWMCounter}} |
Ligne 99 : |
Ligne 112 : |
| {{ambox|text=L'utilisation d'un pont-diviseur 10K + 20K pour réduire la tension d'entrée à 3.3V s'est avérée inefficace en empêchant le compteur de fonctionner}} | | {{ambox|text=L'utilisation d'un pont-diviseur 10K + 20K pour réduire la tension d'entrée à 3.3V s'est avérée inefficace en empêchant le compteur de fonctionner}} |
| | | |
− | == Code == | + | == Code PWMCounter == |
| | | |
| Voici le script d'exemple utilisé pour compter le temps d'impulsion du signal RC. | | Voici le script d'exemple utilisé pour compter le temps d'impulsion du signal RC. |