• 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
programma rpi3 python l blocca esecuzione

python blocca l'esecuzione programma
#1
Ciao a tutti,

sto provando a fare eseguire python alcune istruzioni ricevute tramite ethernet per accendere e spegnere alcune uscite ma dopo un certo punto si blocca l'esecuzione senza però terminare il processo.

Questo è il mio programma test

import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BOARD)
GPIO.setwarnings(True)
GPIO.cleanup()
import time

from threading import Timer

PinRun=3
GPIO.setup(PinRun,GPIO.OUT)



prova=False

def Lampeggio ():
    global prova
    prova=not prova
    GPIO.output(PinRun,prova)
#    time.sleep (1)
    Timer(0.2,Lampeggio).start()

Timer(0.2,Lampeggio).start()

Dove ho sbagliato?

Grazie
Risposta
#2
Lanci il programma anteponendo sudo?

Qualche consiglio (che non riguarda la funzionalità del programma) : gli import, mettili tutti all' inizio, così come la definizione delle funzioni.
Usa Gpiozero per gestire il GPIO, molto più semplice e moderna.

Giusto per provare, ho commentato la prima parte del tuo programma (la parte del GPIO) e invece di azionare il pin, ho messo un print per provarlo al volo sul pc.
il programma funziona, senza bloccarsi: (stampa true e false alternati in continuo).
Anche se lo trovo decisamente contorto e macchinoso ;-)
Ma come detto, non suo RPi.GPIO
il GPIO 3 è usato anche con l'I2C, forse il problema sta lì? Hai provato a cambiare pin?

Con Gpiozero, l'esempio (didattico) da manuale è
Codice:
from gpiozero import LED
from time import sleep

led = LED(17)   # numero del pin

while True:  #ciclo infinito
    led.on()
    sleep(1)
    led.off()
    sleep(1)

quello pratico è:
Codice:
from gpiozero import LED
from signal import pause

led = LED(17)   # numero del pin
led.blink()

pause()
Risposta
#3
Ciao,

io ho provato a fare il print screen su terminale di raspberry ed effettivamente non si blocca mai, quindi può essere un problema di libreria. Ho provato a cambiare il pin ma si blocca sempre, dopo circa 2,5 ore.

Ho provato anche a usare GPIO zero con il programma ad uso didattico, ma quello si blocca dopo 10-15 minuti. Non ho altre idee...
Risposta
  


Vai al forum:


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