Я розглядаю варіанти ADC на Rasbperry Pi. Мені цікаво, що можливо поки що. Звичайно легко і дешево - це добре.
Я розглядаю варіанти ADC на Rasbperry Pi. Мені цікаво, що можливо поки що. Звичайно легко і дешево - це добре.
Відповіді:
Adafruit має чудовий посібник із використання MCP3008 ($ 3,75) - 8-канальний 10-розрядний АЦП із інтерфейсом SPI для управління гучністю mp3-файлу, але це повинно дати вам гарну вихідну точку для будь-якого аналогового цифрового проекту.
ADS1113, ADS1114 та ADS1115 - це прецизійні аналого-цифрові перетворювачі (АЦП) з 16 бітами роздільної здатності, пропоновані у надмалому, безвідвинному пакеті QFN-10 або пакеті MSOP-10. ADS1113 / 4/5 розроблені з урахуванням точності, потужності та простоти в застосуванні. У ADS1113 / 4/5 є вбудована система відліку та осцилятор. Дані передаються через ІСС-сумісний послідовний інтерфейс; можуть бути обрані чотири ІВС підлеглих адреси. ADS1113 / 4/5 працюють від одного джерела живлення від 2 до 5 В.
Спочатку потрібно переконатися, що модулі I²C завантажені . Далі підключіть ADS1115, як показано нижче. Можливі 4 різні адреси залежно від того, до якого підключеного контактного ADDR. Це означає, що ви можете підключити до однієї шини I²C загалом 16 каналів.
GND = 0x48, VDD = 0x49, SDA = 0x4A, SCL = 0X4B
Ви можете бачити такий результат останньої конверсії
# i2cget -y 0 0x49 0 w
0x0000
Сюди повертається за замовчуванням 0x0000, оскільки ще не здійснено перетворень. Тепер давайте подивимось у конфігурацію конфігурації
# i2cget -y 0 0x49 1 w
0x8385
LSB є першим, тому це рівнозначно 0b1000010110000011
Я хотів би зробити одночасне перетворення на AIN0, тому мені потрібно записати біти [14:12] як 0b100
. тобто0b1100010110000011
# i2cset -y 0 0x49 1 0xC385 w
# i2cget -y 0 0x49 0 w
0xa30b
LSB є першим, тому це дорівнює 2979 десятків
Ну а поки бажане використання не вимагає надвисоких бітрейтів або роздільної здатності, ви, ймовірно, можете просто використовувати Arduino. Arduinos приємний тим, що вони мають величезну спільноту для підтримки, вони вже деякий час, а спілкування через USB немає GPIO!
Ось посилання на допис у блозі Саймона Монка з інструкціями про те, як він спілкується з Arduino з Raspberry Pi з python.
Також на всякий випадок, якщо ви ніколи раніше не чули про Arduino (можливо, ви жили під скелею), ось посилання на сторінку «Введення» та приклад для аналогових входів для початківців .
Через місяць-два (через доставку до Африки) я отримаю плату I2C PCF8591, яка має підтримку wiringpi на сайті WiringPi, і плата використовує 3,3 В (як правило) я отримав версію WaveShare на посилання Amazon Amazon З того, що я я читаю, PCF8591 дуже приємно, але поки я насправді не маю дошки перед собою, я не можу сказати, добре це чи ні
Цікаве рішення тут: http://www.theremino.com/en/blog/standalone-applications/#raspberry
Не тільки АЦП, але будь-який тип настроюваного вхідного виходу для Raspberry Pi.