Raspberry Pi Pico - carte microSD

Dans ce guide, nous apprendrons à utiliser une carte microSD avec le Raspberry Pi Pico. Nous discuterons des détails suivants :

Carte microSD Raspberry Pi Pico

Préparation du matériel

1×Raspberry Pi Pico W
1×Raspberry Pi Pico Alternativement:
1×Câble Micro USB
1×Carte Micro SD
1×Module carte Micro SD
1×Fils de connexion
1×Optionnel: Adaptateur carte mémoire MicroSD vers SD
1×Recommandé: Carte d'extension à bornier à vis pour Raspberry Pi Pico

Ou vous pouvez acheter les kits suivants:

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.

À propos du module de carte microSD

Le module de carte microSD se connecte au Raspberry Pi Pico et contient une carte microSD. Il sert de connexion entre le Raspberry Pi Pico et la carte microSD.

Brochage

Brochage du module de carte microSD

Le module de carte Micro SD est livré avec 6 broches.

  • Connectez la broche VCC à la broche 5V étiquetée R4 sur le Raspberry Pi Pico.
  • Connectez la broche GND à la broche GND sur le Raspberry Pi Pico.
  • Connectez la broche MISO à la broche MISO sur le Raspberry Pi Pico.
  • Connectez la broche MOSI à la broche MOSI sur le Raspberry Pi Pico.
  • Connectez la broche SCK à la broche SCK sur le Raspberry Pi Pico.
  • Connectez la broche SS à la broche SS telle que définie dans votre code du Raspberry Pi Pico.

Préparation

  • Insérez la carte microSD dans votre ordinateur avec un lecteur de cartes SD USB 3.0.
  • Assurez-vous que la carte microSD est formatée en FAT16 ou FAT32. Recherchez en ligne des instructions sur la façon de la formater.

Diagramme de câblage

Schéma de câblage du module Micro SD pour Raspberry Pi Pico

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

※ Note:

Si vous possédez un bouclier Ethernet ou tout autre bouclier doté d'un emplacement pour une carte microSD, vous n'avez pas besoin d'un module microSD séparé. Il vous suffit d'insérer la carte microSD dans l'emplacement du bouclier.

Raspberry Pi Pico - Comment ouvrir un fichier sur une carte microSD et le créer s'il n'existe pas

Code du Raspberry Pi Pico

É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 Pi Pico.
  • Si c'est votre première utilisation d'un Raspberry Pico, reportez-vous au tutoriel Raspberry Pi Pico - Premiers pas. pour obtenir des instructions détaillées.
  • Branchez les composants selon le schéma fourni.
  • Connectez le Raspberry Pi Pico à votre ordinateur à l'aide d'un câble USB.
  • Lancez l'IDE Thonny sur votre ordinateur.
  • Dans Thonny IDE, sélectionnez l'interpréteur MicroPython (Raspberry Pi Pico) en vous rendant dans 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é. Thonny IDE devrait détecter automatiquement le port, mais vous devrez peut-être le sélectionner manuellement (par ex., COM3 sous Windows ou /dev/ttyACM0 sous Linux).
  • Copiez le code ci-dessus et collez-le dans l'éditeur de Thonny.
  • Enregistrez le script sur votre Raspberry Pi Pico en:
    • Cliquez sur le bouton Enregistrer, ou utilisez les touches Ctrl+S.
    • Dans la boîte de dialogue d'enregistrement, 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.
  • Vérifiez le message dans le Shell en bas de Thonny.

Si vous nommez votre script main.py et le sauvegardez dans le répertoire racine du Raspberry Pi Pico, il s'exécutera automatiquement à chaque mise sous tension ou réinitialisation du Pico. Cela est utile pour les applications autonomes qui doivent commencer à s'exécuter immédiatement après la mise sous tension. Si vous nommez votre script sous un autre nom que main.py, vous devrez l'exécuter manuellement depuis le Shell de Thonnys.

  • Insérez la carte microSD dans le module microSD.
  • Utilisez le schéma de câblage pour connecter le module microSD au Raspberry Pi Pico.
  • Ouvrez le moniteur série dans l'IDE Thonny.
  • Copiez le code fourni et collez-le dans l'IDE Thonny.
/* * 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-micro-sd-card */ import machine import os import sdcard # Define SPI pins for the Micro SD Card module SPI_SCK_PIN = 2 # The Raspberry Pi Pico pin GP2 connected to SCK SPI_MOSI_PIN = 3 # The Raspberry Pi Pico pin GP3 connected to MOSI SPI_MISO_PIN = 4 # The Raspberry Pi Pico pin GP4 connected to MISO SPI_CS_PIN = 5 # The Raspberry Pi Pico pin GP5 connected to SS (CS) # Initialize SD card using SoftSPI and sdcard driver spi = machine.SoftSPI(baudrate=1000000, polarity=0, phase=0, sck=machine.Pin(SPI_SCK_PIN), mosi=machine.Pin(SPI_MOSI_PIN), miso=machine.Pin(SPI_MISO_PIN)) cs = machine.Pin(SPI_CS_PIN, machine.Pin.OUT) try: sd = sdcard.SDCard(spi, cs) os.mount(sd, "/sd") print("SD Card is ready") except Exception as e: print("SD CARD FAILED, OR NOT PRESENT!", e) raise SystemExit # Check if the file exists file_path = "/sd/pico.txt" if file_path.replace("/sd/", "") not in os.listdir("/sd"): print("pico.txt doesn't exist. Creating pico.txt file...") # Create a new file by opening it and immediately closing it f = open(file_path, "w") f.close() # Recheck if file is created or not if file_path.replace("/sd/", "") in os.listdir("/sd"): print("pico.txt exists on SD Card.") else: print("pico.txt doesn't exist on SD Card.") os.umount("/sd")
  • Cliquez sur le bouton Upload dans l'IDE Thonny pour transférer le code vers le Raspberry Pi Pico.
  • Regardez le moniteur série pour voir les résultats après le premier téléversement.
