Best way to get more analog inputs


I need more analog inputs on my Arduino Ethernet board.

What would be the best way to do this? I've read something about multiplexing?
Or is it possible to have an ADC and the just use a digital input instead?

Also if anyone have a working tutorial as example I would be very grateful :slight_smile:

  1. Use an analog switch chip(s)/analog multipexer chip(s). For example, the MAX4617 an 8:1 analog switch.

  2. Yes, use an ADC(s) with I2C or SPI interfaces. An example would be this chip MCP3208
    12-bit ADC, octal part, SPI interface. Connect up as many as you need, common SCK/MOSI/MISO connections, need a unique slave seelct per device.

I have one on a board now, got some basic code written, will be testing soon.

  1. Have you looked in the Playground section yet? I bet you will find an example there.

I'd agree with the 3208 - its available in DIP and surface mount, and works at 3.3V as well as 5.0V, and gives 12 bits and is faster than built-in ADC. (You do need to use 4 pins, but 3 can be shared with other SPI bus devices).

Analog multiplexing chip might be a little cheaper though (still needs some digital pins to address it though, which would be harder to share with other devices?).