Skip to main content
Arduino

Return to Revisions

2 of 2
+ answer comment.
Edgar Bonet
  • 45.1k
  • 4
  • 42
  • 81

With the default prescaler of 128, the maximum sample rate is 9615 samples/s (16 MHz/128/13). It can be achieved by setting the ADC to "free running mode". Running analogRead() in a tight loop, the maximum rate is 8929 S/s (16 MHz/128/14). As there is only one ADC, this is the total rate for all inputs being sampled.

is there a way to disable muxing and select which one input is active

The MUX is a physical device that sits between the inputs and the ADC. You cannot physically remove it. What do you mean by "disable"? You can, of course, keep the channel selection constant.

I assumed that the muxer looks at each input in turn, but it may be that if I only ever read from channel 0, then the mux will never select another channel?

Indeed. You can think of the MUX as a 1P11T (one pole, eleven throw) switch. Each time you change the MUX setting, it moves to a different channel. If you don't change its setting, it doesn't move.

1 pole, n throw switch

Edgar Bonet
  • 45.1k
  • 4
  • 42
  • 81

AltStyle によって変換されたページ (->オリジナル) /