Frage:
Effizienter Weg, um mehrere analoge Spannungen aus einem Arduino herauszuholen?
JackDamery
2013-04-15 20:09:09 UTC
view on stackexchange narkive permalink

Ich habe in meiner Forschung gelesen, dass die meisten Mikrocontroller nicht mit DAC-Ausgängen gebaut sind, da die Aufnahme in Siliziumchips teuer ist. Auch Anwendungen, die analoge Ausgänge erfordern, benötigen normalerweise eine höhere Auflösung als auf einem Mikrocontroller möglich und würden wahrscheinlich sowieso einen dedizierten IC verwenden.

Ich plane, einen analogen Synthesizer mit Patch-Speicher (Speicherung und Abruf von Spannung) zu bauen Zustände). Anscheinend funktionierten diese durch Einlesen der Spannung eines analogen Potentiometers in einen Mikrocontroller und Anlegen einer Steuerspannung an den Synthesizer unter Verwendung eines DAC. Dieser Zustand könnte dann gespeichert und als 'Voreinstellungen' abgerufen werden.


Ich möchte einen geeigneten Weg kennen, um mehrere analoge Ausgänge von einem Arduino zu einer Schaltung zu steuern. Die analogen Ausgänge in den meisten (wenn nicht allen) Arduino-Karten sind tatsächlich PWM, und ich möchte ein echtes analoges Signal ausgeben.

Was meinst du in deinem letzten Satz mit "Kontrolle"? Der Arduino bietet Ihnen 6 analoge Ausgänge sowie einige weitere Digital-PWM-Ausgänge. (Alle von ihnen sind tatsächlich PWM). Fragen Sie nach einem "echten" Analogausgang?
@MarkBooth: hm, wusste nicht, dass es BrE war. Nach meiner Erfahrung bedeutet "analog" nur "etwas, das eine Analogie zu etwas anderem aufweist". Aber du hast recht, na ja.
Wie auch immer, kein Schaden bei der Bearbeitung, da es an erster Stelle ganz oben stand. Außerdem habe ich jetzt einen Retag gemacht :)
@JackDamery: dachte so (was ich mit "wahrem" Analogon meinte). Ich werde das bearbeiten, um es zu klären :)
@Manishearth - War es wirklich notwendig, das britische englische Analogon zum amerikanischen englischen Analog zu * korrigieren *?
@Manishearth - Der Arduino Uno bietet keine analogen Ausgänge, sondern nur PWM, die auf eine Gleichspannung heruntergefiltert werden können. Die "Steuerung" bezieht sich auf die Notwendigkeit, dass der Arduino mehrere analoge Spannungen an verschiedene Punkte im Synthesizer ausgibt.
Der Arduino Due ist der einzige, den ich kenne, der 2 analoge DACs an Bord enthält, einen echten 12-Bit-Analogausgang.
Einer antworten:
JamesC4S
2013-04-15 21:15:30 UTC
view on stackexchange narkive permalink

The Due ist das einzige Arduino-Board mit integriertem DAC. (Zwei davon.) Wenn Sie mehr als zwei Ausgänge benötigen oder eine Karte wie die Uno verwenden möchten, müssen Sie einen DAC erstellen.

Option 1: PWM Mit einem RC-Filter können Sie ein Tiefpassfilter erstellen, mit dem Sie echte analoge Spannungen aus einem PWM-Pin erzeugen können. Diese Methode kann je nach Impedanz der von Ihnen angesteuerten Schaltung schwierig zu kalibrieren sein oder nicht funktionieren.

Option 2: R-2R Die gebräuchlichste Methode ist eine R- 2R-Leiter, hier erklärt: http://en.wikipedia.org/wiki/Resistor_ladder

Option 3: DAC-Chip Der effizienteste, aber Am teuersten wäre die Verwendung eines externen DAC-Chips. Sie können eine auswählen, die speziell für die von Ihnen benötigten Spannungen entwickelt wurde, und möglicherweise eine mit mehreren Ausgängen finden. Unabhängig davon verfügen die meisten DAC-Chips über eine SPI- oder I2C-Schnittstelle, sodass Sie mehrere Chips mit einem einzigen Arduino verketten können.

Der Maxim MAX5214 ist ein Beispiel für einen hochauflösenden (14-Bit) DAC mit einem Ausgang und einem SPI Schnittstelle. http://www.maximintegrated.com/datasheet/index.mvp/id/7119

Seitdem habe ich die (ca. 1979) Idee entdeckt, die in Synthesizern verwendet wird, einen DAC zu verwenden und ihn auf mehrere Sample- und Hold-Zellen zu multiplexen.


Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 3.0-Lizenz, unter der er vertrieben wird.
Loading...