dsp工程应用高准确性计时器设计方法
序言
在dsp开发过程中不可避免的会用到计时器设计,需求如根据特殊flag每5ms切出后进入特殊逻辑,这时,如果只是用简单用for循环计数,利用主循环耗时来叠加取整卡时间是不完全准确的(因为加for循环,主循环耗时可能已超,不断叠加,偏差逐渐增大)
巧用数组
从以上描述可以看到,最常用思路是无法满足准确性的需求,这时要认识到,dsp程序运行的本质是一排一排在进行(一排即为主循环耗时),使用if判断,使用自增来操作变量,在变量满足if判断条件后将对应变量清零,这样同样可以实现计时的功能,同时利用数组来对采样值存储及更新,即可实现对标志前5ms或后5ms的采样值进行锁定或存储(将数组元素理解为栈,则先入后出,对数组index0锁定则实现对前5ms时刻采样值进行锁定)