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 ("Strg+C beëindigt het programma")
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()
Als u het programma laat lopen, geven de LED's voortdurend de vrije geheugenruimte op de geheugenkaart
weer. Probeer dit uit, door grote bestanden via het netwerk op de geheugenkaart te kopiëren en weer te
verwijderen. De weergave wordt automatisch bijgewerkt.
7.1.1 Zo werkt het
Het programma gebruikt de Python-module os voor het berekenen van de vrije geheugenruimte, dat de
fundamentele besturingssysteemfuncties ter beschikking stelt.
import os De module os moet, net als andere modules, aan het begin van het programma worden
geïmporteerd.
g1 = 1; g2 = 10; g3 = 100; g4 = 500 Deze regels definiëren de grenzen van de gebieden voor vrije geheugen-
ruimte, vanwaar de indicatie moet omschakelen. Vanwege de eenvoud gebruikt het programma megabyte en
niet byte, omdat men zich deze getallen beter kan inbeelden. De grenzen kunnen te allen tijde anders
worden vastgelegd, de vier waarden moeten alleen in oplopende grootte worden toegekend.