Raspberry Pi Pico - DEL - Clignoter sans veille

Dans ce tutoriel, nous allons apprendre comment faire clignoter une LED sur le Raspberry Pi Pico en utilisant une méthode non bloquante sans utiliser la fonction time.sleep(). En détail, nous apprendrons :

LED clignotante du Raspberry Pi Pico

Préparation du matériel

1×Raspberry Pi Pico W
1×Raspberry Pi Pico Alternativement:
1×Câble Micro USB
1×LED Kit
1×LED (red)
1×LED Module
1×220Ω Resistor
1×Plaque d'essai
1×Fils de connexion
1×Recommandé: Carte d'extension à bornier à vis pour Raspberry Pi Pico

Ou vous pouvez acheter les kits suivants:

1×Kit de Capteurs DIYables (30 capteurs/écrans)
1×Kit de Capteurs DIYables (18 capteurs/écrans)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

Note d'achat: Pour simplifier le processus de câblage, nous recommandons d'utiliser le LED Module, qui est livré avec une résistance intégrée.

À propos de la LED

Découvrez comment fonctionnent les LEDs, leur brochage et les méthodes de programmation dans ces tutoriels.

Diagramme de câblage

Schéma de câblage LED pour le Raspberry Pi Pico

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

Code Raspberry Pi Pico - LED qui clignote sans pause

Le script MicroPython ci-dessous fait clignoter une DEL avec une fréquence de 250 ms d'allumage et 750 ms d'extinction, respectivement pour toujours, sans bloquer le reste du code.

/* * Ce code Raspberry Pi Pico a été développé par newbiely.fr * Ce code Raspberry Pi Pico est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/raspberry-pico/raspberry-pi-pico-blink-led-without-sleep */ from DIYables_MicroPython_LED import LED, LED_BLINKING, LED_IDLE, CTRL_ANODE # Create an LED object that attaches to pin 13 led = LED(13, CTRL_ANODE) led.blink(250, 750) # 250ms ON, 750ms OFF, blink immediately # led.blink(250, 750, 1000) # Uncomment to blink after 1 second delay # Function to print the state of the LED def print_state(state): if state == LED_BLINKING: print("BLINKING") elif state == LED_IDLE: print("BLINK ENDED") # Track the previous state of the LED previous_state = None # Main loop while True: led.loop() # MUST call the led.loop() function in loop # Get the current state of the LED current_state = led.get_state() # Print the state only if it has changed if current_state != previous_state: print_state(current_state) previous_state = current_state # Update the previous state # DO OTHER TASKS HERE # To stop blinking immediately, call led.cancel()

Étapes rapides

Veuillez suivre ces instructions étape par étape :

  • Assurez-vous que l'IDE Thonny est installé sur votre ordinateur.
  • Assurez-vous que le firmware MicroPython est installé sur votre Raspberry Pico.
  • Si c'est la première fois que vous utilisez un Raspberry Pico, reportez-vous au tutoriel Raspberry Pi Pico - Premiers pas. pour des instructions détaillées.
  • Branchez le Raspberry Pi Pico à la LED selon le schéma fourni.
  • Branchez le Raspberry Pi Pico à votre ordinateur à l'aide d'un câble USB.
  • Lancez l'IDE Thonny sur votre ordinateur.
  • Dans l'IDE Thonny, sélectionnez l'interpréteur MicroPython (Raspberry Pi Pico) en accédant à Outils Options.
  • Dans l'onglet Interpréteur, sélectionnez MicroPython (Raspberry Pi Pico) dans le menu déroulant.
  • Assurez-vous que le port correct est sélectionné. L'IDE Thonny devrait détecter automatiquement le port, mais il peut être nécessaire de le sélectionner manuellement (par exemple, COM3 sous Windows ou /dev/ttyACM0 sous Linux).
  • Dans l'IDE Thonny, accédez à Outils Gérer les paquets dans l'IDE Thonny.
  • Recherchez « DIYables-MicroPython-LED », puis trouvez la bibliothèque LED créée par DIYables.
  • Cliquez sur DIYables-MicroPython-LED, puis cliquez sur le bouton Install pour installer la bibliothèque LED.
