A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timers - PIC16F877A Jadsonlee da Silva Sá.

Apresentações semelhantes


Apresentação em tema: "Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timers - PIC16F877A Jadsonlee da Silva Sá."— Transcrição da apresentação:

1 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timers - PIC16F877A Jadsonlee da Silva Sá Jadsonlee.sa@univasf.edu.br www.univasf.edu.br/~jadsonlee.sa

2 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Introdução O PIC16F877A possui três módulos timers: –Módulo Timer 0. –Módulo Timer 1. –Módulo Timer 2. Podem ser utilizados como temporizadores ou como contadores (exceto timer 2).

3 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Introdução Temporizador. 8 e 16 bits

4 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Introdução Contador. –Pulsos externos (via pinos) são utilizados para incrementar o valor do registrador. –O tempo não é determinado, apenas eventos são contados.

5 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 0 Características. –Registrador de 8 bits. Pode ser lido ou escrito. –Prescaler de 8 bits configurado via software (compartilhado com o watchdog timer). –Seleção de clock interno ou externo. –Interrupção no overflow de FFh para 00h. –Seleção de borda do clock externo.

6 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 0 Registradores associados. –TMR0  Registrador utilizado para contar o tempo (temporizador) ou contar eventos (contador) – Bancos 0 e 2. –INTCON  Habilitar e sinalizar interrupções TMR0 – Todos os bancos. –OPTION_REG  Configuração do timer0 – Bancos 1 e 3.

7 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 0 OPTION_REG.

8 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 0 INTCON.

9 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 0 Temporizador. –T0CS = 0 de OPTION_REG. –O módulo timer incrementará a cada ciclo de instrução (sem prescaler). –Se TMR0 for escrito, o incremento será inibido pelos dois ciclos de instruções seguintes.

10 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 0 Contador. –T0CS = 1 de OPTION_REG. –Timer0 será incrementado na borda de descida ou de subida do pino RA4/T0CKI. –Em OPTION_REG, T0SE = 0 (subida) e T0SE = 1 (descida).

11 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 0 Interrupção TMR0. –Gerada quando ocorre um overflow de FFh para 00h no registrador TMR0. –O overflow seta o bit TMR0IF de INTCON. –A interrupção ocorre se TRM0IE for setado. –O bit TMR0IF deve ser zerado via software. –Esta interrupção não pode “acordar” o processador de um SLEEP, pois o timer é desligado durante um SLEEP.

12 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 0 Exemplo: Temporizador 0 - Assembly.

13 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 0 Exemplo: Temporizador 0 - Assembly.

14 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 0 Exemplo: Temporizador 0 – Linguagem C.

15 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 1 Temporizador/contador de 16 bits. –Dois registradores de 8 bits – TMR1H E TMR1L. Podem ser lidos e escritos. –Interrupção no overflow de FFFFh – 0000h, se a interrupção TRM1 estiver habilitada.

16 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 1 Registradores associados. –Configuração de Timer1.

17 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 1 T1CON. Temporizador ou contador

18 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 1 Exemplo temporizador 1 - Assembly.

19 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 1 Exemplo temporizador 1 - Assembly.

20 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 1 Exemplo temporizador 1 – Linguagem C.

21 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 2 Temporizador de 8 bits com prescaler e postscaler. –Pode ser lido e escrito. Possui um registrador de período PR2. –TRM2 incrementa de 00h até PR2 e retorna para 00h.

22 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 2 Registradores associados.

23 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 2 T2CON.

24 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 1 Exemplo temporizador 2 – Linguagem C.

25 Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timer 2 Exercício em grupo: faça um programa em assembly equivalente ao programa em C do exemplo anterior.


Carregar ppt "Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Módulo Timers - PIC16F877A Jadsonlee da Silva Sá."

Apresentações semelhantes


Anúncios Google