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.

[参考译文] RTOS/LAUNCHXL-CC2640R2:ADC 配置故障

Guru**** 2582405 points


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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/593170/rtos-launchxl-cc2640r2-adc-config-troubles

器件型号:LAUNCHXL-CC2640R2

工具/软件:TI-RTOS

大家好、  

我在我的产品 XL-CC2640R2F 上使用 ADC 时遇到一些问题。  

我想测量大约为1.65V 的信号。 测量它的最佳配置是什么?  

当我说“配置”时,我的意思是:  

.adcDIO = CC2640R2_LAUNCHXL_DIO25_ANALOG、
.adcCompBInput = ADC_COMPB_IN_AUXIO5、
refSource = ADCCC26XX_fixed_reference 或 ADCCC26XX_VDDS_reference、???
.samplingDuration = ADCCC26XX_SAMPLING_DURAY_2P7_US、
.inputScalingEnabled = true 或 false,???
triggerSource = ADCCC26XX_TRIGGER_MANUAL、
返回可调节值= 0

非常感谢。  

Julie。  

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

    我建议使用固定基准并启用输入缩放功能。

    启用输入调节时、固定基准看起来像4.2V、而禁用时、它看起来像1.44V。 因此、如果使用基准、您将被迫启用缩放。 如果不详细了解您的应用、就很难推荐其他任何东西-这也是最安全的选择

    如需更多信息-请查阅技术参考手册。 特别是有关带有数字和模拟外设的 AUX 传感器控制器的章节。 在这里、您将找到一个有关 ADC 的部分、其中将详细介绍它的特性。

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

    非常感谢您的帮助、您的回答非常清楚。 实际上、我仍然得到错误的 ADC 值、但至少我知道它不是来自 ADC 基准和标度。

    我现在假设我的错误 ADC 值来自不适当的 PIN 配置。
    问题是我需要在程序中多次更改其中一个引脚的 PIN 配置。 按照 CONFIG、我是说我需要将 PIN 从数字更改为模拟、将模拟更改为数字、并将数字值(0更改为1、1更改为0)。 当引脚设置为模拟时、必须完成 ADC 测量。 但是、我无法获得良好的值。 要使用的正确配置是什么? 我使用了以下方法:

    在配置表中:
    BOARD_DIO26_ANALOG | PIN_GPIO_OUTP_EN | PIN_GPIO_LOW | PIN_PushPull、
    BOARD_DIO28_ANALOG | PIN_GPIO_OUTP_EN | PIN_GPIO_LOW | PIN_PushPull、
    我假设在这些设置之后、引脚 DIO 26和 DIO 28以数字方式设置、值为 à 0。

    然后:
    PIN_setOutputValue (PIN、Board_DIO28_ANALOG、1);
    PIN_setOutputValue (PIN、Board_DIO26_ANALOG、1);
    我认为这些命令将其值更改为1。


    要将 DIO 26更改为模拟输入,然后执行 ADC 测量,我写了:
    PIN_setConfig (PIN、PIN_BM_OUTPUT 模式、Board_DIO26_ANALOG | PIN_GPIO_OUTPUT DIS | PIN_PushPull);
    PIN_setConfig (PIN、PIN_BM_INPUT_MODE、Board_DIO26_ANALOG | PIN_INPUT_EN | PIN_PushPull);

    为了将 DIO 26从模拟设置更改为数字设置为0,我写道:
    PIN_setConfig (PIN、PIN_BM_OUTPUT 模式、Board_DIO26_ANALOG | PIN_GPIO_OUTPUT _EN | PIN_GPIO_LOW | PIN_PushPull);
    PIN_setConfig (PIN、PIN_BM_INPUT_MODE、Board_DIO26_ANALOG | PIN_INPUT_DIS | PIN_PushPull);

    据我所知、如果在进行 ADC 测量之后执行这些命令、则不适用。 我甚至不知道他们是否真的做了我认为他们做的事情。 我已经用示波器查看了引脚信号、但没有检测到任何看起来有问题的东西。

    请帮帮我。

    非常感谢、

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

    我没有亲自试用过您的代码-也许您可以看看 ADC 驱动程序是如何实现的: \source\ti\drivers\adc

    或者实际上、您是否尝试使用 ADC 驱动程序? 它应该消除您的烦恼!

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

    是的、我使用了 ADC 驱动程序、这就是我不理解它为什么不起作用的原因。 要使用此驱动程序并执行 ADC 测量,它会提示 PIN 必须在 conf 中:input/outut/pull disabled (禁用输入/outut/pull)。 我设置了它、但它仍然不起作用。 问题是:我是否设置得很好,我是否使用了正确的命令? (以上)

    再次感谢、
    此致、

    Julie。