6.2. Resetquellen
Power on
Ein Power on Reset (POR) wird durch eine interne Schaltung erzeugt. Der POR wird aktiviert, wenn Vcc ansteigt und einen gewissen Schwellwert überschreitet (Vpot). Ein POR wird auch aktiviert, wenn Vcc fällt und unter das Vpot Level fällt. Vpot für steigende Spannung ist höher als Vpot für fallende Spannung. Diese Schwellwerte betreffen das Ein- und Ausschalten des Systems.
Brown out (Spannungsüberwachung)
Die Brown out detection (BOD) überwacht die Spannung Vcc während des Betriebs, indem sie Vcc mit einem festen Wert vergleicht. Dieser Vergleichswert wird mit den BODLEVEL fuses eingestellt. Wenn BOD freigegeben ist und die Spannung unter den Triggerlevel Vbot fällt, wird unmittelbar eine Resetbedingung erzeugt und ein Reset ausgelöst. Wenn die Spannung wieder steigt und das Level Vbot+ (Hysterese) erreicht, wird die Resetbedingung aufgehoben und die Resetsequenz beginnt.
Wenn die BOD freigegeben ist, kann sie als permanente Überwachung oder als periodische Überwachung (1kHz) eingestellt werden. Die periodische Überwachung benötigt weniger Strom. Mit den BODACT fuses wird eingestellt, wie die BOD arbeitet (externer Programmer).
Externer Reset
Low-Pegel (genauer: unterschreiten der Spannung Vrst) am Reset-Pin erzeugt eine Resetbedingung. Erst wenn der Pin wieder auf High geht, verschwindet die Resetbedingung und die Resetsequenz wird gestartet. Der Reset-Pin hat einen Pull-up Widerstand eingebaut.
Watchdog Reset
Der Watchdog überwacht den korrekten Programmablauf. Wenn der Watchdogtimer (WDT) nicht regelmäßig durch die Software zurückgesetzt wird, läuft er über und löst einen Rest aus. Der WDT wird aus dem internen 32kHz ultra low power Oszillator getaktet.
Software Reset
Durch Schreiben des software reset Bits im reset control Register kann ein Rest durch die Software ausgelöst werden. Der Reset wird zwei cpu Takte nach dem Schreiben des Bits ausgelöst. Das Register hat CCP Schutz.
PDI Reset
Das externe Programmiergerät gilt als eine eigene Resetquelle. Dieser Rest wird also ausgelöst, während der Baustein programmiert wird.