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.

[参考译文] TMS320F28P650DK:eCAP1 中断在 TMS320F28P650DK9NMR 上不触发–通过输入 XBAR 进行外部脉冲捕获

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1600255/tms320f28p650dk-ecap1-interrupt-not-triggering-on-tms320f28p650dk9nmr-external-pulse-capture-via-input-xbar

器件型号: TMS320F28P650DK

尊敬的 TI 团队:

我们目前正在使用 TMS320F28P650DK9NMR 器件上的 eCAP 模块、感谢您对我们配置的支持、因为我们因这个问题而陷入了开发周期的中间。

硬件/软件详细信息

器件:TMS320F28P650DK9NMR

IDE:Code Composer Studio

eCAP 实例:eCAP1(用于初始功能验证)

输入信号:外部脉冲信号 (2.5 Hz 至 91.7 Hz)

使用的 GPIO:GPIO14

路由:GPIO14→输入 XBAR→eCAP1

配置级别:寄存器级配置

最终要求:
在最终设计中、将使用 HREC eCAP6 和 eCAP7 捕获外部传感器信号 (2.5Hz 至 91.7Hz)。
目前、我们正在使用 eCAP1 验证基本 eCAP 功能、然后再迁移到 HREC eCAP 模块。

目标:

我们将在捕获模式下配置 eCAP1、以便测量:

信号周期

占空比

eCAP 模块配置为连续模式、在捕获事件 4 (CAP4) 时时间戳计数器复位。

预期行为:

eCAP1 检测外部脉冲信号上的上升/下降沿

正确捕获寄存器 CAP1–CAP4 更新

CEVT4 中断在第 4 个捕获事件后触发

ISR (eCAP1_ISR) 被连续执行

观察到的实际行为:

eCAP1 中断不会被触发

从不进入 ISR(使用断点确认)

CAP1–CAP4 寄存器不更新

使用示波器验证 GPIO14 上的外部脉冲信号

其他意见:

从外部确认 GPIO14 切换和信号完整性

PIE、CPU 中断和矢量表配置显示正确

ISR 内的断点永远不会被命中、确认没有发生中断

支持请求:

请帮助我们验证以下内容:

GPIO14 配置和输入 XBAR 路由

eCAP1 寄存器配置(捕获模式,连续模式,CAP4 复位)

中断使能和 PIE 映射

激活 eCAP 捕捉或中断所需的任何步骤缺失

是否存在任何配置偏差或缺少初始化可能会阻止 eCAP 模块在此设置中检测边沿或生成 CEVT4 中断?

代码参考

我们在随附的文本文件中附加了完整的配置和接口详细信息(GPIO、输入 XBAR、eCAP 和 ISR 代码)、以供您查看。

这个问题目前阻碍了进一步的发展,你们的及时指导将极大地帮助我们向前迈进。

感谢您的支持。

eCap1_Capture_mode.txt 

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

    您好、

    对延迟响应表示歉意。 您是否可以尝试使用 SDK 中的 eCAP_ex2_capture_pwm 示例? 我尝试使用您共享的 ECAP 配置、但无法 重现问题。

    此致、

    Meghavi