Les Broches du Raspberry Pi Pico en MicroPython

Le Raspberry Pi Pico dispose de plusieurs broches GPIO (General-Purpose Input/Output) qui peuvent être utilisées pour diverses tâches en MicroPython. Dans cette leçon, nous allons explorer les différentes broches du Pico, leur numéro, leur fonction (analogique, PWM, numérique), et comment les utiliser en MicroPython.

Broches GPIO du Raspberry Pi Pico

Le Raspberry Pi Pico possède 26 broches GPIO que vous pouvez utiliser pour interagir avec des composants électroniques et des capteurs. Voici une liste des broches GPIO disponibles sur le Pico :

Alt text

Utilisation des Broches en MicroPython

Configuration d'une broche en mode numérique

Pour configurer une broche en mode numérique (entrée ou sortie), vous pouvez utiliser la bibliothèque machine en MicroPython. Par exemple, pour configurer la broche GP0 en tant que sortie, vous pouvez utiliser le code suivant :

import machine # Configurer GP0 en sortie broche_gp0 = machine.Pin(0, machine.Pin.OUT)

MicroPython offre plusieurs méthodes pour contrôler la tension de sortie :

from machine import Pin Pin.on() et Pin.off() Pin.high() et Pin.low() Pin.value(valeur)

Les noms de fonctions sont explicites :

pin_led = Pin(16, mode=Pin.OUT) # Impose une tension de 3.3V en sortie (état logique haut) pin_led.on() pin_led.high() pin_led.value(1) # Impose une tension de 0V en sortie (état logique bas) pin_led.off() pin_led.low() pin_led.value(0)

Utilisation des broches en mode PWM

Le Raspberry Pi Pico prend en charge la modulation de largeur d'impulsion (PWM) sur certaines broches. Cela permet de contrôler la vitesse des moteurs, la luminosité des LED, etc. Voici comment configurer une broche en mode PWM :

import machine # Configurer GP2 en mode PWM broche_gp2 = machine.Pin(2) pwm = machine.PWM(broche_gp2)

Lecture de valeurs analogiques

Pour lire des valeurs analogiques à partir des broches GPIO, vous pouvez utiliser l'ADC (Convertisseur Analogique-Numérique) intégré au Pico.

Note/Rappel: Le RPi Pico possède 4 broches analogiques: GP26->29

Voici comment configurer une broche pour lire une valeur analogique :

import machine # Configurer GP26 pour la lecture analogique broche_gp26 = machine.Pin(26) adc = machine.ADC(broche_gp26) # Lire la valeur analogique valeur_analogique = adc.read_u16()

Le code suivant permet de lire la valeur d'un potentiomètre analogique:

from machine import ADC, Pin from utime import sleep pot = ADC(26) conversion_factor = 3.3 / 65535 while True: raw = pot.read_u16() volts = raw * conversion_factor print('Raw: {} '.format(raw), 'Voltage {:.1f}V'.format(volts)) sleep(1)

Et ce code permet de changer la fréquence de clignotement d'une LED en fonction de la valeur lue sur un potentiomètre:

from machine import ADC, Pin from utime import sleep pot = ADC(26) led = Pin(25, Pin.OUT) def map(s, a1, a2, b1, b2): return b1 + (s - a1) * (b2 - b1) / (a2 - a1) while True: raw = pot.read_u16() delay = map(raw, 0, 65535, 0, 1) print('Raw: {} '.format(raw), 'Delay {:.1f}s'.format(delay)) led.value(1) sleep(delay) led.value(0) sleep(delay)

Conclusion

Les broches GPIO du Raspberry Pi Pico offrent de nombreuses possibilités pour interagir avec le monde physique en utilisant MicroPython. Que ce soit pour contrôler des LED, des moteurs, ou pour lire des capteurs analogiques, vous avez maintenant les connaissances de base pour commencer à créer vos propres projets avec le Pico. Explorez davantage et expérimentez avec les différentes broches pour donner vie à vos idées.