Gast
#114093
Servus Leute, hat jemand ne Idee wie man aus einer analogen Ausgangsspannung eine 128 bit digitale information hinbekommt? Uout hat eine Frequenz von ca 1MHz.
|
Anzeige
|
AD Wandlung von 128 Bits in 1ms
Gast
#114093
Servus Leute, hat jemand ne Idee wie man aus einer analogen Ausgangsspannung eine 128 bit digitale information hinbekommt? Uout hat eine Frequenz von ca 1MHz.
Gast
#114094
128 Bit ? Also wenn du das schaffst, kriegste ne Kiste Bier von mir! Es ist schon schwierig genug, mit 24Bit zu arbeiten. Aber schreib doch mal genaueres, vielleicht hab ich es ja falsch verstanden. Du willst ein analoges Signal abtasten bei ner Auflösung von 128Bit?
Gast
#114095
Ne Kiste Bier ist ein Bisschen wenig, ich würde eher sagen, der Nobelpreis winkt!
Gast
#114096
Würde man den einfachen Binärcode nehmen, dann entspräche das einer Auflösung von etwa 3 mal 10 hoch -39. Ich fürchte, da ist die Natur dagegen. Aber vielleicht war ja nur gemeint, irgendwie 128 Bit zu füllen? Mit entsprechender Redundanz geht das immer. Du mußt nur sagen, was alles in den Code mit rein soll, dann kann Dir vielleicht einer Helfen!
Gast
#114097
Wow 128bit, wofür braucht man eine Auflösung von ca.: 3400000000000000000000000000000000000000 ????
Gast
#114098
Vielleicht, um mit ner modifizierten SS20 ein Stecknadelkopf in unserer Nachbargalaxie zu treffen ?
Gast
#114099
Vielleicht sind ja nicht 128 Bit, sondern nur 128 Stufen gemeint, also effektiv 7 Bit !?
Gast
#114100
@Thorsten, @Inder, @alle anderen auch: Die Frage ist nicht wofür. Die Sache ist die, dass die Physikeinfach dagegen ist! Die Quantenphysik sowieso, aber die klassische auch: 1. Rauschen 2. Störeinfluß: Ich glaube, ohne nachzurechnen, behaupten zu können, dass der statisch nur mit wenigen Elektronen aufgeladen Flügel eines Schmetterling an der Nachbarhauswand, einen Störimpuls induziert wenn er sich bewegt, der über der Auflösungsgrenze liegt. Aber wozu das Gelaber, der Fragesteller hat bestimmt etwas anderes gemeint,... er muß einfach was anderes gemeint haben!
Gast
#114101
> Ich glaube, ohne nachzurechnen
Rechne es doch vielleicht gerade mal nach, würde mich sehr
interessieren. Ich kann es leider nicht :(
Gast
#114102
Na logisch wird er 128 Stufen gemeint haben, aber wo bleibt da der Spaß :-D
Gast
#114103
Na gut, ich ziehe meine Vermutung zurück, Ihr könnt sie als gegenstandslos betrachten. Schließlich ist ja heute Freitag :-)
Gast
#114104
@Thorsten kann ich grad' auch nicht mangels Zeit aber ich hol' es nach, wenn ich es nicht vergesse!
Gast
#114105
Leute, ich hab mich kaputt gelacht. Meine Frage war eigentlich so gemeint: Ein analoges Signal, ändert sich jede µsec, und das 128 mal hintereinander. Ich will diese 128 verschiedenen Werte nacheinander einfangen (Ein Feld mit 128 Werten). Dies schafft kein normaler AD Wandler, aber die DSP Controller schon. Und wie stehts, hat jemand mal so ebbes gemacht? Serdar
Gast
#114106
Hi. Ich hoffe du meinst mit DSP nicht einen Signal Prozessor! 1µs ist ja im prinzip noch nicht die Welt, aber mit nem Controller internen AD Wandler schaffst du das natürlich nicht (zumindest beim AVR hört der Spaß bei einigen 100 kHz auf, soweit ich weiß). Aber wie wärs, wenn du einfach ein paar Gatter nimmst, oder einfacher noch einen CPLD. Baust dir damit nen Zähler und gibst die binären Zählwerte auf die Adressleitungen eines SRAMs. Dann nimmst du noch einen ADC (z.B. von TI oder Analog Devices - hat den Vorteil, dass die Samples verschicken), der sagen wir mal 10MS/s schafft. Dann gibst du deine Datenleitungen (sagen wir mal 8 Stück) auf den Dateneingang des RAMs. Nun betreibst du noch den ADC und den CPLD mit nem 1MHz Quarz und schon sollte die ganze Sache funktionieren. Ach ja... zum Auslesen des SRAMs solltest vielleicht noch nen AVR (oder sonstigen µC) vorsehen, um die Daten weiterverarbeiten zu können! mfg Andreas -- Student of Telematics aauer1 (at) sbox.tugraz.at Graz, University of Technology http://www.mikrocontroller.at.tt
Gast
#114107
Hi ein AVR dürfte es auch noch schaffen mit 1MS/s abzutasten (externen, paralleln ADC vorrausgesetzt) Bei 16MHz hat man 14-15 Befehle. Sollte in ASM machbar sein. Matthias
Gast
#114108
@Matthias: Da könntest du wirklich recht haben, dass das ein AVR auch noch schaffen kann. Sehr viel muss man ja nicht machen. Eigentlich muss man nur die Daten an nem Port einlesen und ins intere RAM abspeichern. Alle weiteren Schritte kann man ja machen, wenn die 128 "Messwerte" mal im Speicher sind! mfg Andreas
Gast
#114109
"Eigentlich muss man nur die Daten an nem Port einlesen und ins intere RAM abspeichern" Schön und gut, aber wie will ich eine Spannung an einem Port einlesen und ins RAM abspeichern? Das Signal is ja analog und nicht digital. Da muss ich doch zuerst das signal umwandeln bevor ich es abspeichern kann. Und dazu kommt man an einem dsp nicht vorbei da dieser eine AD wandlungszeit von 375 ns hat. Ich kenne keinen externen ADC der eine Wandlungszeit von 1µs hat. Und wenn dann is er bestimmt sehr teuer. AVR+ext.ADC kostet mehr wie ein dsp von ti (3). Wenn da drausen jemand schon ein dsp adc programmiert hat, kannsch mir den code senden? Danke an alle, Serdar.
Gast
#114110
Könnte man nicht die 128 Werte erstmal irgendwie analog zwischenspeichern, und später dann erst für die Weiterverarbeitung digitalisieren? Gruß Ingo
Gast
#114111
@gast also DSP mit ADC min. 1 MS/s und Flash für 3 Euro wo gibt`s den ???
Gast
#114112
das gibts bei ti.com (TMS320LF2401A) für 5$.
Gast
#114113
Wie schnell ändert sich denn voraussichtlich das Analogsignal und mit welcher Auflösung brauchst Du es? Kommst Du nicht mit einem entsprechend oversampleten 1-Bit-Wandler hin? Gruß, Philipp.
Gast
#114114
Das Analogsignal ändert sich zwischen 500 nsec bis 2µsec. Ein 1-bit wandler würde ausreichen, ich will nur die werte vergleichen und entscheiden ob das analogsignal in dem zeitpunkt eine 1 oder eine 0 ist. Prinzip komparator mir Uref. Ich müsste einer Feldvariable jede µsec einen wert(0/1) zuweisen. Und dann brauche ich noch ein program in C, aber das ist weniger das problem. ciau
Gast
#114115
Das hört sich schon ganz anders an als am Anfang. Plötzlich ist es nur noch eine digitale Information? OK, die Schwelle ist Uref. Nimm doch den analogen Komperator. Eine Seite mit Uref beaufschlagen, an den anderen Eingang legst Du Dein Signal. Dann kannst Du den Wert direkt alle 1µs einlesen und abspeichern. Volkmar
Gast
#114116
Hi. @gast: Tja... das hättest auch gleich sagen können, dass du nur wissen willst ob der Wert über_ oder _unter einer Schwellspannung liegt ;-). Dazu brauchst auf keinen Fall nen ADC. Das wäre ja wohl absoluter Overkill. Da reicht der AVR interne Komperator ja normalerweise leicht aus. Du brauchst ja praktisch nur das Komparator Flag ins RAM speichern. Bei nem 16Mhz Takt hast ja dann etwa 16 Befehle pro us. Das sollte ja dann leicht reichen (zumindest in ASM). mfg Andreas
Gast
#114117
Ja und was ist wenn die Schwellenspannung sich auch ändert? Ich kenne eine Anwendung mit DSP wo das Analogsignal an ein Port namens : "I/O buffer suply 3,3V, Digital logik voltage". Das ist weder der Komparator noch der ADC. Was für ein Sinn macht das? Serdar Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|