This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

28335 cpuTimer1定时器与cpuTimer0定时器相互影响的问题



如题,同时使用两个定时器时,由于两个定时器中断存在着优先级的高低,我通过软件设置的方法把cpuTimer1定时器中断的优先级设置的比cpuTimer0定时器中断优先级高,开发中cpuTimer1定时器中断用于波形的输出(如正弦波),cpuTimer0定时器中断用于波形的输入(波形数据的采集)(即一个发波,一个录波),用外部设备录波,可以发现cpuTimer1定时器中断发出的波形是正常的,用同一台仪器自己发波录波,录得的波形就不正常。初步分析可能是cpuTimer0与cpuTimer1相互打断引起的,将cpuTimer1定时器中断的周期设置的大一点以给cpuTimer0定时器足够的时间去录波不被打断,录得的波形稍微变好了点,请问大神们,如何更好的规避这个问题呢?或者引起这个问题的原因到底是什么?在线急求,谢谢大家帮忙了!!!!

  • 不知道楼主用的什么单片机啊,波形采样一定要用定时器才可以完成,我的建议是采用ADC和DMA再加中断的方式,有效延长CPU 的中断处理实时性。应该可以缓解由于timer的快速中断导致两个中断互相干扰的问题。

  • 不知道楼主用的什么单片机啊,波形采样一定要用定时器才可以完成,我的建议是采用ADC和DMA再加中断的方式,有效延长CPU 的中断处理实时性。应该可以缓解由于timer的快速中断导致两个中断互相干扰的问题。

  • 同时用两个中断去处理这样的事就不太好    建议你在中断里面尽量少干事  比如只是置一个标志位

    在主函数里面做更多的事     

    你的录波是用的ADC吗    送入波形频率放低点试试效果

    考虑一下用DMA等

  • 主要是需要使用定时器产生固定频率的波形,所以相关程序只好放在中断里面做。发波频率变低之后所录得波形效果有改善,但是还是达不到要求。。。谢谢你的回复

  • 你输出固定频率的波形后,对于AD采样来说是一个连续的模拟量,你只要保证足够的采样率,大于你输出波形的频率一个倍数比如100倍于你的输出波形频率,你的还原波形就不会失真了,或者失真率很小了。