Forum: Mikrocontroller und Digitale Elektronik zeitgleiche Flanke 2er Clocksignale


von Luky S. (luky)


Lesenswert?

Ich habe eine kleine Frage:
Ich habe eine 5MHz Taktsignal (LVTTL) und ein weiteres mit einer leicht 
unterschiedlichen Frequenz (4,99-5,01MHz, ebenfalls LVTTL)
Ich muss nun herausfinden, wenn z.B. die steigende Flanke beider Signale 
genau zugleich auftritt. Prinzipiell wäre mir auch egal, wenn die 
Schaltung nicht die exakte Zeitgleichheit der Flanken detektiert, 
sondern auf einen genau bekannten Versatz der Beiden reagiert.
Wichtig ist nur, das ein Signal 1x pro Zyklus ausgelöst wird. Mit Zyklus 
meine ich hierbei die Zeitspanne zwischen 2 gleichzeitigen Auftreten 
einer Flanke also z.B. bei 0,1% Frequenzunterschied zwischen den beiden 
Signalen alle 1000 Perioden.
Das Problem dabei ist aber, das ich die 2. Frequenz nicht genau kenne 
und sie auch etwas schwankt, also funktioniert Perioden zählen leider 
nicht (schon probiert)

von michael (Gast)


Lesenswert?

hallo lukas.

FALLS du das ganze mit einem controller machen willst (was nicht 
unbedingt nötig ist, aber ich bin nun mal softwerker ;-) ), läßt du 
einen zähler laufen, benutzt zwei externe, flankengetriggerte 
interrupts, und hältst in jedem interrupt den zählerstand fest.
ein vergleich der beiden zählerstände liefert dir den zeitlichen versatz 
der beiden flanken.
wär das was?

gruß

michael

von Luky S. (luky)


Lesenswert?

Leider wäre das nicht gerade ideal, denn ein 5MHz Signal kann ich nicht 
direkt auf den Pin legen, sondern müsste je einen Vorteiler dazubauen. 
Dann wäre das aber meine fallback-Lösung.

von Falk B. (falk)


Lesenswert?

@ Lukas Slz (luky)

>Ich habe eine 5MHz Taktsignal (LVTTL) und ein weiteres mit einer leicht
>unterschiedlichen Frequenz (4,99-5,01MHz, ebenfalls LVTTL)
>Ich muss nun herausfinden, wenn z.B. die steigende Flanke beider Signale
>genau zugleich auftritt.

Definiere "genau gleich". 1ns? 10ns?

Sag doch mal lieber, was das insgesamt werden soll.

MFg
Falk

von Ohh (Gast)


Lesenswert?

Genau Zeitgleich... ja , ja. Nimm doch mal ein XOR Gatter und lass beide 
Frequenzen drauf los. Die Zeitgleichheit ist dort, wo sich das 
Vorzeichen des Mittelwertes aendert. Die Nadel wird immer schmaler, und 
aendert dann das vorzeichen

von Luky S. (luky)


Lesenswert?

@ Falk:
Lukas Slz wrote:
> Wichtig ist nur, das ein Signal 1x pro Zyklus ausgelöst wird. Mit Zyklus
> meine ich hierbei die Zeitspanne zwischen 2 gleichzeitigen Auftreten
> einer Flanke also z.B. bei 0,1% Frequenzunterschied zwischen den beiden
> Signalen alle 1000 Perioden.
> Das Problem dabei ist aber, das ich die 2. Frequenz nicht genau kenne
> und sie auch etwas schwankt, also funktioniert Perioden zählen leider
> nicht (schon probiert)

von Gast (Gast)


Lesenswert?

Mathematisch betrachtet kreuzen sich die Flanken zweier asynchroner 
Signale lediglich während eines unendlich kurzen Zeitraumes. 
Dementsprechend wird auch das die Überkreuzung meldendes Signal 
unendlich kurz sein. Erfahrungsgemäß ist die Auswertung derart 
flüchtiger Signale in einer realen Schaltung aber nicht wirklich 
anspruchslos...

Ohne die Definition eines Zeitfensters, das den Rahmen definiert, 
innerhalb dessen eine "Gleichzeitigkeit" der Flanken angenommen werden 
soll - wie beispielsweise die bereits erwähnten 10ns - wird das nichts.

von Ohh (Gast)


Lesenswert?

Ein XOR plus nachfolgender Tiefpass ergibt die Differenzfrequenz. Der 
steigende Nulldurchgang dieses Signales ist eine Konizidenz der Flanken.

von Luky S. (luky)


Lesenswert?

Wie lange das Signal dauert ist wie schon mehrfach gesagt egal. Es ist 
nur wichtig, das es innerhalb eines Zykluses genau 1x auftritt, und zwar 
an derselben Stelle.

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.