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.
目前我们想使用F280049M(主频100M)做高速脉冲计数器。我们产品的规格书是做到4路高速(200kHz)脉冲同时计数,4路pwm(200kHz)同时输出。
1.当我们使用eCap模块作为我们的高速脉冲计数器时:
(1). 如果F280049M仅仅跑eCap功能的话,可以轻松达到4路高速脉冲计数器--4路200kHz同时计数
(2). 如果跑eCap的同时跑4路pwm 200kHz输出 和 SPI 2M 的时钟速速率通信,那么4路eCap中只有2路可以抓到正确的脉冲数,其他2路不能。
2.目前我们的pwm输出使用中断进行计数,每15个脉冲中断一次,4路200kHz同时输出的话,会频繁的进入中断。
同时eCap是接收到一次上升沿就进入中断,4路200kHz同时接收也会频繁进入中断。
SPI的通信目前是使用2M的时钟速率,每接收1byte的数据就会进入中断。
这三个中断优先级pwm的最高,eCap的中间,SPI最低。我们推测是因为pwm的中断优先级比eCap的中断高,所以eCap的中断被抢占,因此脉冲计数不准
3.如果我们使用外部中断XINT的模块,外部中断1--XINT1和外部中断2--XINT2这两个比PWM的优先级高,但是外部中断3--XINT3和外部中断4--XINT4比PWM和SPI的中断低,所以只有XINT1/XINT2计数准确,其他的外部中断不准。
对于这样的情况有什么建议吗?