[Python] dati da seriali
Pietro Battiston
me a pietrobattiston.it
Sab 21 Maggio 2011 11:49:55 CEST
Il giorno ven, 20/05/2011 alle 23.42 +0200, Vittorio Zuccala' ha
scritto:
> Buona sera a tutti,
> tramite una scheda elettronica invio dei dati sulla usb che il sistema
> vede come se fosse unq seriale grazie ai driver ftdi.
> Questi dati hanno una freq di campionamento di un secondo e rilevano
> lo stato di un sensore che puņ esser 1,2,3.
> Con un banale script pythonleggo la seriale e a seconda della lettura
> compio una azione sul pc.
> Il sensore,perņ, cambia di stato di rado x cui sollecito la cpu
> inutilmente con una lettura continua.
Davvero una lettura continua (un "read()" continuo, immagino) sollecita
la CPU?!
> Posso far in modo che lo script si attivi solo al cambio stato?
Io userei glib.io_add_watch:
------8<------------8<------------8<------------8<------------8<-------
seriale_da_controllare = Serial( '/indi/riz/zo' )
def azioni_da_fare_per_leggere( *args ):
# leggi e fai quel che devi fare
glib.io_add_watch( seriale_da_controllare,
glib.IO_IN,
azioni_da_fare_per_leggere )
glib.MainLoop().run()
------8<------------8<------------8<------------8<------------8<-------
poi presumo che cose analoghe ci siano anche al di fuori di
glib/gobject.
ciao
Pietro
> Se ai quale strada sguire?
> Eventualmente potrei programmare la scheda in modo da inviare un input
> inseriale solo al cambio stato...
> Per ora gira su win ma mi piacerebbe girasse anche su linux.
> Qualche idea?
> _______________________________________________
> Python mailing list
> Python a lists.python.it
> http://lists.python.it/mailman/listinfo/python
Maggiori informazioni sulla lista
Python