DSP

DSP程序中 ,如何完成延时且不影响整体程序的工作效率

2019-07-13 09:41发布

DSP程序做延时  并不是在需要延时的地方while循环等待多少秒,而是通过整个程序的执行时间来做延时。假设fun1()需要每10秒才能执行一次,通常会在fun1()里面加sleep(10);但


是这样程序每次执行到fun1()都要停10秒,其他程序无法执行了。DSP为单进程 ,所以不能这样。


假设fun1()是由fun()里面调用的,那么就这样写


fun()

if(conut<2000)

conut++;
}else

fun1();




就是单程序每执行2000次之后,才执行1次fun1();用整个程序运行的时间来做延时。这样就不会出现卡在fun1()等待的情况了,增加了程序的运行效率。