winds211 发表于 2021-6-25 11:18:03

启用LTDC后外部中断响应变慢

按例程配置外部中断,并将其抢占级设为0,
启用LTDC前相应时间约0.5us,

启用后有时会去到3us。

我捕捉的是150KHz的信号,上升沿触发,这样留给我的处理时间就不够了。
有办法解决吗?

yuyu87 发表于 2021-6-25 11:45:29

150khz这频率太高了,肯定资源不够用,没有PWM捕获么?

winds211 发表于 2021-6-25 11:52:39

yuyu87 发表于 2021-6-25 11:45
150khz这频率太高了,肯定资源不够用,没有PWM捕获么?

pwm捕获也是用中断去处理的啊,现在的问题是启用LTDC后中断响应时间变慢了。
之前用STM32H7时可以的

SUPER_CRJ 发表于 2021-6-25 11:59:57

150KHZ这么高的频率用外部中断?可以考虑楼上说的PWM捕获这一类的。

winds211 发表于 2021-6-25 12:39:02

SUPER_CRJ 发表于 2021-6-25 11:59
150KHZ这么高的频率用外部中断?可以考虑楼上说的PWM捕获这一类的。

可能是我没说清楚,我这是在抓包,150Khz的是时钟信号,在上升沿我还要读数据信号电平,然后处理,没办法用捕获,捕获只能计时,若处理数据还得要中断。

SUPER_CRJ 发表于 2021-6-25 14:17:58

winds211 发表于 2021-6-25 12:39
可能是我没说清楚,我这是在抓包,150Khz的是时钟信号,在上升沿我还要读数据信号电平,然后处理,没办法 ...

帮顶,我最近也在用TK499驱动3.5的屏,不过用的DMA,楼主有时间可以分享下TK使用LTDC的经验吗?

如果你的测量没有问题,估计是LDTC影响总线带宽,造成时间延长?
定时器我用的也不熟,猜测可以不可以:PWM捕获在上升沿的时候启用DMA把你要采集的数据保存在RAM中,然后在主程序里面执行?

Heatpump 发表于 2021-6-25 14:37:51

winds211 发表于 2021-6-25 11:52
pwm捕获也是用中断去处理的啊,现在的问题是启用LTDC后中断响应时间变慢了。
之前用STM32H7时可以的 ...

H7的速度比不了,而且64位多总线,SRAM多区块, 而 TK什么都在SDRAM,太忙了,显示需要再SDRAM存取,指令需要SDRAM取指,运算需要在SDRAM存取,虽然说有类似cache的AI_Responder(记不清名字),但也忙不过来。所以您非要用的话,把中断向量表放到内部SRAM, 这种需要快速响应的中断子程序也放到SRAM,这样速度就快很多了。
页: [1]
查看完整版本: 启用LTDC后外部中断响应变慢