jardin_sonde_gravity
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
jardin_sonde_gravity [2025/07/28 08:36] – [Description] admin | jardin_sonde_gravity [2025/08/01 07:03] (Version actuelle) – admin | ||
---|---|---|---|
Ligne 26: | Ligne 26: | ||
⚠️ Le MCP3008 doit être alimenté en 3,3V, pas 5V, pour correspondre au niveau logique du Pi. | ⚠️ Le MCP3008 doit être alimenté en 3,3V, pas 5V, pour correspondre au niveau logique du Pi. | ||
- | ===== Le protocole SPI ===== | + | ===== Test de la sonde en mode interractif |
- | ### | + | Installer la bibliothèque Adafruit_CircuitPython_MCP3xxx |
- | C’est un protocole de communication utilisé pour faire dialoguer un microcontrôleur (comme le Raspberry Pi) avec des composants externes | + | |
- | ### | + | |
+ | |||
+ | < | ||
+ | # | ||
+ | import time # Pour ajouter une pause entre deux lectures (temporisation) | ||
+ | import busio # Pour initialiser et utiliser le bus SPI (communication avec le MCP3008) | ||
+ | import digitalio | ||
+ | import board # Pour accéder aux broches physiques du Raspberry Pi via des noms symboliques | ||
+ | |||
+ | # Importation de la bibliothèque du convertisseur analogique/ | ||
+ | import adafruit_mcp3xxx.mcp3008 as MCP | ||
+ | from adafruit_mcp3xxx.analog_in import AnalogIn | ||
+ | |||
+ | # | ||
+ | spi = busio.SPI(clock=board.SCK, | ||
+ | |||
+ | #Définir la broche utilisée pour sélectionner le MCP3008 (CS = Chip Select) | ||
+ | # Ici on utilise la broche physique D5 (GPIO5), mais on peut en choisir une autre | ||
+ | cs = digitalio.DigitalInOut(board.D5) | ||
+ | |||
+ | #Création d’une instance du MCP3008 relié via SPI | ||
+ | mcp = MCP.MCP3008(spi, | ||
+ | |||
+ | #Définir une entrée analogique sur le canal CH0 (où est branchée la sonde d’humidité Gravity) | ||
+ | # Si tu veux ajouter d' | ||
+ | canal_humidite_1 = AnalogIn(mcp, | ||
+ | # canal_humidite_2 = AnalogIn(mcp, | ||
+ | # canal_humidite_3 = AnalogIn(mcp, | ||
+ | |||
+ | #Boucle infinie pour lire les valeurs du capteur toutes les 2 secondes | ||
+ | while True: | ||
+ | # Lecture de la valeur brute (entre 0 et 65535) pour le capteur 1 | ||
+ | valeur = canal_humidite_1.value | ||
+ | # Lecture de la tension en volts (entre 0.0 et 3.3V) | ||
+ | tension = canal_humidite_1.voltage | ||
+ | |||
+ | # Affichage dans le terminal | ||
+ | print(f" | ||
+ | |||
+ | # Si plusieurs sondes sont branchées sur d' | ||
+ | # valeur2 = canal_humidite_2.value | ||
+ | # tension2 = canal_humidite_2.voltage | ||
+ | # print(f" | ||
+ | |||
+ | # Temporisation de 5 secondes avant la prochaine lecture | ||
+ | time.sleep(5) | ||
+ | </ |
jardin_sonde_gravity.1753691784.txt.gz · Dernière modification : de admin