Bonjour,
J’essaie de fabriquer un photometre avec une Raspberry Pi zero.
Pour ce faire, j’ai investi dans un capteur as7262 qui fonctionne en I2C. J’aimerai allumer une led dès que le capteur a mesuré la couleur souhaitée (SPI).
j’ai essayé de créer des fonctions distinctes pour gérer les différents modes mais rien n’y fait. j’ai toujours cette erreur :
ValueError: A different mode has already been set!
Quelqu’un aurait une idée ? je suis vraiment novice en python.
mon code :
import time
import board
import RPi.GPIO as GPIO
from adafruit_as726x import *
GPIO.setwarnings(False)
def allumerled(onoff, ledno=36):
GPIO.setmode(GPIO.BOARD) # Définit le mode de numérotation (Board)
led1 = ledno
GPIO.setup(led1, GPIO.OUT) # Active le contrôle du GPIO
if onoff == 1:
GPIO.output(led1, GPIO.HIGH)
time.sleep(2)
else:
GPIO.output(led1, GPIO.LOW)
time.sleep(2)
allumerled(1, 36)
def mesure():
def value_sensor(x):
return x
i2c = board.I2C()
sensor = AS726x_I2C(i2c)
sensor.conversion_mode = sensor.MODE_2
while value_sensor(sensor.red) < 130:
time.sleep(0.1)
print("\n")
print('violet : ', value_sensor(sensor.violet),)
print('bleu : ', value_sensor(sensor.blue),)
print('vert : ', value_sensor(sensor.green),)
print('jaune : ', value_sensor(sensor.yellow),)
print('orange : ', value_sensor(sensor.orange),)
print('rouge : ', value_sensor(sensor.red),)
print("\n")
print("rajouter une goutte")
time.sleep(2)
else :
print("c est rouge ")
time.sleep(5)
allumerled(1, 36)
mesure()
allumerled(2, 36)
merci par avance pour votre aide