• AVR Freaks

DSPIC33EP128GM306 analog input channel value dependent from other channels

Author
delmat
Starting Member
  • Total Posts : 31
  • Reward points : 0
  • Joined: 2018/08/01 09:53:05
  • Location: 0
  • Status: offline
2020/01/13 04:24:43 (permalink)
0

DSPIC33EP128GM306 analog input channel value dependent from other channels

Dear All,
 
In one of my applications I need to read several analog inputs. Since 12bits are enough for me, I've decided to use directly DSPIC's analog input pins. 
For every analogue input pin there is a buffer with a serier resistance of 120 Ohm.
I've noticed that some input channels changes if I change other channels voltage.
For example, I've a fixed input voltage in channel 3 which converted is 1200 (on 4096 total bits). If I change voltage on channel 2 from 0 bits to 4096 the value on channel 3 changes to 1240. there is a dependace o almost 1% from a channel to another.
 
I don't notice this dependance to all of the channels, it depends from channel to channel.
 
Has everybody ever noticed this problem?
 
Thank you in advance,
 
Mattia
#1

4 Replies Related Threads

    ric
    Super Member
    • Total Posts : 25101
    • Reward points : 0
    • Joined: 2003/11/07 12:41:26
    • Location: Australia, Melbourne
    • Status: online
    Re: DSPIC33EP128GM306 analog input channel value dependent from other channels 2020/01/13 04:35:01 (permalink)
    0
    This is usually due to insufficient acquisition time in the ADC after selecting a new channel, but you have not mentioned any details like which channels you are using, or which ones are affected, or shown any of your code.
     
    When you say "channel 1" or "channel 2", are you referring to the channel numbers inside the PIC, or just your own names for the inputs?
     
    post edited by ric - 2020/01/13 04:36:51

    I also post at: PicForum
    Links to useful PIC information: http://picforum.ric323.co...opic.php?f=59&t=15
    NEW USERS: Posting images, links and code - workaround for restrictions.
    To get a useful answer, always state which PIC you are using!
    #2
    du00000001
    Just Some Member
    • Total Posts : 3310
    • Reward points : 0
    • Joined: 2016/05/03 13:52:42
    • Location: Germany
    • Status: offline
    Re: DSPIC33EP128GM306 analog input channel value dependent from other channels 2020/01/13 05:38:38 (permalink)
    5 (1)
    Now let me guess:

    For every analogue input pin there is a buffer . . .

     
    You're using dual, quad or n-fold buffers ?  And the "crosstalk" is mainly between channels that share the same buffer chip ?
    If you're a pro, you may now start suspecting what's happening. If not:these inputs all tend to somewhat "shift" the die potential - resulting in varying offsets, thus "crosstalk".
    Provided you need precision measurements: use (per chip) single buffers!
    Or learn to ignore(cope with this crosstalk. Depends on the application . . .

    PEBKAC / EBKAC / POBCAK / PICNIC (eventually see en.wikipedia.org)
    #3
    delmat
    Starting Member
    • Total Posts : 31
    • Reward points : 0
    • Joined: 2018/08/01 09:53:05
    • Location: 0
    • Status: offline
    Re: DSPIC33EP128GM306 analog input channel value dependent from other channels 2020/01/13 06:07:40 (permalink)
    0
    Dear ric and du00000001,
     
    thank you very much for your answers. I really appreciate.
     
     
    Answer for ric:
     
    I'm using 14 analogue inputs but the worst influence is between pin related to AN9 and AN10. When I change from 0 to full scale channel 9, channel 10 varies of 40 point (almost 1%). I'm gonna try to reduce the sample rate and see what happens.
    Anyway, I'm noticing this kind of interference between other channels but not so great.
     
     
    Answer for du00000001:
     
    I'm using quad-buffers, 4 opamps in the same IC. Do you think that interference can exist even with DC input signals?
    I though that crosstalk problems exists with AC signals.
     
    Thank you and best regards,
     
     
    Mattia
    #4
    du00000001
    Just Some Member
    • Total Posts : 3310
    • Reward points : 0
    • Joined: 2016/05/03 13:52:42
    • Location: Germany
    • Status: offline
    Re: DSPIC33EP128GM306 analog input channel value dependent from other channels 2020/01/13 07:36:16 (permalink)
    0
    delmat
    Do you think that interference can exist even with DC input signals?

     
    Yep! While the term "crosstalk" is classically used for AC signal crosstalk, I consider it appropriate to use the very same term for this "DC crosstalk" caused by the die DC level drift.
     
    You can evaluate this effect:
    1. Set 3 of your 4 inputs to the same potential, starting with a near-zero voltage.
    2. Now vary and measure the 4th input (e.g. 0, mid-range, max)
    3. Back to step 1, now with some mid-range voltage. Repeat step 2.
    4. And the same with a voltage near the max for inputs 1-3. Repeat step 2.
    I expect that you will find out that the measured values for the 4th input depends to some extend on the voltage for the other 3 inputs.
    While the above does not replicate the exact effect you're experiencing, it is a good starter to show that the inputs on the same die affect each other. (Somewhat easier to show on a dual buffer, but existing on the quad buffer as well.)
     
    The only way to "avoid" that: not using n-fold buffers.

    PEBKAC / EBKAC / POBCAK / PICNIC (eventually see en.wikipedia.org)
    #5
    Jump to:
    © 2020 APG vNext Commercial Version 4.5