我在配置EVADC的时候,在我使用软件触发的时候,如:
IfxEvadc_Adc_startQueue( adcGroup[3], IfxEvadc_RequestSource_queue0);
IfxEvadc_Adc_startQueue( adcGroup[3], IfxEvadc_RequestSource_queue1);
只有Queue0能够正常的进行转换,经过查阅手册发现是GxQxRx.EXTR 为0导致队列选用Refill之后不需要软件触发就能自己转换,但是我将它设置为1以后,调用一次
IfxEvadc_Adc_startQueue( adcGroup[3],
IfxEvadc_RequestSource_queue0);以后就会GxQxRx.EXTR自动变为0,导致无法使用同一个EVADC组的多个Queue来转换通道,而且使采样软件触发不可控,请问一下这种情况应该如何解决呢
共2条
1/1 1 跳转至页
EVADC多个Queue采样无法实现怎么解决?
关键词: EVADC Queue 采样
2楼
根据手册的说明,当GxQxRx.EXTR设置为0时,队列在完成转换之后将自动进行Refill,这意味着它不需要软件触发进行转换。当您将其设置为1时,它会自动变为0,因此无法再次使用软件触发。
为了解决这个问题,您可以尝试以下方法:
1. 使用不同的EVADC组:如果您的应用程序需要同时转换多个通道,并且无法使用多个Queue来实现,您可以考虑使用不同的EVADC组。每个EVADC组都有自己独立的Queue和相关寄存器,因此您可以使用多个EVADC组来同时进行转换。
2.
使用软件触发模式:如果您必须使用相同的EVADC组,并且需要多个Queue进行转换通道,您可以考虑使用软件触发模式。在软件触发模式下,您可以手动控制每个队列何时开始转换。使用IfxEvadc_Adc_startQueue函数启动每个队列的转换,确保在开始一个队列之前等待前一个队列的转换完成。
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动——B站互动赢积分】活动开启啦! | |
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |