Titelbild Mikrocontroller

6.1. Reset

Während eines Resets werden alle I/O-Register auf ihre Initialwerte eingestellt und das Programm wird ab der Adresse des Reset-Vektors gestartet. Wenn das Programm keinerlei Interrupts verwendet, kann der reguläre Programmcode an der Adresse des Reset-Vekotrs beginnen. Dies gilt auch in den Fällen, in denen der Reset-Vektor im Applikations-Sektor und die Interrupt-Vektoren im Boot-Sektor liegen bzw. umgekehrt.

Das Zurücksetzen der I/O-Register auf ihre Resetwerte geschieht unmittelbar durch den Reset, die verschiedenen Takte müssen dafür nicht aktiv sein.

Nachdem die Resetbedingungen aller Resetquellen verschwunden sind, wird ein interner Verzögerungszähler gestartet, der den internen Rest verlängert. Dadurch kann die Versorgungsspannung einen stabilen Level erreichen, bevor mit der normalen Abarbeitung des Programms begonnen wird. Die Verzögerungszeit des Verzögerungszählers wird mit den CKSEL Fuses eingestellt (siehe Auswahl der Taktquellen auf den Seiten vorher).

Der ATmega8 hat vier verschiedene Resetquellen
  • Power-on Reset. Der Controller wird resetet, wenn die Versorgungsspannung unterhalb des Power-on Reset Schwellwertes VPOT liegt.
  • Externer Reset. Der Controller wird resetet, wenn ein Low-Pegel am RESET-Pin für länger als die minimale Länge eines Taktpulses anliegt.
  • Watchdog Reset. Der Controller wird resetet, wenn bei freigeschaltetem Watchdog der Watchdog-Timer überläuft.
  • Brown-out Reset. Der Controller wird resetet, wenn bei freigeschalteter Spannungsabfallerkennung die Versorgungsspannung unter den Brown-out Reset Schwellwert VBOT absinkt.
Reset Logik des ATmega8

Reset Logik des ATmega8


Reset Charakteristik des ATmega8

Reset Charakteristik des ATmega8

Hinweise:
(1) Der Power-on Reset arbeitet nicht, wenn die Versorgungsspannung unter den Spannungsschwellert VPOT (fallend) gesunken ist.
(2) VBOT kann bei einigen Bausteinen unter dem nominalen Spannungsminimum liegen. Bausteine, bei denen dies der Fall ist, werden bei der Produktion bis VCC = VBOT getestet. Dadurch ist garantiert, dass ein Spannungsabfall-Reset auftritt, bevor VCC unter die Spannung fällt, bei der die korrekte Arbeitsweise des Bausteins nicht mehr garantiert ist. Die Tests werden durchgeführt bei BODLEVEL=1 beim ATmega8L und BODLEVEL=0 beim ATmega8. BODLEVEL=1 wird beim ATmega8 nicht unterstützt.
Impressum