Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| elektronik:osccal [22.07.2025 12:09] – angelegt Martin Fitzel | elektronik:osccal [Unbekanntes Datum] (aktuell) – Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1 | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== OSCCAL ====== | ||
| + | Bei einigen PICs (12F629 / 12F675 / 16F630 / 16F676) gibt es eine Besonderheit, | ||
| + | |||
| + | ===== Zweck von OSCCAL ===== | ||
| + | Es handelt sich um einen OSCillator CALibration Wert. Da der PIC mit einem internen Oszillator betrieben werden kann (dies spart einen externen Quarz), wird dieser Wert bereits in der Chip-Fabrik an einer Speicherstelle programmiert. Dadurch können Toleranzen in der Taktfrequenz abgefangen werden. | ||
| + | Der 16F627 besitzt den OSCCAL übrigens nicht! | ||
| + | |||
| + | ===== Warum wird der OSCCAL verwendet? ===== | ||
| + | Die Verwendung des OSCCAL-Wertes wurde notwendig, damit alle Kombinationen von Dekoder und Zentrale zusammen laufen. Denn auch die Zentrale hat gewisse Toleranzen. Wenn nun eine langsame " | ||
| + | |||
| + | ===== Wie funktioniert das? ===== | ||
| + | Der OSCCAL liegt in der letzten Speicherstelle des Programm-Speichers und wurde dort von der Chip-Fabrik einprogrammiert. Beim Start des PIC-Programmes wird dieser Wert dann ausgelesen. | ||
| + | |||
| + | ===== Wie kommt es zu Problemen? ===== | ||
| + | Beim Brennen des PIC wird der Programmspeicher mit dem eigentlichen Programm geladen. Und genau hier sieht man schon die Gefahr: dort liegt ja schon der OSCCAL rum. Um diesen nicht zu überschreiben, | ||
| + | Aber auch mit der guten PC-Programmier-Software kann es vorkommen, das der OSCCAL verloren geht. Wird der Programmier-Vorgang z.B. gestört, so ist evtl. der Speicher schon gelöscht, aber der OSCCAL-Wert noch nicht wieder zurück-programmiert worden. In diesem Fall: OSCCAL schnell notieren und später wieder einprogrammieren. | ||
| + | |||
| + | Unsere Software (PICkit 3 Programmer) zeigt den OSCCAL-Wert im Kopf an - dieser muss also beim ersten Auslesen des PICs notiert werden und zur Not später zurückgesetzt werden. | ||
| + | |||
| + | {{: | ||
| + | |||
| + | {{tag> | ||