工具与软件:
您好!
我正在尝试弄清楚如何将 HWA 设置为连续运行、而不需要重新初始化。 在我的场景中、我真的不关心帧和突发、我只是希望持续传输线性调频脉冲->针对每个线性调频脉冲运行 FFT ->处理结果。
我已将我的器件配置为生成线性调频脉冲;
- 每次突发16个线性调频脉冲(考虑到我是无限运行、这有点随意)
- 每帧1次突发
- 0帧(无限)
我的 HWA 已配置;
- TRIGMODE = 2且 FFT1DEN = 1
- 执行 FFT 并将数据放置在0x8000 (它正在正常运行)中
- param start 0、param stop 0
- NLOOPS = 4095
我知道这应该只是在每个 ping/Pong 触发器上将 FFT 数据无限地转储到0x5500 8000、直到我停止程序。
我尚未设置 DMA 来传输输出 FFT 数据进行处理、而为了检查 HWA 操作、我设置了三个计数器、这些计数器会在某些中断时递增
- 线性调频脉冲可用 IRQ 无限递增
- HWASS_LOOP_INT 计数器递增至1并停止
- HWASS_PARAMDONE_INT 递增至4095并停止
然后、我已经添加了一行来在 HWASS_PARAMDONE_INT 达到4095并且我的计数器的行为如下时运行我的 HWA 初始化序列(复位、已配置和启动)
- 线性调频脉冲可用 IRQ 无限递增
- HWASS_LOOP_INT 计数器递增至1并停止
- HWASS_PARAMDONE_INT 按照线性调频脉冲可用 IRQ 无限递增
我有两个问题
- TRM 指出、如果 NLOOPS = 4095、HWA 会无限运行、但在我的案例中、它只运行4095次、我在这里缺少什么吗? 我是否只需要在4095后坚持重新初始化 HWA?
- 是什么导致 HWASS_LOOP_INT 触发、为什么在我的场景中它只运行一次?
谢谢