Freuqenzzähler mit 7-Segment

dg2ygq

Neues Mitglied
23. Juli 2007
239
0
0
Bielefeld
Sprachen
Ich bin auf einen Frequenzzähler gestossen, wo alles in ein PIC steckt.
einmal der Zähler, und dann noch die Multiplex-Geschichte:
http://www.qsl.net/dl4yhf/freq_counter/freq_counter.html#construction_v2

Wie funktioniert das denn? Während der eine Timer/Conter mit Frequenzzählen beschäftigt ist, macht ein anderer gleichzeitig die MUX-Geschichte?!
Die beeinflussen sich doch gegenseitig, bzw verfälscht MUX doch den F.Counter, oder ?

Ich habe für so einen Counter einen MC, der zählt, und mal grad das Ergebnis auf einen anderen MC übergibt, der dann die Anzeige mux`t, während der erste MC wieder voll fürs zählen frei ist.
Aber demnach muss das ja alles auf nur einem MC funktionieren können?!

Hat da jemand eine Idee oder sogar schon ein (Basic-)Programm?
 
Hi dg2ygq/ All,

Während der eine Timer/Conter mit Frequenzzählen beschäftigt ist, macht ein anderer gleichzeitig die MUX-Geschichte?!
Die beeinflussen sich doch gegenseitig, bzw verfälscht MUX doch den F.Counter, oder ?

ich hab's jetzt nicht weiter studiert.

Damit die Timer frei sind und/ oder damit es keine Störungen im Ablauf gibt, habe ich mich von vornherein gegen das Multiplexen der 7- Segment- Anzeigen entschieden. Ist dafür jedoch mehr Schaltungsaufwand.


Grüsse,

Michael
 
Hallo,

also wenn man es geistreich macht, dann kommt man mit 2 Timern aus ;)

Ein 16Bit-Timer mit Überlaufinterrupt der das zu messende Signal an den
Eingang bekommt und ein Timer der mit (sagen wir mal) 100Hz Interrupts
erzeugt.

Mit den 100Hz Interrupts kann man ...
1. Das Multiplexing machen und
2. hat man eine Zeitbasis für den Frequenzzähler.

Das sollte nicht das Thema sein. Man muß nur das Multiplexing hinter den
zeitkritischen Dingen ausführen dann mißt das Ding noch halbwegs sauber.
Mit den Überlaufinterrupt kann man dann noch ne 16Bit-Variable hochzählen
lassen.

Die 100Hz bringt man dann über ne 8Bit-Variable auf ein 1Hz Signal runter.
Also jede Sekunde einmal aus dem Restinhalt des 16Bit-Timers und der
16Bit-Überlaufvariable die Frequenz berechnen und an die Ausgaberoutine
für das Multiplexing weiterreichen.

Bei niedrigen Frequenzen wirds dann zwar etwas ungenau aber das kann man
ja dann auf andere Weise lösen (Periodendauermeessung des eingangssignals).

Also gehen tut das. Das ist auch nicht so kompliziert. Tüftelt mal ein wenig ;)

Gruß
Dino
 
@Grandpa
Also lässt du die LED-Anzeige auch "jemand anderen" machen, ja?

@Dino
Das hört sich ja richtig gut an.
Ich werde mir Gedanken machen und mal versuchen ...
Aber ich komme ganz sicher mit 1000 neuen Fragen und Problemen wieder
:rolleyes:
 
Hi dg2ygq,

@Grandpa
Also lässt du die LED-Anzeige auch "jemand anderen" machen, ja?

Du meinst die 7- Segment- Anzeige? Ja. mit einem ATTiny85 z. Bsp. Das braucht nur einen Pin vom zentralen AVR, rennt super mit SW- UART bei 115k2baud. Hat jedoch den Nachteil, dass ich für jedes Segment die volle Beschaltung aufwenden muss. Dafür hat die zentrale Recheneinheit eben den Kopf frei....:rolleyes:


Grüsse,

Michael
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)