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.

[参考译文] 使用多个 ADC 通道时出现问题

Guru**** 2576795 points
Other Parts Discussed in Thread: CC2541

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/565326/problem-with-using-multiple-adc-channels

主题中讨论的其他器件:CC2541

你(们)好  

我想在 cc2541中使用两个 ADC 通道、并继续从这两个 ADC 通道读取数据。

但这两个结果有时会切换。

例如、

ValueOne = HalAdcRead (HAL_ADC_CHANNEL_3、HAL_ADC_Resolution_8);
valueTwo = HalAdcRead (HAL_ADC_CHANNEL、HAL_ADC_Resolution _14);

有时、"valueOne"成为通道5数据。  "valueTwo "成为通道3数据。  

这是因为在下一次转换之前 ADC 结果没有被清除吗?

谢谢、

显  

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

    如何多次设置这些参数? 您是否正在读取中断上的值? 当一个值错误时、另一个值是否也总是错误(它们是否同时获得了错误值)?

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

    感谢您的回复

    我设置一个事件、用于永远读取 ADC。

    就像这样

    if (events & ADC_EVT){

    读取 ADC1

    读取 ADC2

    返回(事件); //不要取消 ADC_EVT

    两种情况

    1.两个开关

    2.都正确

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

    我建议使用延迟来查看问题是否是 ADC 结果未及时清除。

    -弥敦