Forum: Mikrocontroller und Digitale Elektronik Signal Buffern?


von Dirk (Gast)


Lesenswert?

Hi,

ich muss fuer eine Schaltung ein Zusatzsignal generieren.

Ich bekomme ein serielles Signal und muesste dieses mind. 4 µS
verlangsam (halten).

Ich muss 4 µs bevor und 4 µs nach den seriellen Daten ein zusaetzlichen
Puls generieren.


Die 4µs nach den seriellen Daten ist kein Problem. Wie koennte ich
bloss die seriellen Daten 4 µs langsamer machen? um den ersten Puls
richtig zusenden.

Ich kenne noch beim Fernseher die Moeglichkeit die Laufzeit
zuverzoegern ueber Spiegel. Heutzutage sollte geht es sicherlich auch
einfacher.

Fuer Tipps waere ich sehr dankbar.


Mfg

Dirk

von Dingens (Gast)


Lesenswert?

hm, wenn du genau 4µs brauchst ist das vielleicht nicht geeignet, aber
ich hab seinerzeit mal irgendeine verzögerung gebraucht und dafür
'nen langsameren hexinverter genommen und alle inverter in reihe
geschalten. vielleicht hilft das als anregung.

von Dingens (Gast)


Lesenswert?

andererseits.. sind mikrocontroller nicht gerade zur verwaltung und
manipulation von signalwegen geschaffen worden? nimm doch einfach den
kleinsten tiny den du findest oder übergib das deinem bereits
vorhandenem controller wenns nicht sooo zeitkritisch ist. kleiner
ringbuffer, realisiert mit rolling registers und timer interrupt.

von schneidertobi (Gast)


Lesenswert?

hi,
>sind mikrocontroller nicht gerade zur verwaltung und manipulation von
signalwegen geschaffen worden?

Ich glaube eher das sie dafuer nicht direkt gedacht sind. MC's sind
halt mehr so der einer fuer alles Prozessor. Fuer Signalwege sind wohl
eher DSP's gedacht.

Tobias

von leo9 (Gast)


Lesenswert?

wie genau sollen die 4us sein und welcher jitter ist erlaubt?
kann das eigentliche Signal kürzer als 4us sein?

vom prinzip: Signal an ext.int -> int. routine setzt ersten Puls,
wartet 4us, löscht Puls und setzt "Originalsignal".
Bei konstanter Signallänge kann man das löschen und den zweiten Puls
auch noch hier abarbeiten, ansonsten int auf gegenläufige Flanke
konfigurieren und entsprechend agieren.


grüsse leo9

von Peter D. (peda)


Lesenswert?

Wenn die Signalform bekannt ist, sollte man es besser empfangen
bearbeiten und wieder regeneriert aussenden.

Ansonsten je nach kleinster Pulsdauer abtasten und in einen Ringpuffer
schieben. Dabei wird das Signal aber durch die Abtastperiode zusätzlich
verfälscht.


Peter

von Dirk (Gast)


Lesenswert?

Hi,

sorry ich hatte mich wohl ein bischen falsch ausgedrueckt.

Ich hab ein SDATA Signal zusaetzlich muss ich vorbeginn des SDATA
Signal's noch ein 4µs Highimpuls an einen anderen Pin generieren.
Also die 4µs sollen nicht mit auf die SData Leitung sondern auf eine
zusaetzliche.

Somit muss ich erkennen wann das erste mal die SDATA kommen. Diese
seriellen Daten muesste ich 4µs buffern(verlangsamen) und den Strobe
Pin(extra Pin) einschalten.

Ich hatte gehofft es auch ohne µC zumachen damit ich nicht erst das
komplette SDATA Protokoll capturen muesste.


Die Sache mit dem Hexzaehler finde ich eine intersannte Idee.

Falls jemand noch ein paar Ideen haette waere ich ueber ein Posting
sehr erfreut.

Mfg

Dirk

von Dirk (Gast)


Lesenswert?

Hi,

manchmal sieht man die einfachsten Moeglichkeiten nicht.

Ich werde es mit einem AVR nun machen ....


Ich bedanke mich fuer die Hilfe.


Mfg
Dirk

von Chris (Gast)


Lesenswert?

Hallo,

"Ich hatte gehofft es auch ohne µC zumachen damit ich nicht erst
das..."

Ein serielles Daten-Signal läßt sich mit einem Schieberegister der
passenden Länge verzögern. Wenn Datenrate und geforderte
Verzögerungszeit nicht allzu gegensätzlich sind, könnte das
realisierbar sein.

Gruß

von Dirk (Gast)


Lesenswert?

Hi,

jemand anders hatte mir auch schon den Tipp gegeben. Ich habe es
gestern mit einem 74Hc595 mit 1 Mhz Clock getestet und funktionierte
wunderbar.

Mfg

Dirk

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
Noch kein Account? Hier anmelden.