Reset
Power-On Reset (POR)
Ce reset se produit à la mise sous tension du pic, il s'execute quand la tension d'alimentation passe vers les 1,2 1,7 V dans le sens montant.
Il se produit aussi aprés la mise à la
masse de l'entrée MCLR
Si la tension monte rapidement, une simple résistance sur MCLR (patte 4), tirée au plus suffit.
Si la tension monte lentement le montage de la figure doit être utilisé, avec R<40k et R1 compris entre 100 Ohms et 1k.
Le Power-On Reset met le compteur programme (PC) à 0000h, à cette adresse doit donc se trouver la première instruction du programme qui peut utliser les cases 0000 0001 0002 et 0003h.
Il met aussi le registre STATUS (03h ou 83h) à 0001 1xxx (x=valeur aléatoire)
Effet d'un Power On Reset (MCLR) | ||
Conditions | Compteur Programme | Registre Status |
A l'allumage | 000h | 0001 1xxx |
En fonctionnement normal | 000h | 000u uuuu |
Pendant un SLEEP | 000h | 0001 0uuu |
X=valeur aléatoire u=valeur non modifiée |
On peut provoquer des Resets lorsque la tension baisse exagérément, sans pour autant tomber à 0.
Power-up Timer (PWT):
Produit un délai de 72 ms à l'allumage qui prolonge le Power On Reset (POR)
Ce délai dépend de la température et de la tension d'alimentation
Il ne se produit que si le bit 3 (PWRTE) de la mémoire de configuration 2007h a été mis à 0; par défaut, ce bit est à 1
Mémoire de configuration 2007h | |
Bit 3 (PWRTE) Power-Up Timer Enable | |
1 par défaut | Power-Up Timer désactivé |
0 | Power-Up Timer actif |
On écrit dans la mémoire de configuration avec la directive __config
La mise à la masse temporaire de la broche 4 MCLR provoque un Power On RESET.
Il peut être nécessaire de provoquer un reset lorsque la tension d'alim passe en dessous d'une certaine valeur sans pour autant atteindre 0V
Les montages des figures 8-14 et 8-15 peuvent être utilisés à cet effet
Le Watchdog est un oscillateur interne au pic, indépendant des autres
Il fonctionne pendant un SLEEP
Le Watchdog Timer ne fonctionne que si le bit 2 (WDTE) de la mémoire de configuration 2007h est à 1
Ce bit est à 1 par défaut
Sa période propre est de 18 ms, dépendant de la température et de la tension d'alimentation, mais cette durée peut être allongée en utilisant le prescaler pour atteindre jusqu'à 2,3 secondes
En fonctionnement normal, le dépassement du compteur provoque un reset
Le bit 4 (TO) du registre STATUS (03h et 83h) passe à 0
En mode SLEEP il provoque un réveil et continue normalement
Les instructions CLWDT et SLEEP remettent à zéro le WATCHDOG et le prescaler s'il lui est attribué
Effets sur les bits 3 (PD) et 4 (TO) du registre STATUS:
Les bits 3 (PD) et 4 (TO) du registre STATUS (03h et 83h) réagissent après des resets:
Origine d'un Reset | ||
Bit 4 TO
du reg. STATUS (Time Out) |
Bit 3 PD
du reg. STATUS (Power Down) |
Origine |
1 | 1 | Power On Reset |
0 | 1 | Watchdog (fonct. normal) |
0 | 0 | Watchdog (Sleep) |
1 | 1 | MCLR (fonct.normal) |
1 | 0 | MCLR (Sleep) |
Retour au sommaire
© 1999-2009 A. Ducros F5AD