感谢,改成整形后确实比之前更快了定时器40us已经可以正常运行了,但是把定时器改成20us后速度又上不去了 ...
我用12MHz主频,ADC可以跑到100KHz的采样率。
因为是采集一段时间的波形再处理,不需要一直连续处理,只需要读到结果存入缓存,
所以用软件死循环读定时器标志位,不开硬件中断,免去进出中断的开销,单次采样加上储存的耗时大约8到9us。
当然还有很大可优化的空间,因为考虑软件结构没做太极限的简化。
如果需要一直连续读并处理数据的话,建议把硬件数学单元用上来加速,然后小心处理各处的耗时。
可以用示波器或者逻辑分析仪来观察每段程序运行的时间,看看是哪个地方消耗了过多的时间。
页:
1
[2]