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.

[参考译文] TMS570LS1227:需要实现一个100kHz 中断来调用一个例程

Guru**** 2443910 points
Other Parts Discussed in Thread: HALCOGEN

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/629806/tms570ls1227-need-to-implement-a-100khz-interrupt-to-call-a-routine

器件型号:TMS570LS1227
主题中讨论的其他器件:HALCOGEN

您好!

我不熟悉 Hercules MCU、我被移交了一个由另一位工程师启动的项目、该工程师已经离开了公司。

该设计是使用 HALCoGen 应用开始的、因此代码中有很多对它的引用。

我必须在 RTI 上改装基于100kHz 的中断(我假设)、以便它调用一个使用查找表来选择生成波形的点的函数。

此时、波形是由72个点组成的正弦波、但波形不必是正弦波。

我们使用 dmaBTCAInterupt 来执行块传输、我已经在其中包含了查找代码、 我能够获得最大频率为45Hz 的正弦波

我有以下问题:

1)我能否将当前中断的速度提高到100kHz (可以阻止传输快速发生、因为我相信 一旦完成后会调用 BTC 中断);

2) 2)我能否将中断反向调整 到现有代码、以便在有/没有 HALCoGen 帮助的情况下调用查找例程;

3) 3) HALCoGen 是否可用于 在     编辑自动生成代码后重新配置或了解 MCU 的当前配置?  

此致、

Adam

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

    它取决于数据的块大小。 您可以测量使用 MPU 或通过切换一个 GPIO 将数据从 SRAM 传输到 SRAM 所需的周期数。 仅传输72个样本不需要超过10us。

    2.可以、您可以通过调用 RTI API 来手动更改周期:
    rtiSetPeriod (rtiBASE-t * rtiREG、UINT32比较、UINT32周期);

    或直接将新值写入寄存器:
    rtiREG->CMP[比较].UDCPx =周期;

    3.您只能将用户代码插入预定义的/*用户代码 begin */和/*用户代码 end */中,否则您的自定义代码将在您重新生成 HalCogen 后消失。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、QJ Wang、

    感谢您回来。

    2) 2)我认为 RTI 计时器的使用在以太网通信之间进行分配、并用作调试计时器、用于 ADC/旋转变压器和 DMA 代码的时间分析。

    我想将第二个函数从时序中重新用于目的、并在其中附加一个中断。 我可以放入任何模板代码吗?

    我当前的 RTI.c 和 sys_vim.c 文件

    e2e.ti.com/.../2376.rti.c

    e2e.ti.com/.../4466.sys_5F00_vim.c

    3) 3)我没有 HALCoGen 的原始*。DIL 文件来重新打开项目。 是否有方法导入现有代码以便 HALCogen 可以生成图?

    谢谢、

    Adam