MICROCHIP dsPIC33 Dual Watchdog Timer
INTRODUZIONE
U dsPIC33 / PIC24 Dual Watchdog Timer (WDT) hè descrittu in questa sezione. Vede a Figura 1-
1 per un diagramma di bloccu di u WDT.
U WDT, quandu hè attivatu, opera da a fonte interna di l'oscillatore RC di bassa potenza (LPRC) o sorgente di clock selezziunata in u modu Run. U WDT pò esse usatu per detectà malfunzionamenti di u software di u sistema resetting u dispusitivu se u WDT ùn hè micca sbulicatu periodicamente in u software. U WDT pò esse cunfiguratu in modalità Finestra o modalità Non-Finestra. Diversi periodi di time-out WDT ponu esse selezziunati cù u post scaler WDT. U WDT pò ancu esse usatu per svegliate u dispusitivu da u modu Sleep o Idle (modu Power Save).
Eccu alcune di e caratteristiche chjave di i moduli WDT:
- Configurazione o software cuntrullatu
- Separate periodi di time-out configurabili da l'utilizatore per i modi Run è Sleep / Idle
- Pudete svegliate u dispusitivu da u modu Sleep o Idle
- Fonte di clock selezziunata da l'utilizatori in modalità Run
- Funziona da LPRC in modalità Sleep/Idle
Diagramma di bloccu di Timer Watchdog
Nota
- U comportamentu di reset WDT dopu un avvenimentu specificu di cambiamentu di u clock dipende di u dispositivu. Per piacè riferite à a sezione "Watchdog Timer" in a scheda di dati specifichi di u dispositivu per una descrizzione di l'eventi di cambiamentu di clock chì sguassate u WDT.
- I fonti di clock dispunibuli sò dipende di u dispusitivu.
REGISTRI DI CONTROLLO TIMER WATCHDOG
I moduli WDT sò cumposti da i seguenti Registri di Funzioni Speciali (SFR):
- WDTCONL: Registru di cuntrollu di Timer Watchdog
Stu registru hè adupratu per attivà o disattivà u Watchdog Timer è attiva o disattiva l'operazione di finestra. - WDTCONH: Chjave di u Timer Watchdog Register
Stu registru hè utilizatu per sguassà u WDT per prevene un time-out. - RCON: Reset Control Register (2)
Stu registru indica a causa di un Reset.
Registrate Mappa
A Tabella 2-1 furnisce un breve riassuntu di i registri di moduli WDT cunnessi. I registri currispundenti appariscenu dopu à u riassuntu, seguitu da una descrizzione dettagliata di ogni registru.
Table 2-1: Watchdog Timer Register Map
Nome | Range Bit | Bits | |||||||||||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | ||
WDTCONL | 15: 0 | ON(3) | — | — | RUNDIV [4: 0](2) | CLKSEL[1:0](2) | SLPDIV [4: 0](2) | WDTWINEN(3) | |||||||||
WDTCONH | 15: 0 | WDTCLRKEY[15:0] | |||||||||||||||
RCON(4, 5) | 15: 0 | TRAPR(1) | IOPUWR(1) | — | — | — | — | CM(1) | VREGS(1) | EXTR(1) | SWR(1) | — | WDTO | DORMI | IDLE(1) | BOR(1) | POR(1) |
Legenda: - = micca implementatu, leghje cum'è "0"
Nota
- Questi bits ùn sò micca assuciati cù u modulu WDT.
- Questi bits sò di sola lettura è riflettenu u valore di i bits di cunfigurazione.
- Questi bit riflettenu u statutu per u bit di cunfigurazione se stabilitu. Se u bit hè chjaru, u valore hè cuntrullatu da u software.
- Se i bits di cunfigurazione WDTEN[1:0] sò '11' (non programmati), u WDT hè sempre attivatu, indipendentemente da l'impostazione di bit ON (WDTCONL[15]).
- Tutti i bits di statutu Reset ponu esse stabiliti o sbulicati in u software. Setting unu di sti bits in u software ùn pruvucarà micca un Reset di u dispusitivu.
Registru 2-1: WDTCONL: Registru di cuntrollu di Timer Watchdog
R/W-0 | U-0 | U-0 | Ry | Ry | Ry | Ry | Ry |
ON( 1 ,2 ) | — | — | RUNDIV [4: 0](3) | ||||
bit 15 | bit 8 |
Ry | Ry | Ry | Ry | Ry | Ry | Ry | R/W/HS-0 |
CLKSEL[1:0](3, 4) | SLPDIV [4: 0](3) | WDTWINEN(1) | |||||
bit 7 | bit 0 |
- bit 15 ON: Watchdog Timer Enable bit (1,2)
1 = Abilita u Timer Watchdog se ùn hè micca attivatu da a cunfigurazione di u dispusitivu
0 = Disabilita u Timer Watchdog s'ellu era attivatu in u software - bit 14-13 Implementatu: Leghjite cum'è '0'
- bit 12-8 RUNDIV[4:0]: WDT Run Mode Postscaler Status bits (3)
- bit 7-6 CLKSEL[1:0]: WDT Run Mode Clock Select Status bits (3,4)
11 = Oscillatore LPRC
10 = Oscillatore FRC
01 = Riservatu
00 = SYSCLK - bit 5-1 SLPDIV[4:0]: Modu Sleep è Idle Mode WDT Postscaler Status bits (3)
- bit 0 WDTWINEN: Finestra di Timer Watchdog Abilita bit (1)
1 = Attiva u modalità Finestra
0 = Disabilita u modalità Finestra
Nota
- Questi bit riflette u statutu di u bit di cunfigurazione se u bit hè impostatu. Se u bit hè sbulicatu, u valore hè cuntrullatu da u software.
- U software di l'utilizatore ùn deve micca leghje o scrive l'SFR di u perifericu in u ciculu SYSCLK immediatamente dopu à l'istruzzioni chì sguassate u bit ON di u modulu.
- Questi bits sò di sola lettura è riflettenu u valore di i bits di cunfigurazione.
- I fonti di clock dispunibuli sò dipende di u dispusitivu. Per piacè riferite à u capitulu "Watchdog Timer" in a scheda di dati specifichi di u dispusitivu per a dispunibilità.
Registru 2-2: WDTCONH: Registru Chjave Timer Watchdog
W-0 W-0 W-0 W-0 W-0 W-0 W-0 W-0 |
WDTCLRKEY[15:8] |
bit 15 bit 8 |
W-0 W-0 W-0 W-0 W-0 W-0 W-0 W-0 |
WDTCLRKEY[7:0] |
bit 7 bit 0 |
Legenda
R = bit leggibile W = bit scrivibile U = bit non implementato, letto come '0'
-n = Valeur à POR '1' = Bit hè impostatu '0' = Bit hè cancellatu x = Bit hè scunnisciutu
- bit 15-0 WDTCLRKEY[15:0]: Timer Watchdog Cancella i bit di chjave
Per sguassà u Watchdog Timer per prevene un time-out, u software deve scrive u valore, 0x5743, à questu locu utilizendu una sola scrittura di 16-bit.
Registru 2-3: RCON: Reset Control Register (2)
R/W-0 | R/W-0 | U-0 | U-0 | R/W-0 | U-0 | R/W-0 | R/W-0 |
TRAPR(1) | IOPUWR(1) | — | — | VREGSF(1) | — | CM(1) | VREGS(1) |
bit 15 | bit 8 |
R/W-0 | R/W-0 | U-0 | R/W-0 | R/W-0 | R/W-0 | R/W-1 | R/W-1 |
EXTR(1) | SWR(1) | — | WDTO | DORMI | IDLE(1) | BOR(1) | POR(1) |
bit 7 | bit 0 |
Legenda
R = bit leggibile W = bit scrivibile U = bit non implementato, letto come '0'
-n = Valeur à POR '1' = Bit hè impostatu '0' = Bit hè cancellatu x = Bit hè scunnisciutu
- bit 15 TRAPR: Trap Reset Flag Bit (1)
1 = Un Reset di Conflittu Trap hè accadutu
0 = Un Reset di Conflittu Trap ùn hè micca accadutu - bit 14 IOPUWR: Opcode illegale o W Register Access Reset Flag Bit (1)
1 = Una rilevazione di opcode illegale, un modu di indirizzu illegale o un registru W non inizializatu utilizatu cum'è Puntatore di Indirizzu hà causatu un Reset
0 = Un opcode illegale o un registru W non inizializatu Reset ùn hè micca accadutu - bit 13-12 Implementatu: Leghjite cum'è '0'
- bit 11 VREGSF: Flash Voltage Standby du régulateur pendant le bit de sommeil (1)
1 = Flash voltagu regulatore hè attivu durante u sonnu
0 = Flash voltagU regulatore entra in modalità Standby durante u Sleep - bit 10 Implementatu: Leghjite cum'è '0'
- bit 9 CM: Configurazione Mismatch Flag bit (1)
1 = Un Reset di Mismatch di cunfigurazione hè accadutu
0 = Un Reset di Mismatch di cunfigurazione ùn hè micca accadutu - bit 8 VREGS: Voltage Standby du régulateur pendant le bit de sommeil (1)
1 = Voltagu regulatore hè attivu durante u sonnu
0 = VoltagU regulatore entra in modalità Standby durante u Sleep - bit 7 EXTR: Reset Esterno (MCLR) Pin Bit(1)
1 = Un Reset Master Clear (pin) hè accadutu
0 = Un Reset Master Clear (pin) ùn hè micca accadutu - bit 6 SWR: RESET di software (istruzioni) Flag bit (1)
1 = Un'istruzione RESET hè stata eseguita
0 = Un'istruzione RESET ùn hè micca stata eseguita - bit 5 Implementatu: Leghjite cum'è '0'
- bit 4 WDTO: Watchdog Timer Time-out Flag bit
1 = U time-out WDT hè accadutu
0 = U time-out WDT ùn hè micca accadutu - bit 3 SLEEP: Sveglia da u sonnu Flag bit
1 = U dispusitivu hè statu in modu Sleep
0 = U dispositivu ùn hè micca statu in modu Sleep
Nota
- Questi bits ùn sò micca assuciati cù u modulu WDT.
- Tutti i bits di statutu Reset ponu esse stabiliti o sbulicati in u software. Setting unu di sti bits in u software ùn pruvucarà micca un Reset di u dispusitivu.
Registru 2-3: RCON: Reset Control Register (2)
- bit 2 IDLE: Sveglia da Idle Flag bit (1)
1 = U dispusitivu hè statu in modalità Idle
0 = U dispositivu ùn hè micca statu in modalità Idle - bit 1 BOR: marrone-out Reset Flag Bit (1)
1 = Un Reset di Brown-out hè accadutu
0 = Un Reset Brown-out ùn hè micca accadutu - bit 0 POR: Power-on Reset Flag Bit (1)
1 = Un Reset di Power-on hè accadutu
0 = Un Reset di Power-on ùn hè micca accadutu
Nota
- Questi bits ùn sò micca assuciati cù u modulu WDT.
- Tutti i bits di statutu Reset ponu esse stabiliti o sbulicati in u software. Setting unu di sti bits in u software ùn pruvucarà micca un Reset di u dispusitivu.
OPERAZIONE TIMER WATCHDOG
A funzione primaria di u Watchdog Timer (WDT) hè di resettate u processatore in casu di malfunzionamentu di u software, o svegliate u processatore in casu di time-out mentre in Sleep o Idle.
U WDT hè custituitu da dui timers indipendenti, unu per u funziunamentu in modalità Run è l'altru per u funziunamentu in u modu Power Save. A fonte di u clock per u modalità Run WDT hè selezziunata da l'utilizatori.
Ogni timer hà un postscaler indipendente, programmabile da l'utilizatori. I dui timers sò cuntrullati via un solu bit ON; ùn ponu esse operatu indipindente.
Se u WDT hè attivatu, u contatore WDT appropritatu aumenterà finu à ch'ellu sbocca o "time out".
Un time-out WDT in modalità Run genererà un Reset di u dispositivu. Per prevene un Reset di Time-out WDT in modalità Run, l'applicazione d'utilizatore deve periodicamente u serviziu WDT. Un time-out in un modu Power Save vi svegliate u dispusitivu.
Nota: L'Oscillatore LPRC hè attivatu automaticamente ogni volta chì hè adupratu cum'è fonte di clock WDT è u WDT hè attivatu.
Modi di funziunamentu
U WDT hà dui modi di funziunamentu: Modu Non-Finestra è Modu Finestra Programmable. In u modu Non-Finestra, u software deve periodicamente sguassate u WDT in ogni mumentu menu di quellu di u periodu WDT per impedisce un Reset WDT (Figura 3-1). U modu non-Finestra hè sceltu per sguassate u bit di attivazione di a finestra di Watchdog Timer (WDTWINEN) (WDTCONL[0]).
In u modu di Finestra Programmable, u software pò sguassate u WDT solu quandu u contatore hè in a so finestra finale prima di un time-out. L'eliminazione di u WDT fora di sta finestra pruvucarà un Reset di u dispositivu (Figura 3-2). Ci hè quattru opzioni di dimensione di a finestra: 25%, 37.5%, 50% è 75% di u periodu WDT tutale. A dimensione di a finestra hè stabilita in a cunfigurazione di u dispusitivu. U modu di Finestra Programmable ùn hè micca applicabile in u modu Power Save.
Figura 3-1: Modu WDT Non-Finestra
Figura 3-2: Modu WDT di Finestra Programmable
Finestra programmabile di Watchdog Timer
A dimensione di a finestra hè determinata da i bits di cunfigurazione, WDTWIN [1: 0] è RWDTPS [4: 0]. In u modu di Finestra Programmable (WDTWINEN = 1), u WDT deve esse sbulicatu basatu annantu à l'impostazione di i bits di cunfigurazione di a dimensione di a finestra, WDTWIN [1: 0] (vede a Figura 3-2). Questi paràmetri di bit sò:
- 11 = A finestra WDT hè 25% di u periodu WDT
- 10 = A finestra WDT hè 37.5% di u periodu WDT
- 01 = A finestra WDT hè 50% di u periodu WDT
- 00 = A finestra WDT hè 75% di u periodu WDT
Se u WDT hè sguassatu prima di a finestra permessa, o se u WDT hè permessu di time-out, un Reset di u dispositivu accade. U Modu Finestra hè utile per resettà u dispositivu durante l'esecuzione inespettata rapida o lenta di una parte critica di u codice. U funziunamentu di a finestra s'applica solu à u modu WDT Run. U modu WDT Sleep opera sempre in modalità Non-Finestra.
Abilitazione è disattivazione di u WDT
U WDT hè attivatu o disattivatu da a cunfigurazione di u dispusitivu, o cuntrullatu da u software scrivendu un '1' à u bit ON (WDTCONL[15]). Vede u Registru 2-1 per più dettagli.
CONFIGURAZIONE DEI DISPOSITIVI CONTROLLATE WDT
Se u bit di Configurazione FWDTEN hè impostatu, u WDT hè sempre attivatu. U bit di cuntrollu ON (WDTCONL[15]) rifletterà questu leghjendu un '1'. In questu modu, u bit ON ùn pò micca esse sbulicatu in u software. U bit di Configurazione FWDTEN ùn serà micca sguassatu da alcuna forma di Reset. Per disattivà u WDT, a cunfigurazione deve esse riscritta à u dispusitivu. U modu di finestra hè attivatu sguassendu u bit di Configurazione WINDIS.
Nota: U WDT hè attivatu per automaticamente in un dispositivu micca programatu.
WDT cuntrullatu da u SOFTWARE
Se u bit di Configurazione FWDTEN hè "0", u modulu WDT pò esse attivatu o disattivatu (a cundizione predeterminata) da u software. In questu modu, u bit ON (WDTCONL[15]) riflette u statutu di u WDT sottu u cuntrollu di u software; "1" indica chì u modulu WDT hè attivatu è "0" indica chì hè disattivatu.
WDT Postscaler
U WDT hà dui postscalers programmabili per l'utilizatori: unu per u modu Run è l'altru per u modu Power Save. I bits di cunfigurazione RWDTPS[4:0] stabiliscenu u postscaler in modalità Run è i bits di cunfigurazione SWDTPS[4:0] stabiliscenu u postscaler di modu Power Save.
Nota: I nomi di bit di cunfigurazione per u valore di postscaler pò varià. Vede a scheda di dati specifichi di u dispusitivu per i dettagli.
CONFIGURAZIONE DEI DISPOSITIVI MODALITÀ FINESTRA CONTROLLATA
U modu di finestra pò esse attivatu sguassendu u bit di cunfigurazione, WINDIS. Quandu u modu WDT Window hè attivatu da a cunfigurazione di u dispusitivu, u bit WDTWINEN (WDTCONL[0]) serà stabilitu è ùn pò micca esse sbulicatu da u software.
MODALITÀ FINESTRA CONTROLLATA DA SOFTWARE
Se u bit di Configurazione WINDIS hè "1", u modu di Finestra Programmable WDT pò esse attivatu o disattivatu da u bit WDTWINEN (WDTCONL[0]). Un '1' indica chì u modu di Finestra Programmable hè attivatu è un '0' indica chì u Modu di Finestra Programmable hè disattivatu.
WDT Postscaler è Selezzione di Periudu
U WDT hà dui postscalers 5-bit indipendenti, unu per u modu Run è l'altru per u modu Power Save, per creà una larga varietà di periodi di time-out. I postscalers furniscenu 1: 1 à 1: 2,147,483,647 ratios divisori (vede Table 3-1). I paràmetri di postscaler sò selezziunati cù a cunfigurazione di u dispositivu. U periodu di time-out WDT hè sceltu da a cumminazione di a fonte di u clock WDT è u postscaler. Vede l'Equazione 3-1 per u calculu di u periodu WDT
Equation 3-1: WDT Time-out Period Calculation
WDT Time-out Period = (WDT Clock Period) • 2Postscaler
In u modu Sleep, a fonte di u clock WDT hè LPRC è u periodu di time-out hè determinatu da l'impostazione di bit SLPDIV[4:0]. U LPRC, cù una frequenza nominale di 32 kHz, crea un periodu di time-out nominale per u WDT di 1 millisecondu quandu u postscaler hè à u valore minimu.
In u modu Run, a fonte di u clock WDT hè selezziunata. U periodu di time-out hè determinatu da a frequenza di a fonte di u clock WDT è l'impostazione di bit RUNDIV[4:0].
Nota: U periodu di time-out di u modulu WDT hè direttamente ligatu à a frequenza di a fonte di u clock WDT. A frequenza nominale di a fonte di u clock hè dipendente da u dispusitivu. A freccia pò varià in funzione di u voltage è a temperatura. Per piacè riferite à a scheda di dati specifichi di u dispusitivu per e specificazioni di frequenza di clock. I fonti di clock dispunibuli per u modu Run sò dipendenti di u dispositivu. Per piacè riferite à u capitulu "Watchdog Timer" in a scheda di dati di u dispositivu specificu per e fonti dispunibili.
Funzionamentu WDT in Modu Run
Quandu u WDT scade o hè sguassatu fora di a finestra in modalità Finestra, un Reset di u dispositivu hè generatu quandu u contatore NMI scade.
WDT Clock Sources
A fonte di clock in modalità Run WDT hè selezziunata da l'utilizatori. A fonte di u clock hè sceltu da i bits di u dispositivu RCLKSEL [1: 0] (FWDT [6: 5]). U modu WDT Power Save usa LPRC cum'è fonte di clock.
Resetting u WDT (1)
U contatore WDT in modalità Run hè sguassatu da una di e seguenti:
- Qualchese Dispositivu Reset
- Esecuzione di un Command DEBUG
- Rilevazione di un valore di scrittura currettu (0x5743) à i bit WDTCLRKEYx (WDTCONH[15:0]) (consultate Example 3-1)
- Un interruttore di l'orologio: (2)
- Interruttore di clock iniziatu da u firmware
- Start-up à duie velocità
- Avvenimentu di u Monitoru di l'Orologio Fail-Safe (FSCM).
- Cambia l'orologio dopu a sveglia da u sonnu quandu si verifica un cambiamentu di l'orologio automaticu per via di a cunfigurazione di l'oscillatore è l'iniziu à duie velocità hè attivatu da a cunfigurazione di u dispusitivu.
U contatore WDT in modalità Sleep hè resettatu à l'entrata in Sleep.
Nota
- U modu Run WDT ùn hè micca resettatu quandu u dispusitivu entre in un modu Power-Saving.
- U comportamentu di reset WDT dopu un avvenimentu specificu di cambiamentu di u clock dipende da u dispositivu. Per piacè riferite à a sezione "Watchdog Timer" in a scheda di dati specifichi di u dispositivu per una descrizzione di l'eventi di cambiamentu di clock chì sguassate u WDT.
Example 3-1: Sample Code per sguassà u WDT
Tabella 3-1: Parametri di u periodu di time-out WDT
Valori Postscaler | Periudu di Time-out Basatu nantu à u Clock WDT | ||
32 kHz | 8 MHz | 25 MHz | |
00000 | 1 ms | 4 µs | 1.28 µs |
00001 | 2 ms | 8 µs | 2.56 µs |
00010 | 4 ms | 16 µs | 5.12 µs |
00011 | 8 ms | 32 µs | 10.24 µs |
00100 | 16 ms | 64 µs | 20.48 µs |
00101 | 32 ms | 128 µs | 40.96 µs |
00110 | 64 ms | 256 µs | 81.92 µs |
00111 | 128 ms | 512 µs | 163.84 µs |
01000 | 256 ms | 1.024 ms | 327.68 µs |
01001 | 512 ms | 2.048 ms | 655.36 µs |
01010 | 1.024s | 4.096 ms | 1.31072 ms |
01011 | 2.048s | 8.192 ms | 2.62144 ms |
01100 | 4.096s | 16.384 ms | 5.24288 ms |
01101 | 8.192s | 32.768 ms | 10.48576 ms |
01110 | 16.384s | 65.536 ms | 20.97152 ms |
01111 | 32.768s | 131.072 ms | 41.94304 ms |
10000 | 0:01:06 hms | 262.144 ms | 83.88608 ms |
10001 | 0:02:11 hms | 524.288 ms | 167.77216 ms |
10010 | 0:04:22 hms | 1.048576s | 335.54432 ms |
10011 | 0:08:44 hms | 2.097152s | 671.08864 ms |
10100 | 0:17:29 hms | 4.194304s | 1.34217728s |
10101 | 0:34:57 hms | 8.388608s | 2.68435456s |
10110 | 1:09:54 hms | 16.777216s | 5.36870912s |
10111 | 2:19:49 hms | 33.554432s | 10.73741824s |
11000 | 4:39:37 hms | 0:01:07 hms | 21.47483648s |
11001 | 9:19:14 hms | 0:02:14 hms | 42.94967296s |
11010 | 18:38:29 hms | 0:04:28 hms | 0:01:26 hms |
11011 | 1 ghjornu 13:16:58 hms | 0:08:57 hms | 0:02:52 hms |
11100 | 3 ghjorni 2:33:55 hms | 0:17:54 hms | 0:05:44 hms |
11101 | 6 ghjorni 5:07:51 hms | 0:35:47 hms | 0:11:27 hms |
11110 | 12 ghjorni 10:15:42 hms | 1:11:35 hms | 0:22:54 hms |
11111 | 24 ghjorni 20:31:24 hms | 2:23:10 hms | 0:45:49 hms |
INTERRUPTS E RESET GENERATION
Timeout WDT in Modu Run
Quandu u WDT time out in modalità Run, un Reset di u dispositivu hè generatu.
U firmware pò determinà se a causa di u Reset era u time-out WDT in u modu Run testendu u bit WDTO (RCON[4]).
Nota: Riferite à i capituli "Resets" è "Interrupt Controller" in a scheda di dati specifichi di u dispusitivu. Inoltre, riferite à e sezioni "Reset" (DS39712) è "Interrupts" (DS70000600) in "dsPIC33/PIC24 Family Reference Manual" per i dettagli.
Time-out WDT in Modu di risparmiu di energia
Quandu u modulu WDT time out in u modu Power Save, sveglia u dispusitivu è u modu WDT Run ripiglià u conte.
Per detectà una sveglia WDT, u bit WDTO (RCON[4]), u bit SLEEP (RCON[3]) è u bit IDLE (RCON[2]) ponu esse pruvati. Se u bit WDTO hè '1', l'avvenimentu era dovutu à un time-out WDT in un modu Power Save. I bits SLEEP è IDLE ponu esse pruvati per stabilisce se l'avvenimentu WDT hè accadutu mentre u dispusitivu era svegliu o s'ellu era in modalità Sleep o Idle.
Nota: Riferite à i capituli "Resets" è "Interrupt Controller" in a scheda di dati specifichi di u dispusitivu. Inoltre, riferite à e sezioni "Reset" (DS39712) è "Interrupts" (DS70000600) in "dsPIC33/PIC24 Family Reference Manual" per i dettagli.
Svegliate da u Modu di Risparmio Energeticu da un Eventu Non-WDT
Quandu u dispusitivu hè svegliatu da un modu Power Save da una interruzzione NMI non-WDT, u modu Power Save WDT hè tenutu in Reset è u modu WDT Run cuntinueghja à cuntà da u valore di pre-power save count value.
RESET CAUSA È EFFETTU
Determinà a Causa di un Reset
Per stabilisce se un Reset WDT hè accadutu, u bit WDTO (RCON[4]) pò esse pruvatu. Se u bit WDTO hè '1', u Reset era dovutu à un time-out WDT in modalità Run. U software deve sguassate u bit WDTO per permette a determinazione curretta di a fonte di un Reset sussegwente.
Effetti di Diversi Resets
Qualchese forma di reset di u dispositivu sguasserà u WDT. U Reset torna i registri WDTCONH/L à u valore predeterminatu è u WDT serà disattivatu, salvu chì ùn hè attivatu da a cunfigurazione di u dispusitivu.
Nota: Dopu un Reset di u dispusitivu, u bit WDT ON (WDTCONL[15]) rifletterà u statu di u bit FWDTEN (FWDT[15]).
OPERAZIONE IN MODALITÀ DEBUG E POWER-SAVING
U funziunamentu di u WDT in i modi di risparmiu di energia
U WDT, s'ellu hè attivatu, cuntinueghja u funziunamentu in u modu Sleep o in modalità Idle è pò esse usatu per svegliate u dispusitivu. Questu permette à u dispusitivu di stà in modalità Sleep o Idle finu à chì u WDT scade o un'altra interruzzione sveglia u dispusitivu. Se u dispusitivu ùn rientra in u modu Sleep o Idle dopu un svegliu, u WDT deve esse disattivatu o periodicamente servitu per impedisce un NMI in modalità Run WDT.
OPERAZIONE WDT IN MODU SLEEP
U modulu WDT pò esse usatu per svegliate u dispusitivu da u modu Sleep. Quandu entra in u modu di Sleep, u cuntatore di u modu di Run WDT cessà di cuntà è u modu di risparmiu di energia WDT cumencia à cuntà da u statu di reset, finu à u tempu, o u dispusitivu hè svegliatu da una interruzzione. Quandu u WDT time out in modalità Sleep, u dispusitivu si sveglia è ripiglià l'esecuzione di codice, stabilisce u bit WDTO (RCON[4]) è ripiglia u modu Run WDT.
OPERAZIONE WDT IN MODE IDLE
U modulu WDT pò esse usatu per svegliate u dispusitivu da u modalità Idle. Quandu entra in u modu Idle, u cuntatore di u modu di Run WDT cessà di cuntà è u modu di risparmiu d'energia WDT principia à cuntà da u statu di reset, finu à u tempu, o u dispusitivu hè svegliatu da una interruzzione. U dispusitivu si sveglia è ripiglià l'esekzione di codice, stabilisce u bit WDTO (RCON[4]) è ripiglia u modu Run WDT.
Ritardi di tempu durante u svegliu
Ci sarà un ritardu di tempu trà l'avvenimentu WDT in Sleep è u principiu di l'esekzione di codice. A durata di stu ritardu hè custituita da u tempu di start-up per l'oscillatore in usu. A cuntrariu di una sveglia da u modu Sleep, ùn ci sò micca ritardu di tempu assuciatu cù u svegliu da u modu Idle. U clock di u sistema funziona durante u modu Idle; dunque, ùn ci hè micca bisognu di ritardi di start-up à u svegliu.
WDT Clock Sources in Power Save Mode
A fonte di u clock WDT per u modu Power Save ùn hè micca selezziunate da l'utilizatori. A fonte di u clock hè LPRC.
Operazione WDT in Modu Debug
U WDT deve esse disattivatu in u modu Debug per impediscenu un time-out.
Questa sezione elenca e note di l'applicazione chì sò ligati à sta sezione di u manuale. Queste note d'applicazione ùn ponu micca esse scritte specificamente per a famiglia di dispositivi dsPIC33 / PIC24, ma i cuncetti sò pertinenti è ponu esse aduprati cù mudificazione è pussibuli limitazioni. L'attuali note di l'applicazione in relazione à u modulu Dual Watchdog Timer sò:
Nota: Visita u Microchip websitu (www.microchip.com) per note applicative supplementari è codice examples per a famiglia di dispusitivi dsPIC33/PIC24.
STORIA REVISIONE
Revisione A (marzu 2016)
Questa hè a versione iniziale di stu documentu.
Revisione B (ghjugnu 2018)
Cambia u nome di a famiglia di u dispositivu in dsPIC33/PIC24.
Elimina a filigrana di l'Informazione Avanzata da i piè di pagina.
Revisione C (ferraghju 2022)
Updates Table 2-1 è Table 3-1.
Aghjurnamenti Registru 2-1.
Aggiornamenti Sezione 3.1 "Modalità di Funzionamentu", Sezione 3.2 "Watchdog Timer Programmable Window", Sezione 3.3 "Attivazione è Disattivazione di u WDT", Sezione 3.4.1 "Dispositivu".
Modu di Finestra Cuntrullata di Configurazione", Sezione 3.4.2 "Modu di Finestra Controlled Software", Sezione 3.7 "WDT Clock Sources" è Sezione 6.1.2 "Operazione WDT in Modu Idle".
U standard Watchdog Timer usa a terminologia "Maestru" è "Slave". A terminologia equivalente Microchip utilizata in stu documentu hè "Main" è "Secundaria", rispettivamente
Nota i seguenti dettagli di a funzione di prutezzione di codice nantu à i prudutti Microchip:
- I prudutti Microchip rispondenu à e specificazioni cuntenute in a so specifica Scheda di Dati Microchip.
- Microchip crede chì a so famiglia di prudutti hè sicura quandu s'utilice in a manera prevista, in e specificazioni operative, è in cundizioni normali.
- Microchip valorizza è prutegge in modu aggressivu i so diritti di pruprietà intellettuale. I tentativi di violazione di e funzioni di prutezzione di u codice di u produttu Microchip sò strettamente pruibiti è ponu violà a Digital Millennium Copyright Act.
- Nè Microchip nè un altru fabricatore di semiconductor pò guarantisci a sicurità di u so codice. A prutezzione di u codice ùn significa micca chì guarantimu chì u pruduttu hè "unbreakable". A prutezzione di u codice hè in constante evoluzione. Microchip hè impegnatu à migliurà continuamente e funzioni di prutezzione di codice di i nostri prudutti.
Questa publicazione è l'infurmazioni quì ponu esse aduprate solu cù i prudutti Microchip, cumpresu per cuncepisce, pruvà è integrà i prudutti Microchip cù a vostra applicazione. L'usu di sta infurmazione in ogni altra manera viola questi termini. L'infurmazioni riguardanti l'applicazioni di u dispositivu sò furnite solu per a vostra comodità è ponu esse rimpiazzate da l'aghjurnamenti. Hè a vostra rispunsabilità per assicurà chì a vostra applicazione risponde à e vostre specificazioni. Cuntattate u vostru uffiziu di vendita Microchip locale per supportu supplementu o, uttene supportu supplementu à
https://www.microchip.com/en-us/support/design-help/client-supportservices.
QUESTA INFORMAZIONE hè furnita da u microchip "AS IS". MICROCHIP NON FACE NI RIPRESENTAZIONI O GARANZIE DI ALCUNA TIPI SIA ESPRESSA O IMPLICITA, SCRITTA O ORALE, STATUTARIA O ALTRE, RELATIVA A L'INFORMAZIONI INCLUSI, MA NON LIMITATE A ALCUNA GARANZIA IMPLICITA DI NON VIOLAZIONE, GARANTIA DI COMMERCIALE, GARANTIA DI POSSIBILITÀ, GARANTIA DI PARTECIPAZIONE, GARANTIA PER UNA COMMERCIALE. ATED TO A SO CONDIZIONE, QUALITÀ, O PRESTAZIONI.
IN NESSUN CASU MICROCHIP SERA RESPONSABILE PER QUALSIASI PERDITA INDIRETTA, SPECIALE, PUNITIVE, INCIDENTALE, O CONSEGUENTE, DANNI, COSTO, O SPESE DI QUALUNQUE TIPI RELATATI À L'INFORMAZIONI O U U U U U SO, IN QUANTO CAUSATE, ANCHE QUANTO ESE ADVERTIMENTO. PUSSIBILITÀ OR I DANNI SONT PREVISIBILI. À LA MESSA ALTERNATA PERMISSATA DA LEGGE, A RESPONSABILITÀ TOTALE DI MICROCHIP PER TUTTE LE RECLAMAZIONI IN QUALSIA MANIERA RELATATA À L'INFORMAZIONI O U U SO USU NON SUPERARÀ L'IMPORTU DI TARIFFE, SE CUALQUIE, CHE AVRAI PAGATA DIRETTAMENTE À MICROCHIP PER L'INFORMAZIONI.
L'usu di i dispositi Microchip in l'applicazioni di supportu di vita è / o di sicurezza hè interamente à u risicu di u cumpratore, è u cumpratore accetta di difende, indemnizà è mantene innocu Microchip da qualsiasi danni, rivendicazioni, vestiti, o spese risultanti da tali usu. Nisuna licenza hè trasmessa, implicitamente o altrimenti, sottu à alcunu diritti di pruprietà intellettuale di Microchip, salvu s'ellu ùn hè micca dichjaratu altrimenti.
Marchi
U nome è u logu di Microchip, u logu di Microchip, Adaptec, AnyRate, AVR, logo AVR, AVR Freaks, BesTime, BitCloud, CryptoMemory, CryptoRF, dsPIC, flexPWR, HELDO, IGLOO, JukeBlox, KeeLoq, Kleer, LANCheckSty, LinkluMDs, maX, maXTouch, MediaLB, megaAVR, Microsemi, Logo Microsemi, MOST, MOST logo, MPLAB, OptoLyzer, PIC, picoPower, PICSTART, PIC32 logo, PolarFire, Prochip Designer, QTouch, SAM-BA, SenGenuity, SpyNIC, SST, SST Logo, SuperFlash , Symmetricom, SyncServer, Tachyon, TimeSource, tinyAVR, UNI/O, Vectron è XMEGA sò marchi registrati di Microchip Technology Incorporated in i Stati Uniti è in altri paesi. AgileSwitch, APT, ClockWorks, The Embedded Control Solutions Company, EtherSynch, Flashtec, Hyper Speed Control, HyperLight Load, IntelliMOS, Libero, motorBench, mTouch, Powermite 3, Precision Edge, ProASIC, ProASIC Plus, ProASIC Plus logo, QuietWire, SmartFusion, SyncWorld, Temux, TimeCesium, TimeHub, TimePictra, TimeProvider, TrueTime, WinPath, è ZL sò marchi registrati di Microchip Technology Incorporated in USA Adjacent Key Suppression, AKS, Analog-for-the-Digital Age, Any Capacitor, AnyIn, AnyOut, Commutazione aumentata, BlueSky, BodyCom, CodeGuard, CryptoAuthentication, CryptoAutomotive, CryptoCompanion, CryptoController, dsPICDEM, dsPICDEM.net, Dynamic Average Matching, DAM, ECAN, Espresso T1S, EtherGREEN, GridTime, IdealBridge, In-Programming, NICP, In-Programming Parallelamentu Intelligente, Connettività Inter-Chip, JitterBlocker, Knob-on-Display, maxCrypto, maxView, memBrain, Mindi, MiWi, MPASM, MPF, MPLAB Certified logo, MPLIB, MPLINK, MultiTRAK, NetDetach, NVM Express, NVMe, Omniscient Code Generation, PICDEM, PICDEM.net, PICkit, PICtail, PowerSmart, PureSilicon, QMatrix, REALICE , Ripple Blocker, RTAX, RTG4, SAM-ICE, Serial Quad I/O, simpleMAP, SimpliPHY, SmartBuffer, SmartHLS, SMART-IS, storClad, SQI, SuperSwitcher, SuperSwitcher II, Switchtec, SynchroPHY, Total Endurance, TSHARC, USBCheck, VariSense, VectorBlox, VeriPHY, ViewSpan, WiperLock, XpressConnect è ZENA sò marchi di Microchip Technology Incorporated in i Stati Uniti è in altri paesi.
SQTP hè una marca di serviziu di Microchip Technology Incorporated in i Stati Uniti
U logu Adaptec, Frequency on Demand, Silicon Storage Technology, Symmcom è Trusted Time sò marchi registrati di Microchip Technology Inc. in altri paesi. GestIC hè una marca registrata di Microchip Technology Germany II GmbH & Co. KG, una filiale di Microchip Technology Inc., in altri paesi.
Tutti l'altri marchi citati quì sò pruprietà di e so cumpagnie rispettive.
© 2016-2022, Microchip Technology Incorporated è i so
suciali.
Tutti i diritti riservati.
ISBN: 978-1-5224-9893-3
Vendite è serviziu in u mondu sanu
AMERICA
Uffiziu Corporate
2355 West Chandler Blvd.
Chandler, AZ 85224-6199
Tel: 480-792-7200
Fax: 480-792-7277
Assistenza tecnica:
http://www.microchip.com/support
Web Indirizzu: www.microchip.com
Documenti / Risorse
![]() |
MICROCHIP dsPIC33 Dual Watchdog Timer [pdfGuida di l'utente dsPIC33 Doppiu Timer Watchdog, dsPIC33, Doppiu Timer Watchdog, Timer Watchdog |