完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我使用的是 XMC4200。 我想使用 PWM_CCU8 应用程序生成 PWM 输出。
我还希望在测量电压过高时输出为低电平,因此在应用程序 ADC_MEASUREMENT_ADV 中使用了快速比较模式。 通道事件将连接到 INTERRUPT,在 ISR 中我调用了函数 XMC_GPIO_SetOutputLow。 但似乎存在冲突,PWM_CCU8 应用程序没有生成输出。 |
|
相关推荐
1个回答
|
|
是的,使用PWM_CCU8生成PWM输出和XMC_GPIO_SetOutputLow可能会发生冲突,因为它们可能共享相同的硬件资源。
XMC4200微控制器具有多个硬件PWM模块,称为CCU4模块。每个CCU4模块可以配置为生成多达两个独立的PWM输出。但是,每个CCU4模块还具有一个专用的硬件输入,称为通道输入,可用于触发PWM输出。 如果将PWM_CCU8应用程序配置为使用CCU4模块的通道输入,则在通道输入触发时,它将覆盖由PWM_CCU8应用程序生成的PWM输出。这可能会导致您在问题中描述的行为。 要解决此问题,您需要确保PWM_CCU8应用程序和ADC_MEASUREMENT_ADV应用程序不共享相同的硬件资源。一种方法是将PWM_CCU8应用程序配置为使用不同的CCU4模块或不同的通道输入。或者,您可以将ADC_MEASUREMENT_ADV应用程序配置为使用不同的中断或硬件资源,以避免与PWM_CCU8应用程序发生冲突。 此外,您可能需要检查PWM_CCU8应用程序和ADC_MEASUREMENT_ADV应用程序的配置和时序,以确保它们不会相互干扰。这可能涉及调整PWM频率、占空比或ADC采样率,以避免冲突。 总的来说,在设计嵌入式系统时,仔细管理硬件资源并避免冲突非常重要。这可能涉及仔细规划硬件和软件架构,并测试系统以确保其按预期运行。 |
|
|
|
只有小组成员才能发言,加入小组>>
TLE9879_BLDC电机启动需要用手拨一下才能转动,怎么解决?
5437 浏览 2 评论
4076 浏览 9 评论
请问TLE5012B_E1000 启动后为什么位置不能正确获取
3593 浏览 9 评论
1204 浏览 8 评论
3496 浏览 7 评论
412浏览 2评论
244浏览 2评论
353浏览 2评论
TLE9879_BLDC电机启动需要用手拨一下才能转动,怎么解决?
5442浏览 2评论
如果是打开已有的dave工程,怎么查看这个工程选择的mcu型号?
417浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-24 08:09 , Processed in 0.533868 second(s), Total 48, Slave 41 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号