Un saluto a tutti. Avete idea di quale potrebbe essere la precisione della suddetta funzione? Avrei bisogno di misurare in continuo tempi molto piccoli (decimi di millisecondo), secondo voi si può fare? Devo per forza usare un kernel con patch RTAI e software scritto in C e poi usato da python (con swig)? Sto provando quest'ultima strada ma per le mie competenze la vedo dura. Vorrei usare solo python se esistesse una soluzione al problema.
Grazie in anticipo per i consigli. Matteo. P.S. Riporto di seguito il codice che sto usando per fare questi test. import time def adesso(): return time.time() * 1E9 def aspetta(vel = 0): if vel == 0: time.sleep(0.0001) elif vel == 1: pass delta_pausa = [] def calibra_timer(): for i in range(2): inizio = adesso() aspetta(i) fine = adesso() delta_pausa.append(fine - inizio) def pausa(t): inizio = adesso() def step(va): aspetta(va) fine = adesso() return fine va = 1 fine = step(va) while t > fine - inizio: fine = step(va) if t - (fine - inizio) > 1.25 * delta_pausa[0]: va = 0 else: va = 1 def inizializzazione(): calibra_timer() #num_io = 24 #for i in range(num_io): # io.append(0) inizializzazione() inizio = adesso() pausa(1.234567891 * 1E9 * 10) fine = adesso() print fine - inizio inizio = adesso() for i in range (1000): pausa(1.234567891 * 1E9 * 0.01) fine = adesso() print fine - inizio _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python