Bibliothèque LED pour Raspberry Pi Pico
  • Copiez le code ci-dessus et collez-le dans l'éditeur de l'IDE Thonny.
  • Enregistrez le script sur votre Raspberry Pi Pico en procédant ainsi :
    • Cliquez sur le bouton Enregistrer, ou utilisez Ctrl+S.
    • Dans la boîte de dialogue de sauvegarde, vous verrez deux sections : Cet ordinateur et Raspberry Pi Pico. Sélectionnez Raspberry Pi Pico
    • Enregistrez le fichier sous le nom main.py
  • Cliquez sur le bouton vert Exécuter (ou appuyez sur F5) pour exécuter le script. Le script s'exécutera.
  • Surveillez la LED : la LED clignotera indéfiniment.

Code Raspberry Pi Pico - Clignoter une LED pendant une période

Le code ci-dessous fait clignoter une LED pendant 10 secondes, puis s'arrête, sans bloquer le reste du code.

/* * Ce code Raspberry Pi Pico a été développé par newbiely.fr * Ce code Raspberry Pi Pico est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/raspberry-pico/raspberry-pi-pico-blink-led-without-sleep */ from DIYables_MicroPython_LED import LED, LED_BLINKING, LED_IDLE, CTRL_ANODE # Create an LED object that attaches to pin 9 led = LED(13, CTRL_ANODE) led.blink_with_duration(250, 750, 10000) # 250ms ON, 750ms OFF, blink for 10 seconds, blink immediately # led.blink_with_duration(250, 750, 10000, 1000) # Uncomment to blink after 1 second delay # Function to print the state of the LED def print_state(state): if state == LED_BLINKING: print("BLINKING") elif state == LED_IDLE: print("BLINK ENDED") previous_state = None # Main loop while True: led.loop() # MUST call the led.loop() function in loop # Get the current state of the LED current_state = led.get_state() # Print the state only if it has changed if current_state != previous_state: print_state(current_state) previous_state = current_state # Update the previous state # DO OTHER TASKS HERE # To stop blinking immediately, call led.cancel()

Étapes rapides

  • Copiez le code ci-dessus et collez-le dans l’éditeur de l’IDE Thonny.
  • Enregistrez le script sur votre Raspberry Pi Pico.
  • Cliquez sur le bouton vert Exécuter (ou appuyez sur F5) pour exécuter le script. Le script s’exécutera.
  • Surveillez la LED : elle clignotera pendant 10 secondes, puis s’arrêtera.

Code Raspberry Pi Pico - Faire clignoter une LED un certain nombre de fois

Le code ci-dessous fait clignoter une LED avec une durée de 250 ms en état allumé et 750 ms en état éteint, répété dix fois sans bloquer le reste du code.

/* * Ce code Raspberry Pi Pico a été développé par newbiely.fr * Ce code Raspberry Pi Pico est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/raspberry-pico/raspberry-pi-pico-blink-led-without-sleep */ from DIYables_MicroPython_LED import LED, LED_BLINKING, LED_IDLE, CTRL_ANODE # Create an LED object that attaches to pin GP13 led = LED(13, CTRL_ANODE) led.blink_n_times(250, 750, 10) # 250ms ON, 750ms OFF, repeat 10 times, blink immediately # led.blink_n_times(250, 750, 10, 1000) # Uncomment to blink after 1 second delay # Function to print the state of the LED def print_state(state): if state == LED_BLINKING: print("BLINKING") elif state == LED_IDLE: print("BLINK ENDED") previous_state = None # Main loop while True: led.loop() # MUST call the led.loop() function in loop # Get the current state of the LED current_state = led.get_state() # Print the state only if it has changed if current_state != previous_state: print_state(current_state) previous_state = current_state # Update the previous state # DO OTHER TASKS HERE # To stop blinking immediately, call led.cancel()

Étapes rapides

  • Copiez le code ci-dessus et collez-le dans l'éditeur de l'IDE Thonny.
  • Enregistrez le script sur votre Raspberry Pi Pico.
  • Cliquez sur le bouton vert Exécuter (ou appuyez sur F5) pour exécuter le script. Le script s'exécutera.
  • Observez la DEL : elle clignotera 10 fois, puis s'arrêtera.

Vidéo

※ NOS MESSAGES

  • N'hésitez pas à partager le lien de ce tutoriel. Cependant, veuillez ne pas utiliser notre contenu sur d'autres sites web. Nous avons investi beaucoup d'efforts et de temps pour créer ce contenu, veuillez respecter notre travail !