A quick look at two ADC types - flash ADCs and successive approximation ADCs. Here I briefly explain how both types work and why the latter type (the type used in Arduino) is so much slower.

By Julian

Youtuber, shed dweller, solar charge controller aficionado

13 thoughts on “Julian explains: how arduino a/d converters work”
  1. Avataaar/Circle Created with python_avatars Yusuf Bozkurt says:

    Hello sir ! First of all you are just amazing explainer. But my question is is this thing simply voltage divider right ? its fundamental work as voltage divider ?

  2. Avataaar/Circle Created with python_avatars JJ74Q Formerly Jailbreak says:

    Thatโ€™s a great explanation of DAC clock cycles.
    I love controlling time.
    Cheerio. God Bless.

  3. Avataaar/Circle Created with python_avatars Craig says:

    very nice explanation, but I still don't get it :/

  4. Avataaar/Circle Created with python_avatars Mac_UK says:

    I read somewhere that you can somehow couple 2 of the ADC on the Arduino, together, to make a higher bit ADC. Is this possible & how?.

  5. Avataaar/Circle Created with python_avatars Sean Ocansey says:

    Then why doesn't the atmega328p have a 10 bit DAC! ๐Ÿ˜ฉ

  6. Avataaar/Circle Created with python_avatars RSuarez66 says:

    How can I do an analog data logger kust reading voltages, and sending them to an SD Card shield?

  7. Avataaar/Circle Created with python_avatars PacoOtaktay says:

    Loving your Arduino videos. ๐Ÿ™‚ Keep up the good work ๐Ÿ™‚

  8. Avataaar/Circle Created with python_avatars Richard Boyce says:

    Excellent explanation Julian, makes you appreciate what we did in the 70's & 80's. cheers

  9. Avataaar/Circle Created with python_avatars TheUnnamedGent says:

    Are you familiar with the output of hobby radio control receivers? I guess it's a 5V, 50hz PWM signal with a duty cycle which ranges from 5-10%. Do you think it would be possible to use arduino's adc system to digitise this signal? Or should I just write/find a system which does it purely digitally in software? In my application, latency isn't really an issue (0.5 seconds would probably be acceptable), but I would be interested to know how to do it "properly", for possible future latency sensitive projects.

    Maybe I should look in to how multirotor flight controllers do it. Because they must do it, right?

    I'm quite good at programming, but my knowledge of real electronics is sadly lacking. Which I guess indicates a software/firmware solution.

  10. Avataaar/Circle Created with python_avatars Pozzitivve Monkkee says:

    Is it just me or does the 2 bit converter logic fail when the two lowerย comparators are high?

  11. Avataaar/Circle Created with python_avatars Mat Smith says:

    This is absolutely brilliant!

  12. Avataaar/Circle Created with python_avatars joohop says:

    good work man

  13. Avataaar/Circle Created with python_avatars stustjohn says:

    Fab video, Julian! (As they usually are!) I never realised just how much is involved in getting an analogue sample. I'm sure if I had looked at the various manual pages you showed us in the video I would have been none the wiser, but somehow after your explanation I feel like I really have a clear idea of what's going on! (Until I go to bed, that is. Tomorrow morning my electronics knowledge will be wiped almost clean again – but that's just me getting old, I s'pose…)

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.