Pour le projet d'expo-sciences de ma fille (catégorie Informatique et mathématiques), elle aimerait utiliser le RPi pour faire le tour et mesurer si différents sons forts sont au-dessus du seuil de la douleur et endommagent nos oreilles. Elle est élève de 6e, mais elle a de l'expérience avec RPi et la programmation en Python. Phillip Heels Nichols a répondu à quelques questions sur la page FB RPi, mais a suggéré que nous venions ici pour plus d'aide. Elle veut calibrer le Pi avec un manomètre (j'en ai un) pour savoir combien de millivolts sont produits
Voici ce que nous pensons jusqu'à présent. Nous avons acheté un adc (mcp3008) à adafruit et attendons son arrivée. Si nous connectons la sortie numérique de l'adc à la broche 11 du GPIO et à la broche 12 du GPIO à une LED rouge, ce programme simple fonctionnera-t-il?
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BOARD)
GPIO.setup(11,GPIO.IN)
GPIO.setup(12,GPIO.OUT)
GPIO.output(12,GPIO.LOW) #make sure LED is off
SPL=0 #zero the variable
While SPL<??: #Where ?? is the value in millivolts produced by a sound at 130 db
SPL=GPIO.input(11) #get value from adc connected to microphone
GPIO.output(12,GPIO.HIGH) #turn LED on if the sound level is higher than ??
Si cela fonctionnait, quel code pourrait être mis à la fin pour réinitialiser le programme en appuyant sur un bouton connecté aux broches GPIO? Elle veut que ce soit portable, donc elle ne pourra pas taper de commandes pour exécuter à nouveau le programme.