Forum: Mikrocontroller und Digitale Elektronik PIC18F4550 max. Freq. im Counter-Mode


von Stefan (Gast)


Lesenswert?

Hallo,

ich möchte dem PIC18F4550 einen Frequenzzähler aufbauen.
Der Pic läuft nach Herstellerangabe mit max 48MHz.

Ich möchte den Timer0 im "Counter-Mode" verwenden. Leider finde ich 
nicht (oder verstehe ich nicht) mit welcher maximalen Frequenz der Modus 
noch Funktioniert.

Auf Sprut fand ich für einen anderen Pic die angabe, das der Timer0 mit 
maximal Clock/4 betrieben werden kann. Ist das dann vor dem Vorteiler 
oder danach?

Die Programmierung mach ich mit dem C18 Compiler.


Vielleicht hat ja einer den DRUCHBLICK.

Gruß Stefan

von Stefan (Gast)


Lesenswert?

Schubs...

von Zwirbeljupp (Gast)


Lesenswert?

Datasheet, p.384:
TABLE 28-13: TIMER0 AND TIMER1 EXTERNAL CLOCK REQUIREMENTS

Ist das tatsächlich sooo schwer zu finden???

> Die Programmierung mach ich mit dem C18 Compiler.
Was hat das damit zu tun?

von Manuel (Gast)


Lesenswert?

Clock/4 (Ich denke das hat was damit zu tun das der PIC auch 4 Takte 
braucht um einen Befehl auszuführen?!).

von Manuel (Gast)


Lesenswert?

Achso: Das ist natürlich VOR dem Scaler.

von chris (Gast)


Lesenswert?

Ich kenne nicht die Specs der Serie 18F, die Serie 16F hatte das 
offizielle Limit von 50Mhz, einige pics gingen auch über 150 Mhz.

von Manuel (Gast)


Lesenswert?

@chis hä? Von was sprichst du? Der 18F4550 hat eine Taktfrequenz von 
exakt max. 48MHZ.

von chris (Gast)


Lesenswert?

Ich spreche von externen Frequenzen zu messen, Timer im counter mode.

von Zwirbeljupp (Gast)


Lesenswert?

@ Manuel:
> Clock/4 (Ich denke das hat was damit zu tun das der PIC auch 4 Takte
> braucht um einen Befehl auszuführen?!).

> @chis hä? Von was sprichst du? Der 18F4550 hat eine Taktfrequenz von
> exakt max. 48MHZ.

Könntest Du bitte aufhören hier solche Gerüchte zu verteilen, wenn Du 
von den Specs der Chips offensichtlich keine Ahnung hast!?

Wenn man sich die Specs im Datenblatt anschaut steht dort eindeutig eine 
(offizielle) maximale Eingangsfrequenz von 50 MHz (bei Verwendung des 
Prescalers).

Dass der PIC (inoffiziell) in der Realität in der Lage sein wird, 
deutlich höhere Frequenzen zu messen, ist wohl zu vermuten.

von Stefan (Gast)


Lesenswert?

Irgendwie bin ich jetzt noch verwirrter.

Ich möchte lasse den PIC18F4550 mit maximaler Frequenz laufen (48MHz?)
- nehmen wir an ich habe ganz normale TTL-Pulse mit Duty-Cycle 50%: Kann 
ich jetzt mit dem Counter-Mode der Timer 12MHz noch lückenlos zählen?


Ist das überhaupt ein richtiger "Befehl" der 4 Takte braucht, wenn doch 
der Timer dafür gebaut wurde? Der Timer selbst braucht ja auch keine 
vier Tacke zum zählen. Oder doch?

Gruß Stefan

von Zwirbeljupp (Gast)


Lesenswert?

Meine Güte, was faselst Du ständig von der maximalen Taktfrequenz des 
PIC. Diese hat doch so direkt gar keinen Einfluss auf die maximale 
Frequenz am Counter-Eingang, vorausgesetzt, Du verwendest den Prescaler.
Wo ist denn Dein Problem mit der Tabelle im Datenblatt? Hast Du Dir die 
überhaupt schon mal angesehen? Da steht doch klipp und klar die minimale 
Periodendauer für ein Signal am Counter-Eingang (Param No. 42). Was 
brauchst Du denn noch?

> Ist das überhaupt ein richtiger "Befehl" der 4 Takte braucht, wenn doch
> der Timer dafür gebaut wurde? Der Timer selbst braucht ja auch keine
> vier Tacke zum zählen. Oder doch?
Öhm...hä???

von Stefan (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Zwirbeljupp,

ist ja gut, ganz ruhig. DU hast recht und ich UNRECHT und ich bin SO 
dumm...
Auch wenn manchmal der Fragende durch einen kleinen Schubs zum Denken 
angeregt werden kann, erinnern mich deine Beiträge irgendwie an das 
HB-Männchen.

Und ja, der Compiler hat damit nichts zu tun. Es hätte ja sein können, 
dass mir dringend davon abgeraten wird, bei einer solchen Zeitkritischen 
Anwendung den C18 Compiler zu verwenden. Und ich dachte ich gebe lieber 
etwas Redundanz dazu als zu wenig zu schreiben.

Der Stein des anstoßes ist ein Artikel auf Sprut:

http://sprut.de/electronic/pic/projekte/frequenz/freq.htm

In diesem steht:
"Leider ist sein Eingangstakt auf 1/4 des Prozessortaktes beschränkt. 
Der Timer0 eines mit 10 MHz getakteter PIC kann also maximal 2,5 MHz 
zählen. Für höhere Frequenzen kann man aber den Vorteiler einsetzen."

Durch den Vorteiler verliere ich aber an genauigkeit.

Ja, ich hab mir die Tabelle natürlich angesehen. Selbst gefunden hab ich 
diese aber leider nicht. 400 Seiten Doku können auch manchmal verwirrend 
sein.

++++++++++++++++++++++++++++++++++++++++++++++++++++++
Ohne Prescaler Impulse von der Länge (TCY+10ns) verdauen.
Wenn ich den internen Takt auf 48MHz einstelle kann ich so also etwa 
10MHz zählen.
An den Vorteiler kann ich 50MHz sicher anlegen, muß aber aufpassen, dass 
ich den Counter denoch nicht überfordere.

Ist das so jetzt richtig?

Gruß Stefan

(Ja, ich geb nichts auf Rechtschreibung)

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.