Zeitmessung beim Arduino

OP #4611568
Lesenswert?
• ▲
▼
Hallo,
Für ein Schulprojekt sollen eine Freundin und ich zwei Arduinos mithilfe 
des Morsecodes kommunizieren lassen. Das Ausgeben ist uns gelungen, 
jetzt sitzen wir am Übersetzen.
Dies machen wir mithilfe einer LED und eines Fotowiderstandes, welcher 
bis jetzt leider nur hell und dunkel erkennt.
Wie können wir die Länge der Hell/Dunkelphasen messen?
Gibt es dafür einen Zeitbefehl?

Da dies unser erstes Jahr Informatik ist, sind wir leider noch nicht so 
"geübt" im Umgang

Vielen Dank!
Liebe Grüße
Moderator (Firma: Titel) Persönliche Seite #4611602
Lesenswert?
• ▲
▼
Peter D. schrieb:
> Siehe Datenblatt: Input Capture Unit
Ich glaube fast, für den ersten Schritt liegt diese Latte zu hoch...

Spannungsteiler schrieb:
> Der Befehl heißt PulseIn()
Es müssen für den Morsecode aber auch Pausen ausgewertet werden...

Ich würde
1. erkennen, wann sich der Pegel des Eingangs ändert (Flankenerkennung)
und dann
2. bei einer solchen Änderung einen "Zeitstempel" nehmen. Und jedesmal 
diese aktuellen Zeitstempel mit dem vorherigen vergleichen 
(subtrahieren). Das ergibt dann die Dauer des letzten Pegels im ms.

Die Auswertung ist dann "relativ" trivial, wenn auf beiden Seiten eine 
Maschine mit konstanter Geberfrequenz sitzt. Dann ist z.B. bei einer 
Punktdauer von 200ms ein Punkt kürzer als 400ms und ein Strich eben 
länger.

Spannungsteiler schrieb:
> Für euer Vorhaben gibt es sogar Library für Arduino:
Ich als Lehrer würde diese Seite sicher auch finden. Und mir dann die 
Funktione des Codes erklären lassen...
OP #4611635
Lesenswert?
• ▲
▼
Erst mal Vielen Dank für die ganzen Antworten!


> Ich würde
> 1. erkennen, wann sich der Pegel des Eingangs ändert (Flankenerkennung)
> und dann
> 2. bei einer solchen Änderung einen "Zeitstempel" nehmen. Und jedesmal
> diese aktuellen Zeitstempel mit dem vorherigen vergleichen
> (subtrahieren). Das ergibt dann die Dauer des letzten Pegels im ms.
>
> Die Auswertung ist dann "relativ" trivial, wenn auf beiden Seiten eine
> Maschine mit konstanter Geberfrequenz sitzt. Dann ist z.B. bei einer
> Punktdauer von 200ms ein Punkt kürzer als 400ms und ein Strich eben
> länger.

Wir werden das mal Versuchen, Danke! :)

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.