单片机/MCU论坛
直播中

卢表镜

7年用户 1007经验值
私信 关注

TC334 ADC采样25us采不到的问题怎么解决?

Hi infineon‘s friends: 我先描述一下现象:
1、将ADC 的队列0添加一个通道:可以采到(周期 一次为0,一次为4095)
2、将ADC 的队列0添加两个通道:采到的值一直为 0 / 一直为 4095
3、将ADC 的队列0添加一个通道,
将ADC 的队列1添加另一个通道:
只有通道优先级较高的通道可以采到(周期 一次为0,一次为4095)
通道优先级较低的通道采到的值一直为 0 / 一直为 4095
我想问出现这个现象的原因可能是什么?
在向队列中添加通道后,通道之前是否会相互影响?
单通道没问题,但是多通道不行的,我这边和同事一起测了很多次,会有什么设置影响这个吗?

下图是我们需要实现的采样逻辑


                                                                                                                                                                                                                                                                                                                                                                                                

回帖(1)

王璐

2024-1-26 17:12:04
可能出现这个现象的原因有几种可能性:

1. 延迟问题:当你向队列中添加更多的通道时,ADC采样的总时间会增加,可能导致较高优先级的通道已经完成采样,而较低优先级的通道尚未开始采样。这可能是原因2和3中出现一直为0或一直为4095的情况。

2. 资源竞争:当你向队列中添加更多的通道时,可能会出现通道之间的资源竞争。例如,如果两个通道同时需要访问某些共享资源,可能导致其中一个通道无法获取所需的资源,从而导致采样不成功。这可能是原因3中出现通道优先级较低的通道一直为0或一直为4095的情况。

3. 配置问题:可能存在一些配置问题,例如通道之间的优先级设置不正确,或者某些通道的配置参数不正确,导致采样失败。这可能是原因2和3中出现的问题。

解决这个问题的方法可能包括:

1. 调整ADC采样的时间间隔,确保所有通道都有足够的时间进行采样。

2. 确保没有资源竞争的问题,可以通过分析和排查通道之间可能的资源竞争点,例如共享寄存器或内存区域。

3. 检查和确认通道的配置参数是否正确,包括优先级设置和其他相关参数。

4. 确保ADC模块的配置和初始化操作正确无误,可以参考官方文档和资料进行核对。

另外,如果你使用的是具体的ADC芯片,建议查阅该芯片的数据手册,了解更多详细的配置和使用注意事项。同时,与提供技术支持的厂家或社区互动,获取更专业的帮助。
举报

更多回帖

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