python实现亚毫秒(微秒)级延时
python的常用延时函数为time.sleep,最小延时精度为0.001秒,即time.sleep(0.001)延时为1毫秒,在windows10操作系统下,逻辑分析仪实测延时为13毫秒,我的CPU是Intel i5 10400F,期望延时从1毫秒变成了13毫秒,对于某些应用来说不能忍受.
逻辑分析仪波形如下:
有一个time.time()函数,能够得到小数点后7位,我们可以通过这个函数来得到精确得多的延时结果.
用以下代码代替time.sleep(0.001)这个函数
# 毫秒延时
delay_mark = time.time()
while True:
offset = time.time() - delay_mark
if offset > 0.0011:
break
逻辑分析仪抓取波形如下:
延时为760微秒,这是目前我在windows10下能取得的最小延时了,虽然做不到真正的微秒级,但也比13毫秒好太多了.