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@lists.python.it > http://lists.python.it/mailman/listinfo/python _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python