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.

[参考译文] MSPM0G1507:使用具有多个 ADC 通道的 DMA 时、ADC 数据结果错误

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1456536/mspm0g1507-adc-data-result-is-wrong-when-using-dma-with-multiple-adc-channels

器件型号:MSPM0G1507
主题中讨论的其他器件:MSPM0G3507SysConfig

工具与软件:

尊敬的 Expert:

我在 SDK 2.2.0.5中使用示例工程"adc12_max_freq_dma_lp_MSPM0G3507_nortos_ticlang"。

我将 ADC 通道从1个更改为8个通道。 我 将一个通道连接到3.3V、将其他通道连接到地。 因此、我可以知道 ADC 结果是否正确。

我发现 ADC 数据"gADCSAMPLES "有时是错误的。 具有3.3V 通道的 ADC 结果会"移位"到其他 ADC 结果。 DMA 似乎没有正确地将数据移动到数据中。

下面是我更改的内容。

在代码中、我将样本大小从1024更改为8。

#define ADC_SAMPLE_SIZE (8)

在 SysConfig 中、我更改了以下内容、但启用 ADC 通道除外。

e2e.ti.com/.../adc12_5F00_max_5F00_freq_5F00_dma.syscfge2e.ti.com/.../adc12_5F00_max_5F00_freq_5F00_dma.c

我错了吗?

BR、

Frank

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

    您好、Frank、
    您能否确认您正在对通道0进行采样、通道0由3.3V 供电、而其他通道由地供电? 如果是这种情况、我建议先尝试原始示例(使用 SysConfig 和 main 文件中的默认值)、并检查是否可行。 如果是、我建议将 Conversion End Address 从7更改为10、并将 MEM7更改为 MEM10。 此外、请考虑 用户指南中12.2.12.3 DMA 和 FIFO 操作一节的说明

    此致、

    Diego Abad