TimersCounters do 8051 Disciplina Microcontroladores Prof Remy Eskinazi

  • Slides: 12
Download presentation
Timers/Counters do 8051 Disciplina: Microcontroladores Prof. Remy Eskinazi, MSc UPE - POLI 1

Timers/Counters do 8051 Disciplina: Microcontroladores Prof. Remy Eskinazi, MSc UPE - POLI 1

Registradores dos T/C’s 7 0 TH 1 (0 X 8 D) T/C 1 TL

Registradores dos T/C’s 7 0 TH 1 (0 X 8 D) T/C 1 TL 1 (0 X 8 B) TH 0 (0 X 8 C) T/C 0 TL 0 (0 X 8 A) TF 1 GATE 1 TR 1 T/C 1 TF 0 M 11 TR 0 M 10 IE 1 GATE 0 IT 1 T/C 0 IE 0 M 01 IT 0 M 00 TCON TMOD (0 X 88) (0 X 89) 2

Registrador TCON TF 1 Símbolo TF 1 Posição TCON. 7 TR 1 TCON. 6

Registrador TCON TF 1 Símbolo TF 1 Posição TCON. 7 TR 1 TCON. 6 TF 0 TCON. 5 TR 0 TCON. 4 IE 1 TCON. 3 IT 1 TCON. 2 IE 0 TCON. 1 IT 0 TCON. 0 TR 1 TF 0 TR 0 IE 1 IT 1 IE 0 IT 0 TCON (0 X 88) Nome e Significado Flag de overflow do Timer /Contador 1 : Setado por hardware no overflow do Timer /contador 1. Limpado por hardware quando o microprocessador vetoriza (endereça) a sub-rotina de atendimento a fonte de interrupção do Timer /Contador 1 (001 Bh). Bit de controle de liga/desliga do Timer /Contador 1 : Setado/Limpado por software para ligar ou desligar o Timer /contador 1. Flag de overflow do Timer /Contador 0 : Setado por hardware no overflow do Timer /contador 0. Limpado por hardware quando o microprocessador vetoriza (endereça) a sub-rotina de atendimento a fonte de interrupção do Timer /Contador 1 (000 Bh). Bit de controle de liga/desliga do Timer /Contador 0 : Setado/Limpado por software para ligar ou desligar o Timer /contador 0. Flag de detecção de borda da interrupção externa 1 : Setado/Limpado por hardware sempre quando uma borda de descida da fonte de interrupção externa é detectada. Limpado quando a sub-rotina de atendimento a fonte de interrupção 1 é processada. : Setado/Limpado por Bit de controle do tipo da interrupção 1 software para especificar o tipo de detecção da interrupção externa 1, se é por borda de descida ou nível baixo. hardware Flag de detecção de borda da interrupção externa 1 : Setado/Limpado por sempre quando uma borda de descida da fonte de interrupção externa é detectada. Limpado quando a sub-rotina de atendimento a fonte de interrupção 0 é processada. Bit de controle do tipo da interrupção 0 : Setado/Limpado por software para especificar o tipo de detecção da interrupção externa 0, se é por borda de descida ou nível baixo. 3

Registrador TMOD GATE 1 T/C 1 M 10 GATE 0 T/C 0 M 01

Registrador TMOD GATE 1 T/C 1 M 10 GATE 0 T/C 0 M 01 M 00 TMOD (0 X 89) 4

Registrador TMOD GATE 1 T/C 1 M 10 GATE 0 T/C 0 M 01

Registrador TMOD GATE 1 T/C 1 M 10 GATE 0 T/C 0 M 01 M 00 TMOD (0 X 89) 5

Modo 0 dos T/Cs Oscilador 12 Flag de Inter. Controle C/T=0 TLX 5 THX

Modo 0 dos T/Cs Oscilador 12 Flag de Inter. Controle C/T=0 TLX 5 THX 8 TFX C/T=1 TX pino Registradores de contagem TRX Porta AND Interrupção Timer/Contador no Modo 0 de operação (Prescaler: 13 bits de contagem). GATE Por ta OR X = 0 ou 1 INTX 6

Modo 1 dos T/Cs Oscilador 12 Flag de Inter. Controle C/T=0 TLX 8 THX

Modo 1 dos T/Cs Oscilador 12 Flag de Inter. Controle C/T=0 TLX 8 THX 8 TFX C/T=1 TX pino Registradores de contagem TRX Porta AND Interrupção Timer/Contador no Modo 1 de operação (Contagem plena: 16 bits de contagem). GATE Por ta OR X = 0 ou 1 INTX 7

Modo 2 dos T/Cs Oscilador 12 Controle C/T=0 Registrador de contagem TLX 8 Flag

Modo 2 dos T/Cs Oscilador 12 Controle C/T=0 Registrador de contagem TLX 8 Flag de Inter. TFX C/T=1 Interrupção TX pino Recarregamento TRX Porta AND THX 8 X = 0 ou 1 GATE Por ta OR INTX Timer/Contador no Modo 2 de operação (8 bits de contagem com recarga). 8

Modo 3 dos T/Cs Oscilador 12 Controle C/T=0 Registrador de contagem TL 08 Flag

Modo 3 dos T/Cs Oscilador 12 Controle C/T=0 Registrador de contagem TL 08 Flag de Inter. TF 0 C/T=1 T 0 pino Interrupção TR 0 X = 0 ou 1 Porta AND GATE Timer/Contador 0 no Modo 3 de operação (8 bits de contagem). Porta OR INT 0 Controle Oscilador TH 08 12 Flag de Inter. TF 1 Interrupção TR 1 9

M 1 x M 0 x CKint 0 CK TLx Prescaler Bits 0 4

M 1 x M 0 x CKint 0 CK TLx Prescaler Bits 0 4 THx 15 TFx Contagem Tx 0 0 Modo 0: Contador 8 bits c/ preescaler C/T 0 TRx TLx Contagem GATEx 0 1 THx 15 TFx Contagem Modo 1: Contagem plena INTx TFx (X =1 ou 0) 0 TLx Contagem 1 0 TF 1 TR 1 TF 0 TR 0 IE 1 IT 1 IE 0 THx 15 Recarga Modo 2: Recarga automática IT 0 TF 0 TCON 15 0 GATE 1 T/C 1 M 10 GATE 0 T/C 0 M 01 TMOD TL 0 M 00 TR 0 Timers / Counters - 8051 CK TR 1 1 1 TF 1 TH 0 10 Modo 3: 2 Contadores Independentes 8 bits

Geração de Delay de 1 s INÍCIO R 0 20 d 65. 535 -

Geração de Delay de 1 s INÍCIO R 0 20 d 65. 535 - 50. 000 15535 T 1 15. 535 d Liga Timer N TF = 1 ? S R 0 - 1 N R 0 = 0 ? S RET 11

Geração de Delay de 1 s INÍCIO T 1 15. 000 d R 0

Geração de Delay de 1 s INÍCIO T 1 15. 000 d R 0 20 d 65. 536 - 50. 000 15536 Liga Timer N TF = 1 ? S R 0 - 1 Repetir utilizando interrupções N R 0 = 0 ? S RET 12