Podłączanie więcej niż sześciu pinów wejścia analogowego do arduino

14

Jestem na etapie planowania projektu wykorzystującego Arduino Uno do sterowania 8 czujnikami odległości i wpadłem na mały blok drogowy, Uno ma tylko sześć pinów wejściowych. Zastanawiam się więc, czy jest na to jakiś sposób? Jeśli tak to jak?

Dylan Katz
źródło

Odpowiedzi:

12

Jest na to więcej niż jeden sposób ( TMTOWTDI ).

Istnieje kilka sposobów podłączenia 8 wejść analogowych do Arduino.

  • Dodaj multiplekser analogowy, zgodnie z sugestią George'a Brindeiro. Takich jak: (a) , (b) , (c) , (d) itp.
  • Wymień Arduino na takie, które ma już dość wbudowanych wejść analogowych. Takich jak Arduino Mini z 8 wejściami analogowymi, Arduino Due z 12 wejściami analogowymi (b) , (a) Arduino Mega z 16 wejściami analogowymi (b) , Teensy 3.0 z 14 wejściami analogowymi (c) itp.
  • Dodaj jeden lub więcej zewnętrznych ADC i podłącz go do cyfrowych pinów twojego procesora. Takich jak: Arduino 4-20mA Shield z 16-bitowym ADC (a) ; ADS1115 16-bitowy ADC - przy 4 z tych płyt 2 piny cyfrowe z Arduino służą do odczytu 16 wejść analogowych (b) ; MCP3208, 8 kanałów, 12 bitów SPI ADC (c) ; 8-kanałowa 16-bitowa karta analogowa Raspi (d) ; Arduino i 24-bitowy ADC LTC2440 (e) (f) ; „Cegła” 8 pojedynczych zakończeń 16 bitowych wejść analogowych (g) ; itp.

ps: Multipleksowanie wejść analogowych wymaga „multipleksera analogowego” - większość multiplekserów to „multipleksery cyfrowe”, które nie będą działać z wejściami analogowymi.

pps: wszystkie ultradźwiękowe czujniki odległości, których użyłem, wymagają tylko cyfrowych styków we / wy. Jakiego rodzaju czujników odległości używasz?

David Cary
źródło
Oczywiście! masz rację, potrzebują tylko I / O, dzięki!
Dylan Katz
5

Ilekroć masz więcej sygnałów niż odpowiednich wejść w systemie cyfrowym, prawdopodobnie potrzebujesz multipleksera lub po prostu multipleksera. Multiplekser M-to-N to obwód, który pozwala wybrać, który z M sygnałów wejściowych chcesz wyprowadzić na N wyjść multipleksera, zwykle za pomocą pinów cyfrowych, aby dokonać tego wyboru.

Szybko googlując, znalazłem to rozwiązanie dla Arduino Uno: Mux Shield . Mam nadzieję, że to pomaga!

georgebrindeiro
źródło