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.

[参考译文] TMS320F28377S:为什么不在 ADC 采样放大器的末尾设置提前中断;用于触发 CLA 任务的保持窗口?

Guru**** 2348500 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/594179/tms320f28377s-why-not-set-early-interrupt-at-the-end-of-the-adc-sample-hold-window-to-trigger-cla-task

器件型号:TMS320F28377S

在 F28377S (V210)的示例项目“cla_adc_fir32_cpu01”中,ADCAINT1被设置为 CLA 任务7的触发器,我发现 CLA_adc_fir32_cpu01.c 中有一行代码,如下所示

//
//将脉冲位置设置为晚期
//
AdcaRegs.ADCCTL1.bit.INTPULSEPOS=1;

但由于 fir32.asm 中的任务7说明、此任务由早期 ADC 中断触发。 该中断发生在采样保持窗口的末尾、因此我认为它应该是这样的

AdcaRegs.ADCCTL1.bit.INTPULSEPOS = 0;

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    汇编代码取自早期器件(如2803x)的示例、在这里、如果你打开早期中断、你只需等待8个周期来读取 ADC 结果寄存器。 如果您在 TRM 中看到第5.5.2.1节(ADC 对 CLA 的早期中断响应)、则转换在该器件上花费的时间会远远超过7个周期;这取决于 ADC 的频率和其他因素。

    对于这样一个小的算法 FIR、它在触发早期中断方面存在劣势、因为在读取 ADC 寄存器之前没有足够的预计算代码来填补空白。 我将提交一个 TT 来更新汇编文件中的注释、以说明这是一个延迟触发器、并删除未发出的 MNOP。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    感谢您的回复:)