mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik µC mit großem Counter


Autor: Andrew (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

kenn jemand von euch Mikrocontroller mit internen Zählern von mehr als
16 Bit?

Andrew

Autor: Andrew (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oder würde es funktionieren bei z.B. einem ATMega zwei Counter (16Bit
und 8Bit) seriell zu betreiben?

Andrew

Autor: peter dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"kenn jemand von euch Mikrocontroller mit internen Zählern von mehr
als
16 Bit?"


Wozu denn ?

Es gibt doch Overflow-Interrupts, wo man prima in Software weiterzählen
kann (siehe Codesammlung).


Peter

Autor: Christoph Kessler (db1uq) (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein kleines Interrupt-Programm, das bei jedem Zählerüberlauf ein
Register um eins hochzählt kann doch nicht so kompliziert sein?
Schneller als die halbe Taktfrequenz kann ein AVR nicht zählen, bei 16
Bit tritt also der Interrupt alle 128k Takte einmal auf, das
beschäftigt den Controller nicht übermäßig.

Autor: mh789 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mein gcc macht das von ganz alleine ;-) uint32_t auf einem ATmega16.

Autor: mh789 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Huch, da war ich zu schnell. Sagtest Du Counter oder Register? ;) Sorry.

Autor: Andrew (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für den Tip!

Wir der Overflow-Interrupt bei jedem Overflow gesetzt, auch wenn sich
der Counter schon im Overflow befindet?
Wie kann ich den Counter takten? Ich will die Zeit eines High-Pegels
mit einem 13.56MHz-Signal messen.

Andrew

Autor: peter dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mehr als Setzen geht nicht (Bits haben nur 2 Zustände), d.h. der 2.
Überlauf geht verloren.


Peter

Autor: Manos (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da es sich um einen Interrupt handelt kann man hierbei auch eine
Behandlungsroutine anspringen (die dann das Bit nach Auswertung wieder
löscht).

Autor: peter dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn der 2. Überlauf erst kommt, wenn Du schon im Interrupt bist, dann
hast Du gerade nochmal Glück gehabt, denn das Bit wurde ja beim
Einsprung gelöscht und kann somit wieder gesetzt werden.


Peter

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der M16C62 kann auch Hardwaremäßig mehr als 16Bit. Wenn man mag auch
mehr als 64Bit.

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
In ARM-basierten Controllern standardmäßig 32 Bit.

Autor: michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi ...

Warum nicht im Interrupt (Zeitbasiert) den letzten Stand des Zählers
mit dem aktuellen verrechnen und zu einer Gesamtvariable hinzurechnen
?

Michael

Autor: peter dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Andreas


"In ARM-basierten Controllern standardmäßig 32 Bit."


Es ist ein Irrtum zu glauben, es gäbe nur Philips ARMs oder ARMs seien
untereinander kompatibel.

Die ST ARM7 haben 16Bit Counter/Timer, dafür können sie aber im
Gegensatz zu den Philips ARMs auch extern zählen.

Ich hab schön blöd aus der Wäsche gekuckt, als ich beim LPC2292 den
Countereingang für nen Frequenzzähler gesucht habe, der hat nur Timer,
keine Counter.


Peter

Autor: Robert Teufel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Peter,

es ist korrekt, dass der LPC2104/5/6 nicht extern zaehlen kann. Alle
213x, 214x, 2101/2/3 koennen auch extern zaehlen und haben mehrere
32-bit counters.

Z.B. der LPC2101 kostet weniger als die meisten AVR und hat 2 x 32-bit
timer, 2x 16-bit timer und kann auch 4 unabhanegige externe Signale mit
diesen Countern zaehlen.

Einfach nur um Missverstaendnisse auszuraeumen

Gruss, Robert

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.