Shell x
>>> %Run -c $EDITOR_CONTENT
MPY: soft reboot SD Card is ready arduino.txt doesn't exist. Creating arduino.txt file... arduino.txt exists on SD Card.
MicroPython (Raspberry Pi Pico) • Board CDC @ COM29 ≡
  • Les résultats affichés sur le Moniteur série pour les prochaines tentatives.
Shell x
>>> %Run -c $EDITOR_CONTENT
MPY: soft reboot SD Card is ready arduino.txt exists on SD Card.
MicroPython (Raspberry Pi Pico) • Board CDC @ COM29 ≡

※ Note:

Si vous ouvrez le moniteur série après votre premier téléversement, vous pourriez ne pas voir de sortie.

  • Retirez la carte microSD du module.
  • Insérez la carte mémoire microSD amovible dans un lecteur de cartes USB.
  • Branchez le lecteur de cartes USB à votre ordinateur.
  • Vérifiez si le fichier est présent.

Raspberry Pi Pico - Comment écrire et lire des données dans un fichier sur une carte microSD

Ce code fait les choses suivantes :

  • Stocker des données dans un fichier
  • Ouvrir le fichier et afficher chaque caractère un par un sur le moniteur série
/* * 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-micro-sd-card */ import machine import os import sdcard # Define SPI pins for the Micro SD Card module SPI_SCK_PIN = 2 # The Raspberry Pi Pico pin GP2 connected to SCK SPI_MOSI_PIN = 3 # The Raspberry Pi Pico pin GP3 connected to MOSI SPI_MISO_PIN = 4 # The Raspberry Pi Pico pin GP4 connected to MISO SPI_CS_PIN = 5 # The Raspberry Pi Pico pin GP5 connected to SS (CS) # Initialize SD card using SoftSPI and sdcard driver spi = machine.SoftSPI(baudrate=1000000, polarity=0, phase=0, sck=machine.Pin(SPI_SCK_PIN), mosi=machine.Pin(SPI_MOSI_PIN), miso=machine.Pin(SPI_MISO_PIN)) cs = machine.Pin(SPI_CS_PIN, machine.Pin.OUT) try: sd = sdcard.SDCard(spi, cs) os.mount(sd, "/sd") print("SD CARD INITIALIZED.") except Exception as e: print("SD CARD FAILED, OR NOT PRESENT!", e) raise SystemExit file_path = "/sd/pico.txt" # Open file for writing (append mode) try: f = open(file_path, "a") f.write("Created by newbiely.com\n") # write a line to pico.txt f.write("Learn Raspberry Pi Pico and SD Card\n") # write another line to pico.txt f.close() except Exception as e: print("SD Card: Issue encountered while attempting to open the file pico.txt", e) # Open file for reading try: f = open(file_path, "r") while True: ch = f.read(1) # read characters one by one from Micro SD Card if not ch: break print(ch, end="") # print the character to the Shell f.close() except Exception as e: print("SD Card: Issue encountered while attempting to open the file pico.txt", e) os.umount("/sd")
  • Le moniteur série a montré ce qui se trouvait dans le fichier.
Shell x
>>> %Run -c $EDITOR_CONTENT
MPY: soft reboot Created by newbiely.com Learn Raspberry Pi Pico and SD Card
MicroPython (Raspberry Pi Pico) • Board CDC @ COM29 ≡

※ Note:

Lorsque vous exécutez le code sur le Raspberry Pi Pico, il ajoute des données à la fin du fichier. Si vous redémarrez le Raspberry Pi Pico, il répète ce processus, et le même texte est répété dans le fichier. Vous verrez ces lignes supplémentaires dans le Moniteur série :

Shell x
>>> %Run -c $EDITOR_CONTENT
MPY: soft reboot Créé par newbiely.com Apprenez Raspberry Pi Pico et la carte SD Créé par newbiely.com Apprenez Raspberry Pi Pico et la carte SD
MicroPython (Raspberry Pi Pico) • Board CDC @ COM29 ≡

Vous pouvez retirer la carte microSD du module et utiliser un lecteur de carte SD USB pour voir les fichiers sur votre ordinateur.

Raspberry Pi Pico - Comment lire un fichier sur une carte microSD ligne par ligne

