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.
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?
Ne Kiste Bier ist ein Bisschen wenig, ich würde eher sagen, der Nobelpreis winkt!
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!
Wow 128bit, wofür braucht man eine Auflösung von ca.: 3400000000000000000000000000000000000000 ????
Vielleicht, um mit ner modifizierten SS20 ein Stecknadelkopf in unserer Nachbargalaxie zu treffen ?
Vielleicht sind ja nicht 128 Bit, sondern nur 128 Stufen gemeint, also effektiv 7 Bit !?
@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!
> Ich glaube, ohne nachzurechnen
Rechne es doch vielleicht gerade mal nach, würde mich sehr
interessieren. Ich kann es leider nicht :(
Na logisch wird er 128 Stufen gemeint haben, aber wo bleibt da der Spaß :-D
Na gut, ich ziehe meine Vermutung zurück, Ihr könnt sie als gegenstandslos betrachten. Schließlich ist ja heute Freitag :-)
@Thorsten kann ich grad' auch nicht mangels Zeit aber ich hol' es nach, wenn ich es nicht vergesse!
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
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
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
@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
"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.
Könnte man nicht die 128 Werte erstmal irgendwie analog zwischenspeichern, und später dann erst für die Weiterverarbeitung digitalisieren? Gruß Ingo
@gast also DSP mit ADC min. 1 MS/s und Flash für 3 Euro wo gibt`s den ???
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.
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
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
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
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
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.