Ich habe ein FRDM-KL25Z von Freescale. Mit diesem möchte ich Signale generieren (Werte aus einem Array lesen und am DAC ausgeben). Mit dem internen DA Wandler kann ich nur alle 1.3us (ca. 770kHz) einen neuen Wert ausgeben. Für einen Sinus von 100kHz brauche ich bei 10 Abtastpunkten pro Periode alle 1us (1MHz) einen neuen Wert. Kennt jemand eine Lösung z.B. mit einem externen DAC(vorzugsweise 2 Channels) über SPI oder parallel? Schlussendlich möchte ich Signale ausgeben die nicht peridisch sind, die Auflösung sollte min 8bit sein und die Ausgangsspannung ist egal(wird verstärkt).
Gast
#3578743
Ja, die einfachste, billigste und schnellste Lösung: http://de.wikipedia.org/wiki/R2R-Netzwerk
Gast
#3578788
Mit SPI Interface gäbe es z.B. MCP4802 / MCP4902. Mit parallelem Interface etwa die alten DAC0800 und ähnliche, oder AD7523 und verwandte (mx752..,TL752..).
Gast
#3578820
Wenn du wirklich schnell sein willst, dann mußt du das in Hardware machen, also entweder FPGA oder CPLD+schnelles RAM. W.S.
Gast
#3578828
Extern über die Serielle wirds schwer bei 1MHz, aber wenn du ein Widerstandsnetzwerk - wie vorticon erwähnte - benutzt, dann sollte das kein Problem sein mit einem AVR der mit Takt > 2MHz läuft. Es kommt natürlich drauf an, ob du eine Lookup-Table verwendest oder es "hard" codierst.
Gast
#3578837
Die µC Platine ist mit 48 MHz ARM (cortex M0) schon schnell genug. Mit Hardware SPI sollte es dann auch noch gehen 1 MHz auf einen externen DA Auszugeben - alternativ halt einer der parallelen D/A Wandler. Die R2R Kette geht so gerade so Bit 8 Bit, wenn man sich etwas anstrengt.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.