• Benvenuti su RaspberryItaly!
Benvenuto ospite! Login Login con Facebook Registrati Login with Facebook


Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5

[-]
Tags
di sintassi errore

errore di sintassi
#1
Salve sto cercando di fare avviare un relè solo se il device è  high questo e lo script che mi da errore, dove sbaglio?

Codice:
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setup(16, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
GPIO.setup(25, GPIO.OUT, initial=GPIO.LOW)
GPIO.add_event_detect(16, GPIO.BOTH)
def my_callback():
   GPIO.output(25, GPIO.input(16))
GPIO.add_event_callback(16, my_callback)


il progetto che  sto cercando di avviare è composto da 8 relè che devono funzionare solo alla chiusura di un fine corsa per l' accensione di ogni  relè


grazie
Risposta
#2
Usa i Tag code e /code per racchiudere il codice, in modo che venga visualizzato correttamente.
Riporta anche l'errore completo che ti torba Python (spesso è indicata anche la causa, e segnato con un ^ il punto "incriminato"
Risposta
#3
stando a questo
scrivono 
Codice:
def my_callback(channel):

forse manca il channel?
Heart Libro  | Blog EnricoSartori.it | Idea YouTube
Se un utente ti è stato utile, aumenta la sua reputazione! premi il Pollicione! 
Risposta
#4
(23/05/2017, 14:09)Zzed Ha scritto: Usa i Tag code e /code per racchiudere il codice, in modo che venga visualizzato correttamente.
Riporta anche l'errore completo che ti torba Python (spesso è indicata anche la causa, e segnato con un ^ il punto "incriminato"

la frase che mi da python è solo invalid sintax

(23/05/2017, 14:46)Enrico Sartori Ha scritto: stando a questo
scrivono 
Codice:
def my_callback(channel):

forse manca il channel
scusa la mia ignoranza cosa intende x channel....
Risposta
#5
Ti è indispensabile usare la vetusta libreria Rpi.Gpio? Se no, descrivi cosa vuoi ottenere, perché non ho capito cosa intendi con "il device è high".
Vuoi che quando un pin è alto, il relè collegato a un altro pin diventi alto?
Risposta
#6
(23/05/2017, 20:03)Zzed Ha scritto: Ti è indispensabile usare la vetusta libreria Rpi.Gpio? Se no, descrivi cosa vuoi ottenere, perché non ho capito cosa intendi con "il device è high".
Vuoi che quando un pin è alto, il relè collegato a un altro pin diventi alto?

no posso usare qualsiasi libreria  , mi sembrava che era la più' facile....  il progetto che sto cercando di realizzare dopo l'accensione del primo relè,  i relè (comandano delle elettrovalvole   a cui sono collegati dei pistoni ad aria ) successivi devono dipendere dalla chiusura di un interruttore (fine corsa) per attivarsi....


questo  è l'errore che mi da adesso " invalid syntax"
modificando lo script 
Codice:
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setup(4, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
GPIO.setup(25, GPIO.OUT, initial=GPIO.LOW)
GPIO.add_event_detect(4, GPIO.BOTH)
def my_callback(channel):
   GPIO.output(25, GPIO.input(4))
GPIO.add_event_callback(4, my_callback)
Risposta
#7
non devi scrivere la parola channel, leggi la documentazione al riguardo.
controlla bene i rientri di riga (identazione) del codice
Heart Libro  | Blog EnricoSartori.it | Idea YouTube
Se un utente ti è stato utile, aumenta la sua reputazione! premi il Pollicione! 
Risposta
#8
(24/05/2017, 11:22)Enrico Sartori Ha scritto: non devi scrivere la parola channel, leggi la documentazione al riguardo.
controlla bene i rientri di riga (identazione) del codice

grazie ora provo, se ho compreso è lo stesso numero del pin che uso per collegare il pulsante il 4
Risposta
#9
La più facile, comunque, è gpiozero, e di gran lunga.
Risposta
  


Vai al forum:


Navigazione: 1 Ospite(i)
Forum con nuovi Post
Forum senza nuovi post
Forum bloccato
Forum Redirect