单片机/MCU论坛
直播中

任凭风吹

9年用户 997经验值
擅长:可编程逻辑 电源/新能源 MEMS/传感技术 制造/封装 模拟技术
私信 关注
[问答]

XMC4700是否有可能启用在CCU4X_Y引脚检测到上升/下降沿时产生的中断?

使用 MTB 我目前正在研究 XMC4700,需要测量输入 PWM。
我发现https://github.com/Infineon/mtb-example-xmc-ccu4-capture但本示例使用的是忙等待系统,是否有可能启用在 CCU4X_Y 引脚检测到上升/下降沿时产生的中断?
例如 我的配置与https://github.com/Infineon/mtb-example-xmc-ccu4-capture相同 我也尝试过(但不成功):
/* Set NVIC priority */NVIC_SetPriority(CCU42_2_IRQn, 60U);/* Enable IRQ */NVIC_EnableIRQ(CCU42_2_IRQn);XMC_CCU4_SLICE_SetinterruptNode(ccu4_2_ch_2_HW, XMC_CCU4_SLICE_IRQ_ID_COMPARE_MATCH_UP, XMC_CCU4_SLICE_SR_ID_2);XMC_CCU4_SLICE_StartTimer(ccu4_2_ch_2_HW);void CCU42_2_IRQHandler(void){  XMC_CCU4_SLICE_ClearEvent(ccu4_2_ch_2_HW, XMC_CCU4_SLICE_IRQ_ID_COMPARE_MATCH_UP);  XMC_GPIO_ToggleOutput(XMC_GPIO_PORT5, 9);}我希望实现类似https://github.com/Infineon/mtb-example-xmc-eru-extint但使用 CCU4/8。 我不确定这是否可行,但在老一代 MCU XE167FM 上,这是一种标准做法,所以我希望有办法。


回帖(1)

1652711011.026500

2024-3-5 14:40:50
根据XMC4700器件参考手册,XMC4700系列具有用于中断的CCU4X_Y引脚。在CCU40-43_CH2通道配置中,CCU40_2和CCU43_2共享一个引脚,并且在引脚上检测到上升/下降沿时可以产生中断。

但是,根据您提供的代码片段,您似乎配置了CCU42的中断,而不是CCU42_2的中断。请确保您正确配置了CCU42_2通道,并从正确的IRQ号码和中断节点启用中断。

如果您的配置与示例代码相同,并正确配置了中断,但中断仍未生效,请确保您的硬件连接正常。您需要根据您的硬件和应用程序要求适当的配置引脚和中断。

另外,请注意示例代码中的忙等待系统是用于PWM输入捕获功能的基本示例。为了使用中断,您可能需要结合中断服务函数和状态标志来实现此功能。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分