Forum: Mikrocontroller und Digitale Elektronik TTL Impuls Länge auslesen und weiterverarbeiten


von Chris S. (chris606)


Lesenswert?

Ich müsste die Länge eines TTL Impulses mit ca. 10MHz Auflösung messen 
und anschließend in einer Software weiterverrechnen und numerisch 
anzeigen.
Ich dachte evtl. daran einen einfachen USB Logikanalysator zu verwenden, 
oder vielleicht auch einen Raspberry PI Pico.
Python und C Programmierkenntnisse wären vorhanden.

Gibt es hier irgendwelche Tools oder Beispielprojekte auf die ich 
zurückgreifen könnte?

Danke und Gruß
Christian

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Chris S. schrieb:
> Ich müsste die Länge eines TTL Impulses mit ca. 10MHz Auflösung messen
Du willst also die Pulslänge mit +-50ns Genauigkeit erfassen?

von Udo S. (urschmitt)


Lesenswert?

Chris S. schrieb:
> oder vielleicht auch einen Raspberry PI Pico.

Einen Timer so programmieren, dass er die Länge des Impulses auf einem 
IO misst.
Achtung die IOs des Rasp PI haben wahrscheinlich 3,3V, TTL hat 5V Pegel.
Also Pegelanpassung.

Am besten geht das natürlich mit einem Oszi, falls vorhanden.

: Bearbeitet durch User
von Chris S. (chris606)


Lesenswert?

Ja, genau, einfach die Zeitdauer messen und dann diese Impulszeit 
weiterverarbeiten und am PC darstellen.
Pegelwandlung ist klar und kein Problem.

: Bearbeitet durch User
von Stephan S. (uxdx)


Lesenswert?


von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

Udo S. schrieb:
> Achtung die IOs des Rasp PI haben wahrscheinlich 3,3V, TTL hat 5V Pegel.

Das ist nicht ganz korrekt. Der TTL-Ausgangspegel für High liegt bei 2,4 
V bis 5 V. Ein CMOS-Eingang für 5V-Logik hat einen High-Eingangpegel von 
3,5 V bis 5 V. Somit besteht durchaus die Möglichkeit, dass ein gültiges 
TTL-High nicht als CMOS-High erkannt wird. Bei 3,3V-CMOS-Logik wird 
hingegen der Eingang bei mehr als 3,3 V übersteuert; immerhin gibt es 
einige 5V-tolerante
Eingänge bei 3,3V-Bausteinen, z.B. einigen Mikrocontrollern.

Ich vermute mal, dass der TE in Wirklichkeit gar kein Signal mit 
TTL-Pegeln hat, sondern 5V-CMOS.

> Also Pegelanpassung.

Das ist korrekt.

von Rainer W. (rawi)


Lesenswert?

Chris S. schrieb:
> Ich müsste die Länge eines TTL Impulses mit ca. 10MHz Auflösung messen

Ein Pulsdauer hat gewöhnlich die Dimension einer Zeit und wird in 
Einheiten von Sekunden gemessen.

In welchem Zeitbereich liegt denn deine Pulsdauer und ist das eine 
einmalige Messung (Labortest) oder suchst du nach einem Verfahren, dass 
irgendwo integriert werden soll?
Muss die Darstellung Online erfolgen oder darf es in einer 
Nachbearbeitung von aufgezeichneten Daten sein?

: Bearbeitet durch User
von Jörg R. (solar77)


Lesenswert?

Chris S. schrieb:
> Ich müsste die Länge eines TTL Impulses mit ca. 10MHz Auflösung
> messen und anschließend in einer Software weiterverrechnen und numerisch
> anzeigen.

https://www.ascel-electronic.de/bausaetze/13/ae20401-5.8-ghz-frequenzzaehler/rf-power-meter?

: Bearbeitet durch User
von Mi N. (msx)


Lesenswert?

Schon etwas älter und mit ATmega, sodaß es auch auf einem Arduino 
UNO/nano laufen kann: 
http://mino-elektronik.de/fmeter/fm_software.htm#bsp6

Legt man das Signal an beide Eingänge, wird je nach Einstellung der 
Flanken die aktive oder passive Zeit des Impulses gemessen. Als Anzeige 
ist ein 16 x 2 LCD vorgesehen, serielle Datenausgabe zum PC ist kein 
Problem.
10-fach höhere Auflösung kann man mit einem RP2040 (RPi Pico) erreichen.
Das kannst Du Dir ja zu Weihnachten wünschen ;-)

Ich habe noch eine Schaltung mit STM32F407 gefunden:
http://mino-elektronik.de/FM_407/fmeter_407.htm#a5

: Bearbeitet durch User
von Udo K. (udok)


Lesenswert?

Periodendauer misst ein Frequenzzähler wie der relativ günstige TF960 
https://at.rs-online.com/web/p/frequenzzahler/6654919

Mit dem USB/RS232 Interface kannst du die Kommandos in ein Terminal in 
1-2 Zeilen hinschreiben, oder du erstellst ein Skript in 
Python/Bash/C...  Das zum Laufen zu bringen sollte nicht länger als 1-2 
Stunden dauern.

von Jörg R. (solar77)


Angehängte Dateien:

Lesenswert?

Chris S. schrieb:
> Ich müsste die Länge eines TTL Impulses mit ca. 10MHz Auflösung
> messen..

10MHz ist eine Frequenz, keine Auflösung. Und was willst du messen, die 
komplette Periode oder nur den H bzw. L Anteil? Mit welcher Genauigkeit 
soll gemessen werden?

https://www.mikrocontroller.net/attachment/685494/100ns.PNG

Und wenn die Frage erlaubt ist, wofür das Ganze?

: Bearbeitet durch User
von Mi N. (msx)


Lesenswert?

Udo K. schrieb:
> ein Frequenzzähler wie der relativ günstige TF960

Oh, das ist günstig?
Letzlich bietet er nur 20 ns Auflösung bei der Pulsweite.

von Nick (b620ys)


Lesenswert?

Chris S. schrieb:
> Ich müsste die Länge eines TTL Impulses mit ca. 10MHz Auflösung messen
> und anschließend in einer Software weiterverrechnen und numerisch
> anzeigen.

Wie oft MUSST Du das messen. Nur mal nächste Woche oder so, einmal in 
der Stunde oder 1000 mal in der Sekunde?
Hast du schon jemanden der dir den Messwert vorliest oder soll der per 
Morsecode übergeben werden? Ist die Messstelle auch die Auswertestelle, 
oder hast du den Postweg geplant? Wie soll das verrechnet werden? Auf 
dem PC des Chefs, dem Smartphone deiner Freundin oder dem Taschenrechner 
vom Aldi?
Ist es egal was das ganze kostet oder ist des ein Staatsauftrag der dann 
durch Nachträge vergoldet wird?
Oder sammelst du jetzt erst mal Ideen für das Pflichtenheft?

von Norbert (der_norbert)


Lesenswert?

Nicht jeder Versuch lustig zu sein endet erfolgreich.

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.