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.

CCS/CC2650: ADC Buffer Example

Part Number: CC2650


Tool/software: Code Composer Studio

Hello, I have problems related to the ADC Buffer Example provided by TI. I have my CC2650 LaunchPad and I am using CCS to run the ADC Buffer Example.

I use Putty to see the ADC output. 

Even if I do not connect any pins physically, Putty still shows some results as below:

I wonder how these values come because I do not connect any pins.

Besides, where can I change in the program in order to read analogue signals at certain pins? I know that DIO23-30 pins are used for ADC but I don't know how to modify the program to read the analogue signals at certain pins.

Any replies will be appreciated. Thanks in advance!

  • Since ADC pins on LAUNCHXL-CC2650 are left float, it's normal to see those value. If you look into source code of ADC buffer example, it calls "ADCBuf_open(Board_ADCBuf0, &adcBufParams);" to use Board_ADCBuf0 which is DIO_23. So, you can apply 0V to 3V to DIO_23 to test it.
  • I find there is something wrong on adcbufcontinuous example in TI RTOS for CC2650 2.21.00.06 on LAUNCHXL-CC2650 and raise another post to ask TI to verify it.

  • Thanks for your quick reply, actually, I tried the same as you. 

    I tried to connect GND to DIO23 (although I do not know which pin the program is referring to, I just test randomly), 

    I do not see any value in Putty that is close to 0.

    Anyway, thank you for raising another post and I am going to move to there for replies from TI.

    Thank you so much!!

  • If you trace the definitions:

    continuousConversion.adcChannel = Board_ADCBufChannel0;

    #define     Board_ADCBufChannel0    (0)

    This points to the first element in

    const ADCBufCC26XX_AdcChannelLutEntry ADCBufCC26XX_adcChannelLut[] = {
        {PIN_UNASSIGNED, ADC_COMPB_IN_VDDS},
        {PIN_UNASSIGNED, ADC_COMPB_IN_DCOUPL},
        {PIN_UNASSIGNED, ADC_COMPB_IN_VSS},
        {Board_DIO23_ANALOG, ADC_COMPB_IN_AUXIO7},
        {Board_DIO24_ANALOG, ADC_COMPB_IN_AUXIO6},
        {Board_DIO25_ANALOG, ADC_COMPB_IN_AUXIO5},
        {Board_DIO26_ANALOG, ADC_COMPB_IN_AUXIO4},
        {Board_DIO27_ANALOG, ADC_COMPB_IN_AUXIO3},
        {Board_DIO28_ANALOG, ADC_COMPB_IN_AUXIO2},
        {Board_DIO29_ANALOG, ADC_COMPB_IN_AUXIO1},
        {Board_DIO30_ANALOG, ADC_COMPB_IN_AUXIO0},
    };
    

    If you want to use DIO30, you can define something like this:

    continuousConversion.adcChannel = Board_ADCBufChannel10;

    #define     Board_ADCBufChannel10    (10)

    which will use the last element in the table.

    Also see

    e2e.ti.com/.../549849

  • Thanks for your reply and I will try later!

    I also want to know would it be possible to display the value in the console rather than in Putty?

    Thanks again in advance.
  • I change "#define Board_ADCBufChannel0 (0)" to "#define Board_ADCBufChannel0 (3)" to allow DIO_23 as ADC input and it works.
  • My board is also working now, thank you for all of the replies!