Hallo, Wie genau oder stabil ist die Taktfrequenz eines PIC ? Habe ein Projekt mit dem PIC 12F629 angefangen und bin jetzt wegen mehr Speicherbedarf auf den PIC 12F683 umgestiegen. Bei werden mit 4MHz Intern Oszillator betrieben. Eine Timer-Routine mit 78µs funktioniert nicht mehr. Gruß
Gast
#2070023
Die internen Oszillatoren bei den PIC werden im Werk auf 1% Genauigkeit getrimmt. Steht auch im Datenblatt ganz vorne.
Gast
#2070026
Ergänzung: viele PICs (nicht aber der 12F629) haben auch einen internen 31 kHz-Oszillator, der ist nicht getrimmt und kann etliche % abweichen.
Gast
#2070027
Es gibt auch genauere Typen. Beim PIC18F46J50 beträgt die Abweichung lt. Datenblatt ±0.15% typ.
Siegfried Saueressig schrieb: > Wie genau oder stabil ist die Taktfrequenz eines PIC ? Die PICs haben auch einen Taktausgang (Fosc/4). Dann könnte man da auch messen und mit 4 multiplizieren. (Oszi oder Frequenzmesser). Modus: INTOSC mit Taktausgang an OSC2, INTOSCIO ohne Taktausgang. Taktkalibration von Werk aus auf 10.000 ppm (ein Quarzoszillator hat Werte von weniger als 100 ppm!) Siegfried Saueressig schrieb: > Eine Timer-Routine mit 78µs funktioniert nicht mehr. Was heißt das? Zu ungenau? Was heißt nicht mehr? Ging sie schonmal? Sourcecode?
Dirk schrieb: > Es gibt auch genauere Typen. Beim PIC18F46J50 beträgt die Abweichung lt. > Datenblatt ±0.15% typ. Jo nur leider sind die PIC18FxxJxx ein bisschen größer, teurer und schlechter zu löten (meist nur in TQFP oder BGA erhältlich). Ganz zu schweigen von Programmiertechnischen Aspekten. Wer einen 12F verwendet der will Platz sparen (hier offensichtlich sogar den Quarz) ... da kommt ein 44 Pin TQFP wohl eher ungelegen =) Nur so als Bemerkung.
Das Problem dürfte eher in der Programmierung liegen, sowohl der 12F629 als auch der 12F683 haben einen internen Oszillator, die werden aber unterschiedlich angesprochen, der Code muss also geändert werden. Beim 12F629 wird OSCCAL geladen, beim 12F683 wird OSCCON programmiert. Und der 12F683 hat für den Timer1 ein Gate, der 12F629 nicht etc.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.