mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik aufzeichnen eines bit-streams von 14mhz mit mikrocontroller?


Autor: qs (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo,

seht ihr eine möglichkeit mit relativ einfachen (=hobby) mitteln ein 
signal aufzuzeichnen (abgesehen vom speicher-oszi ;-) ), das etwa 
14mhz/14mbits schnell ist. es handelt sich um einen seriellen bit-strom 
auf nur einer leitung. die gängigen µC sind ja selbst nur mit 8/16/20mhz 
getaktet, also fallen die vermutlich ja sowieso schon raus, oder ?!
fpga wäre vermutlich eine möglichkeit, aber stelle ich mir jetzt auch 
nicht so unkompliziert vor, wenn man in der richtung noch keine 
erfahrungen hat.

hat jemand 'ne praktikable idee?

mfg qs

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
USB Oszi.

MFG
Falk

Autor: Christoph Kessler (db1uq) (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie lang ist der Stream, soll er in ein RAM oder auf eine Festplatte 
oder Flash abgelegt werden ?

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du das Clock Signal, das die genauen Abtastpunkte vorgibt, noch 
dazu hast, gehts vielleicht über die SPI Schnittstelle eines schnelleren 
Controllers.
Mit einem FPGA gehts ziemlich sicher. Allerdings sollte man, wenn man 
den Takt des Signals nicht rekonstruieren kann, mit einer wesentlich 
höheren Abtastrate aufzeichnen, sonst erkennt man auf dem 
aufgezeichneten Signal nichts mehr.

Autor: Aufreger deluxe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja relativ einfache sind die Mittel schon, nur ist es halt keine 
Sache, die man mal so eben in einer Stunde gelötet hat.

Man nehme ein SRAM und ein CPLD, in welchem ein Adresszähler für das 
SRAM realisiert ist. Dieser Zähler wird mit dem SRAM verbunden, weiter 
brauchst du noch einen externen Takt (z. B. 48MHz?) zum hochzählen. An 
die 8 oder 16 Datenleitungen des SRAMs legst du 8-16 aufzuzeichnende 
Signale an. Durch ein Triggerimpuls wird der Zählvorgang gestartet und 
wenn das SRAM voll ist, sendest du die Daten einfach an den PC. Dies 
aber ist wieder ne andere Geschichte. Ich denke, dass sollte so in etwa 
machbar sein, wenn man sich halt wirklich auf die Grundfunktionen 
beschränkt. Wenn alles funktioniert, bekommst du so einen kleinen 
Logikanalysator mit 8 oder 16 Eingängen.

Autor: qs (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@christoph: idealerweise ein paar sekunden, wobei da natürlich schon 
einiges an daten zusammenkommt, das ist klar...also kommt man um 
externen speicher nicht drumrum, die gängigen karten (mmc,sd) fallen da 
ja auf grund des hohen taktes=datenaufkommens aus, oder?

@matthias: der takt ist konstant und bekannt. hast du einen bestimmten 
prozessor im hinterkopf.

@aufreger: von der idee her sehr gut, geht natürlich in die gleiche 
richtung wie fpga (vom "erlernen" her, wenn man noch nie was damit 
gemacht hat). gehen wir mal davon aus, dass die daten einfach nur 
"rumliegen" sollen, verarbeitung muss während des einströmens nicht 
stattfinden.

wieviel "geschwindigkeitsüberschuss" wird man benötigen ? den 3fachen, 
4fachen takt des zu untersuchenden signals, für das register-geschiebe 
etc !?

Autor: Norbert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde die Aufgabe mit einem kleinen CPLD lösen. Ähnlich wie es 
Aufreger deluxe gesagt hat.

Letztendlich ist ein CPLD ideal für diese Aufgabe. Und dabei wird die 
Lösung wirklich noch übersichtlich sein. Du musst es ja nicht in VHDL 
schreiben, sondern könntest ja auch grafisch Gatter zeichnen, so wie du 
sie brauchst.

Autor: Alex Trusk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
anstatt einen adresscounter in ein cpld/fpga zu programmieren koennte 
man einfach einen 4040 oder aehnlich nehmen.

grad gefunden, vllt sind ein paar denkanstoesse dabei:
Beitrag "Schnelle Speicherung von Daten"

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
14mHz sind doch kein Problem; dauert nur unheimlich lange, wenn alle 70s 
ein Bit kommt.

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>4040 oder aehnlich nehmen.

Wenn, dann mehrere und dann auch nur 74HC4040 oder 74F4040, der 
Schnelligkeit wegen.

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Travel Rec.

[ ] Du weisst das der 4040 ein ripple counter ist und diese nicht durch 
Geschwindigkeit glänzen.

Da für diesen Low Cost logic Analyzer sowieso noch anders Zeugs gebaucht 
werden würde, ist ein CPLD das Mittel der Wahl. Wer heute noch 
TTL-Gräber schaufelt, ähh bastelt, ist selber Schuld. Nostalgiker mal 
ausgenommen ;-)

@ qs

> idealerweise ein paar sekunden, wobei da natürlich schon
> einiges an daten zusammenkommt, das ist klar...also kommt man um
> externen speicher nicht drumrum, die gängigen karten (mmc,sd) fallen da
>ja auf grund des hohen taktes=datenaufkommens aus, oder?

Hmm 14 Mbit/s = 1,75 Mbyte/s. Schafft Compact-Flash locker. Wie es mit 
MMC/SD aussieht weis ich im Moment nicht. Würde aber vermuten, dass es 
knapp zu schaffen ist. Aber auch SRAM oder DRAM ist in den 
Grössenordnungen problemlos handhabbar (nur eben halt nicht dauerhaft 
gespeichert).

MFG
Falk

Autor: Sonic (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Würde es gehen die Daten in 2 stück 74164 (8-bit Schieberegister, 
kaskadiert) ienzulesen, 16 bit parallel in den µC und per LPT parallel 
zum PC. Nur so'n Gedanke, wäre halt hardwaremäßig einfach zu 
realisieren.

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Sonic

Im Prinzip schon, aber ein LPT macht auch "nur" 2 Mbyte/s unter besten 
Bedingungen.
Ich würde nen CPLD nehmen, und wenn die Messung abgeschlossen ist die 
Daten per uC + RS232/LPT/USB zum PC schaufeln.

MFG
Falk

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.