www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Zeitintervall zur Messung


Autor: Bastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich möchte mit meinem 2313 in Assembler irgendwie die genaue Anzahl von 
Impulsen in einer fest definierten Zeitspanne zählen.

Also z.B. wieviele Impulse pro 500ms . Damit möchte ich dann etwas wie 
z.B. Umdr./min oder Umdr./sec realisieren.

Kann mir jemand eine Anregung geben, wie ich die Zeitnahme realisieren 
kann?



Danke

Gruß
Bastian

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du hast eigentlich schon alles selbst beantwortet.
Feste Zeitspanne: Einen Timer-Interrupt, der dem Hauptprogramm den 
Zählerwert mitteilt und den Zähler wieder auf 0 stellt. Am besten den 
16-Bit Timer mit Compare-Interrupt verwenden, da kann man sehr genau die 
Zeitbasis einstellen. Schau Dir im Datenblatt mal die Compare-Funktion 
an (wichtig ist auch das CTC-Bit).
Zählen: Entweder über Polling oder einen Externen Interrupt. Wenn der 
Controller nebenbei noch viel machen soll, ist der Externe Interrupt 
erste Wahl.
Bei niedrigen Frequenzen kann man aber auch die Zeit zwischen zwei 
Impulsen heranziehen, ist genauer.
Dann noch die Umrechnung. 500ms sind ne halbe Sekunde, Umdrehungen /Sec. 
: Zählerwert verdoppeln, Umdrehungen/min: Zählerwert x 120 
(vorausgesetzt 1 Impuls/Umdrehung).

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sieh Dir vielleicht dieses Programm an: 
www.mino-elektronik.de/fmeter/fm_software.htm; es macht mit einem 2313 
eine hochaufgelöste Frequenzmessung - die Drehzahl ist nur Faktor 60 
daneben.

Autor: Bastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für eure Anregungen. Dann muss ich mich wohl mal in die Timer 
Sache einarbeiten.

Grundsätzlich:
Der Timer zählt bei jedem Taktimpuls einen hoch und bei überlauf wird 
ein Bit gesetzt?
Dieses Bit muss man auswerten und man hat eine konstante Zeitspanne?



Gruß
Bastian

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.