User manual
63
import RPi.GPIO as GPIO
import time
import os
g1 = 1; g2 = 10; g3 = 100; g4 = 500
GPIO.setmode(GPIO.BCM)
LED = [4,18,23]
for i in range(3):
GPIO.setup(LED[i], GPIO.OUT, initial=False)
print ("Ctrl+C arrête le programme")
try:
while True :
s = os.statvfs('/')
f = s.f_bsize * s.f_bavail / 1000000
if f < g1:
x = "100"
elif f < g2:
x = "110"
elif f < g3:
x = "010"
elif f < g4:
x = "011"
else:
x = "001"
for i in range(3):
GPIO.output(LED[i], int(x[i]))
time.sleep(1.0)
except KeyboardInterrupt:
GPIO.cleanup()
Si vous exécutez le programme, les LED indiquent en permanence l'espace mémoire libre qui reste
disponible sur la carte mémoire. Testez-le en copiant et supprimant de gros fichiers sur la carte mémoire via
le réseau. L'affichage se met à jour automatiquement.
7.1.1 Voilà comment cela fonctionne
Le programme utilise le module os de Python pour calculer l'espace mémoire libre qui est disponible à partir
des fonctions du système d'exploitation.
import os Le module os doit être importé au début du programme, comme les autres modules.
g1 = 1; g2 = 10; g3 = 100; g4 = 500 Ces lignes définissent les limites de la plage disponible pour l'espace
mémoire, entre lesquelles l'affichage doit changer. Par souci de simplicité, le programme utilise des
mégaoctets et non des octets car l'on imagine mieux ces chiffres. Vous pouvez à tout moment modifier les
limites. Les quatre valeurs doivent seulement être placées dans un ordre croissant.