/* * 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-micro-sd-card */ import machine import os import sdcard # Define SPI pins for the Micro SD Card module SPI_SCK_PIN = 2 # The Raspberry Pi Pico pin GP2 connected to SCK SPI_MOSI_PIN = 3 # The Raspberry Pi Pico pin GP3 connected to MOSI SPI_MISO_PIN = 4 # The Raspberry Pi Pico pin GP4 connected to MISO SPI_CS_PIN = 5 # The Raspberry Pi Pico pin GP5 connected to SS (CS) # Initialize SD card using SoftSPI and sdcard driver spi = machine.SoftSPI(baudrate=1000000, polarity=0, phase=0, sck=machine.Pin(SPI_SCK_PIN), mosi=machine.Pin(SPI_MOSI_PIN), miso=machine.Pin(SPI_MISO_PIN)) cs = machine.Pin(SPI_CS_PIN, machine.Pin.OUT) try: sd = sdcard.SDCard(spi, cs) os.mount(sd, "/sd") print("SD Card is ready") except Exception as e: print("SD CARD FAILED, OR NOT PRESENT!", e) raise SystemExit file_path = "/sd/pico.txt" # Open file for writing (append mode) try: f = open(file_path, "a") f.write("Created by newbiely.com\n") # write a line to pico.txt f.write("Learn Raspberry Pi Pico and SD Card\n") # write another line to pico.txt f.close() except Exception as e: print("SD Card: Issue encountered while attempting to open the file pico.txt", e) # Open file for reading line-by-line try: f = open(file_path, "r") line_count = 0 while True: line = f.readline() # read line-by-line from Micro SD Card if not line: break line_count += 1 print("Line {}: {}".format(line_count, line.strip())) # print the line to the Shell f.close() except Exception as e: print("SD Card: Issue encountered while attempting to open the file pico.txt", e)
  • Le résultat affiché sur le moniteur série.
Shell x
>>> %Run -c $EDITOR_CONTENT
MPY: soft reboot SD Card is ready Line 1: Created by newbiely.com Line 2: Learn Raspberry Pi Pico and SD Card
MicroPython (Raspberry Pi Pico) • Board CDC @ COM29 ≡

※ Note:

Si vous ne supprimez pas le contenu précédent du fichier, vous pourriez remarquer des lignes supplémentaires sur le moniteur série.

Raspberry Pi Pico - Comment écraser un fichier sur une carte microSD

Généralement, des informations sont ajoutées à la fin du fichier. Pour modifier un fichier, supprimez d'abord l'ancien fichier, puis créez-en un nouveau portant le même nom.

/* * 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-micro-sd-card */ import machine import os import sdcard # Define SPI pins for the Micro SD Card module SPI_SCK_PIN = 2 # The Raspberry Pi Pico pin GP2 connected to SCK SPI_MOSI_PIN = 3 # The Raspberry Pi Pico pin GP3 connected to MOSI SPI_MISO_PIN = 4 # The Raspberry Pi Pico pin GP4 connected to MISO SPI_CS_PIN = 5 # The Raspberry Pi Pico pin GP5 connected to SS (CS) # Initialize SD card using SoftSPI and sdcard driver spi = machine.SoftSPI(baudrate=1000000, polarity=0, phase=0, sck=machine.Pin(SPI_SCK_PIN), mosi=machine.Pin(SPI_MOSI_PIN), miso=machine.Pin(SPI_MISO_PIN)) cs = machine.Pin(SPI_CS_PIN, machine.Pin.OUT) try: sd = sdcard.SDCard(spi, cs) os.mount(sd, "/sd") print("SD Card is ready") except Exception as e: print("SD CARD FAILED, OR NOT PRESENT!", e) raise SystemExit file_path = "/sd/pico.txt" # Delete the file if it exists (to overwrite) try: os.remove(file_path) except OSError: pass # Create new file by opening file for writing try: f = open(file_path, "w") f.write("Created by newbiely.com\n") # write a line to pico.txt f.write("Learn Raspberry Pi Pico and SD Card\n") # write another line to pico.txt f.close() except Exception as e: print("SD Card: Issue encountered while attempting to open the file pico.txt", e) # Open file for reading try: f = open(file_path, "r") while True: ch = f.read(1) # read characters one by one from Micro SD Card if not ch: break print(ch, end="") # print the character to the Shell f.close() except Exception as e: print("SD Card: Issue encountered while attempting to open the file pico.txt", e) os.umount("/sd")
  • Résultat sur le moniteur série
Shell x
>>> %Run -c $EDITOR_CONTENT
MPY: soft reboot SD Card is ready Created by newbiely.com Learn Raspberry Pi Pico and SD Card
MicroPython (Raspberry Pi Pico) • Board CDC @ COM29 ≡
  • Redémarrez le Raspberry Pi Pico.
  • Vérifiez si du nouveau contenu a été ajouté au fichier dans le Moniteur série.

Vous pouvez également retirer la carte Micro SD de l'appareil et utiliser un lecteur USB de carte SD pour voir ce qu'il y a dessus sur votre ordinateur.

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 !