В своих исследованиях я читал, что большинство микроконтроллеров не имеют выходов ЦАП, поскольку их включение в кремниевые чипы дорого. Кроме того, приложения, которым требуются аналоговые выходы, обычно требуют более высокого разрешения, чем это возможно на микроконтроллере, и, вероятно, в любом случае будут использовать выделенную ИС.
Я планирую построить аналоговый синтезатор с патч-памятью (хранение и вызов состояний напряжения). По-видимому, они функционировали путем считывания напряжения аналогового потенциометра с микроконтроллера и подачи управляющего напряжения на синтезатор с помощью ЦАП. Затем это состояние можно было сохранить и вызвать как «предустановки».
Я хотел бы знать подходящий способ управления несколькими аналоговыми выходами в цепи от Arduino. Аналоговые выходы в большинстве (если не во всех) платах Arduino на самом деле являются ШИМ, и я хочу выводить настоящий аналоговый сигнал.
Due — единственная плата Arduino со встроенным ЦАП. (Два из них.) Если вам нужно более двух выходов или вы хотите использовать такую плату, как Uno, вам нужно подумать о создании ЦАП.
Вариант 1: ШИМ Используя RC-фильтр, вы можете создать фильтр нижних частот, который позволит вам создавать истинные аналоговые напряжения с вывода ШИМ. Этот метод может быть трудным для калибровки или может не работать в зависимости от импеданса цепи, которой вы управляете.
Вариант 2: R-2R Наиболее распространенный метод — это лестница R-2R, описание которой можно найти здесь: http://en.wikipedia.org/wiki/Resistor_ladder .
Вариант 3: микросхема ЦАП Наиболее эффективным, но и самым дорогим методом является использование внешней микросхемы ЦАП. Вы можете выбрать тот, который разработан специально для необходимых вам напряжений, и потенциально найти вариант с несколькими выходами. Несмотря на это, большинство микросхем ЦАП имеют интерфейс SPI или I2C, поэтому вы можете подключить несколько микросхем к одному Arduino.
Maxim MAX5214 является примером ЦАП высокого разрешения (14 бит) с одним выходом и интерфейсом SPI. http://www.maximintegrated.com/datasheet/index.mvp/id/7119
Манишерх
Марк Бут
Манишерх
Манишерх
бларг
Манишерх
Аниндо Гош