SlideShare uma empresa Scribd logo
TIMER E INTERRUPÇÃO POR TIMER
TIMER
 O “TIMER” nada mais é do que um simples contador binário que pode ser configurado para contar
pulsos de clock (Interno/Externo).Assim que atingir o valor máximo, ele voltará a zero, configurando
um sinalizador OverFlow e gerando a interrupção, se habilitada.
 Todos os Timers podem atuar como temporizadores ou servir para a geração de PWM. Lembrando
que o timer dois já é por default utilizado na configuração dos pinos CCP1 e CCP2.
 O PIC16F877a possui trêsTIMERs.
 Timer0 (temporizador de 8 bits)
 Timer1 (temporizador de 16 bits)
 Timer2 (temporizador de 8 bits)
CONTADORES BINÁRIOS
 Contador de 8-bits
 Incrementa uma unidade a cada período de tempo.
 Conta o equivalente a . Portando conta de 0 a 255.
 Contador de 16-bits
 Conta o equivalente a . Portanto conta de 0 a 65535.
INTERRUPÇÃO PORTIMER
 Quando o TIMER incrementar e atingir seu valor máximo, 255 (8 bits) ou 65535 (16
bits), ele acionará uma interrupção e se inicializará novamente em 0.
 Essa interrupção é chamada de interrupção por timer.
PRESCALER
 Prescaler é o nome da parte de um microcontrolador que divide a FOSC antes de atingir a lógica que
incrementa o status do temporizador.
Fonte: https://www.mikroe.com/ebooks/pic-microcontrollers-programming-in-c/timer-tmr0
WATCHDOG
Basicamente, o watchdog é um temporizador de supervisão que monitora a
operação do microcontrolador.
Como Funciona:
O watchdog é configurado para um intervalo de tempo específico. Durante a operação normal, o
microcontrolador precisa periodicamente resetar o watchdog antes que esse intervalo se esgote. Se o
microcontrolador ficar preso em um estado de erro, como um loop infinito ou outra condição anormal
que impeça a execução do programa, ele não conseguirá resetar o watchdog a tempo, assim o
microcontrolador entra num estado de falha e reinicia o sistema, restaurando a operação normal.
PRESCALER
 O valor do Prescaler é de 2 a 256 e pode ser definido usando o registro OPTION_REG. Como no
exemplo abaixo para o timer 0.
 O tempo para o estouro do timer depende da FOSC e do prescaler.
TIMER 0
 O móduloTimer 0 é um temporizador/contador de 8 bits com os seguintes
recursos:
 Registro temporizador/contador de 8 bits (TMR0)
 Pré-escalador de 8 bits (compartilhado com Watchdog Timer)
 Fonte de relógio interna ou externa programável
 Seleção de borda de clock externa programável
 Interrupção em caso de estouro
TIMER 0
 Registradores usados ​
​
para o Timer 0
 OPTION_REG
 TMR0
 INTCON
OPTION_REG
INTCON
TMR0
 Este é o registro de 8 bits que contém os
valores do temporizador.
 Por default, inicialmente será 0.
 Aumentará em um a cada ciclo de clock.
 Quando atingir 255, acionará o bit
TMR0IF no registro INTCON. Então
novamente começa do 0.
ATIVIDADE
 Crie um programa para mudar o estado lógico da
saída C1 a cada 5ms. Usando o timer0.
ATIVIDADE
 Crie um cronômetro que incrementa a cada um milissegundo. Contendo:
 Um botão pra resetar a contagem.
 Mostrar o valor no LCD
 Mostrar a contagem de:
 Milissegundo
 Segundo
 Minuto
NÃO USAR DELAY
TIMER 1
Fonte: https://www.mikroe.com/ebooks/pic-microcontrollers-programming-in-c/timer-tmr1
INTERRUPÇÃO DOTIMER 1
 O par de registros Timer1 (TMR1H:TMR1L) incrementa até FFFFh e passa para 0000h.
 Quando o Timer1 estourar, o bit sinalizador de interrupção Timer1 do registro PIR1 é setado.
 Para habilitar a interrupção, você deve definir estes bits:
 Bit de habilitação de interrupção do Timer1 no registro PIE1
 Bit PEIE do registrador INTCON
 Bit GIE do registrador INTCON
 A flag de interrupção é limpa zerando o bit TMR1IF
TIMER e Interrupção por Timer no compilador Mikroc
REGISTRADORES
 Registradores utilizados pelo TIMER1
 T1CON
 TMR1 (TMRIH, TMRIL)
 PIR1
TIMER 1
TIMER 2
Timer 2 é um temporizador de 8 bits disponível em muitos microcontroladores PIC.
O timer 2 é utilizado para temporização e geração de PWM, entre outros.
TIMER 2
 A (FOSC/4) passa pelo prescaler configurado pelos registradores T2CKPS1 e T2CKPS0.
 A saída do prescaler é então usada para incrementar o registro TMR2 a partir de 00h. Os
valores de TMR2 e PR2 são constantemente comparados e o registro TMR2 continua sendo
incrementado até corresponder ao valor de PR2.
 Quando a correspondência ocorre, o registro TMR2 é automaticamente zerado para 00h.
 O postscaler do temporizador TMR2 é incrementado e sua saída é utilizada para gerar uma
interrupção (TMR2IF) se estiver habilitada.
 Os registros TMR2 e PR2 são totalmente legíveis e graváveis.
 O Timer 2 pode ser desligado zerando o bit TMR2ON.
TIMER 2
ATIVIDADE TIMER 1
 Crie um programa no Mikroc para realizar o acionamento de 1 único injetor numa máquina
de testes. Seguindo as orientações:
 Use um botão para escolher o número de repetições (máximo 100) incrementando de 5
em 5.
 Use um botão para incrementar/decrementar o tempo de injeção, variando entre 2 e 10
ms. Devendo variar com um delta de 1 ms.
 Use um botão para iniciar o teste.
 Exiba no display o número de repetições e o tempo de injeção.

Mais conteúdo relacionado

PDF
AA Apresentacao_TIMER0_PIC16F877A_2016.pdf
PDF
microcontrolador-pic-em-powerpoint-parte-2-interrupcoes-e-timers.pdf
PDF
APRESENTACAO_-_Aula_04_Linguagem_de_Programacao_Ladder.pdf
PDF
APRESENTACAO_-_Aula_04_Linguagem_de_Programacao_Ladder.pdf
PDF
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - TPM - TIM...
PPTX
550362750-UFCD-6072-Microcontroladores-Timers.pptx
PDF
Aula3 120922184753-phpapp02
AA Apresentacao_TIMER0_PIC16F877A_2016.pdf
microcontrolador-pic-em-powerpoint-parte-2-interrupcoes-e-timers.pdf
APRESENTACAO_-_Aula_04_Linguagem_de_Programacao_Ladder.pdf
APRESENTACAO_-_Aula_04_Linguagem_de_Programacao_Ladder.pdf
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - TPM - TIM...
550362750-UFCD-6072-Microcontroladores-Timers.pptx
Aula3 120922184753-phpapp02

Semelhante a TIMER e Interrupção por Timer no compilador Mikroc (20)

PDF
Interrupts and the timer
PPT
Controladores logicos programavel industriais
PDF
Frequency Meter using Microchip PIC16F877A SPI to Arduino Virtual COM to PC
PPT
Programação básica de microcontroladores
PDF
Configurações do microcontrolador PIC16F877a
PPTX
Pwm pic 18 f
PDF
Pic18xx
PDF
Apostila Apresentacao_PWM_PIC16F877A_2015.pdf
PDF
manual_n1030_v10x_h_portuguese é um manual de operação
PPTX
Aula 2 - Introdução aos Miconcontroladores.pptx
PDF
Aula Ladder CLP eletrotécnica aulas.pdf
PDF
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
PDF
Microcontroladores pic ling c unicamp
PDF
Pic apostila
PDF
Apostila3 clp logo
PPTX
Aula 6 - Linguagem de Programação.pptx
PPT
8085 Introducao
PDF
U3 exercicios resolvidos
PDF
Curso básico de eletrônica digital parte 9
Interrupts and the timer
Controladores logicos programavel industriais
Frequency Meter using Microchip PIC16F877A SPI to Arduino Virtual COM to PC
Programação básica de microcontroladores
Configurações do microcontrolador PIC16F877a
Pwm pic 18 f
Pic18xx
Apostila Apresentacao_PWM_PIC16F877A_2015.pdf
manual_n1030_v10x_h_portuguese é um manual de operação
Aula 2 - Introdução aos Miconcontroladores.pptx
Aula Ladder CLP eletrotécnica aulas.pdf
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
Microcontroladores pic ling c unicamp
Pic apostila
Apostila3 clp logo
Aula 6 - Linguagem de Programação.pptx
8085 Introducao
U3 exercicios resolvidos
Curso básico de eletrônica digital parte 9
Anúncio

Último (20)

PDF
RELATÓRIO DE ESTÁGIO SURVISIONADO: NEUROPSICOPEDAGOGIA INSTITUCIONAL, CLÍNIC...
PDF
A relação entre funções executivas e desempenho acadêmico em crianças com Tra...
PPTX
ELEMENTOS E FUNÇÕES DE LINGUAGEM (EMOTIVA, REFERENCIAL, CONATIVA, POÉTICA, FÁ...
PPTX
Programa Nacional de Saúde do Adulto.pptx
PDF
metabolismo energtico das clulas-131017092002-phpapp02.pdf
PPTX
cijma-2501231hejjeiei45156-38f87891.pptx
PPTX
EMBRIOLOGIA ANIMAL - fases do desenvolvimento.pptx
PPTX
TREINAMENTO DE INSPETOR DE ANDAIMES.pptx
PPT
História e Evolução dos Computadores domésticos
PDF
cadernodoprofessor20142017vol2baixalceducfisicaef6s7a-170409213016.pdf manual...
PPTX
disciplulado curso preparatorio para novos
PDF
EXPRESSÕES IDIOMÁTICAS - LÍNGUA PORTUGUESA
DOC
PPP 2024 (2) (2) feito EM REELABORAÇÃO MORENA ( ABRIL 2024).doc
PPT
HISTOLOGIA VEGETAL - tecidos vegetais.ppt
PDF
O retorno a origem (islã Islamismo)
PPTX
Biologia celular: citologia, é o estudo da célula, a unidade básica da vida.
PPT
Elementos constituintes do esquema argumentativo (tese, argumento, tema, pont...
PPSX
4. A Cultura da Catedral - HistóriaCArtes .ppsx
PDF
50 anos Hoje - Volume V - 1973 - Manaus Amazonas
PPTX
AULA METodologia MODIFIC PART 1 MSC.pptx
RELATÓRIO DE ESTÁGIO SURVISIONADO: NEUROPSICOPEDAGOGIA INSTITUCIONAL, CLÍNIC...
A relação entre funções executivas e desempenho acadêmico em crianças com Tra...
ELEMENTOS E FUNÇÕES DE LINGUAGEM (EMOTIVA, REFERENCIAL, CONATIVA, POÉTICA, FÁ...
Programa Nacional de Saúde do Adulto.pptx
metabolismo energtico das clulas-131017092002-phpapp02.pdf
cijma-2501231hejjeiei45156-38f87891.pptx
EMBRIOLOGIA ANIMAL - fases do desenvolvimento.pptx
TREINAMENTO DE INSPETOR DE ANDAIMES.pptx
História e Evolução dos Computadores domésticos
cadernodoprofessor20142017vol2baixalceducfisicaef6s7a-170409213016.pdf manual...
disciplulado curso preparatorio para novos
EXPRESSÕES IDIOMÁTICAS - LÍNGUA PORTUGUESA
PPP 2024 (2) (2) feito EM REELABORAÇÃO MORENA ( ABRIL 2024).doc
HISTOLOGIA VEGETAL - tecidos vegetais.ppt
O retorno a origem (islã Islamismo)
Biologia celular: citologia, é o estudo da célula, a unidade básica da vida.
Elementos constituintes do esquema argumentativo (tese, argumento, tema, pont...
4. A Cultura da Catedral - HistóriaCArtes .ppsx
50 anos Hoje - Volume V - 1973 - Manaus Amazonas
AULA METodologia MODIFIC PART 1 MSC.pptx
Anúncio

TIMER e Interrupção por Timer no compilador Mikroc

  • 2. TIMER  O “TIMER” nada mais é do que um simples contador binário que pode ser configurado para contar pulsos de clock (Interno/Externo).Assim que atingir o valor máximo, ele voltará a zero, configurando um sinalizador OverFlow e gerando a interrupção, se habilitada.  Todos os Timers podem atuar como temporizadores ou servir para a geração de PWM. Lembrando que o timer dois já é por default utilizado na configuração dos pinos CCP1 e CCP2.  O PIC16F877a possui trêsTIMERs.  Timer0 (temporizador de 8 bits)  Timer1 (temporizador de 16 bits)  Timer2 (temporizador de 8 bits)
  • 3. CONTADORES BINÁRIOS  Contador de 8-bits  Incrementa uma unidade a cada período de tempo.  Conta o equivalente a . Portando conta de 0 a 255.  Contador de 16-bits  Conta o equivalente a . Portanto conta de 0 a 65535.
  • 4. INTERRUPÇÃO PORTIMER  Quando o TIMER incrementar e atingir seu valor máximo, 255 (8 bits) ou 65535 (16 bits), ele acionará uma interrupção e se inicializará novamente em 0.  Essa interrupção é chamada de interrupção por timer.
  • 5. PRESCALER  Prescaler é o nome da parte de um microcontrolador que divide a FOSC antes de atingir a lógica que incrementa o status do temporizador. Fonte: https://www.mikroe.com/ebooks/pic-microcontrollers-programming-in-c/timer-tmr0
  • 6. WATCHDOG Basicamente, o watchdog é um temporizador de supervisão que monitora a operação do microcontrolador. Como Funciona: O watchdog é configurado para um intervalo de tempo específico. Durante a operação normal, o microcontrolador precisa periodicamente resetar o watchdog antes que esse intervalo se esgote. Se o microcontrolador ficar preso em um estado de erro, como um loop infinito ou outra condição anormal que impeça a execução do programa, ele não conseguirá resetar o watchdog a tempo, assim o microcontrolador entra num estado de falha e reinicia o sistema, restaurando a operação normal.
  • 7. PRESCALER  O valor do Prescaler é de 2 a 256 e pode ser definido usando o registro OPTION_REG. Como no exemplo abaixo para o timer 0.  O tempo para o estouro do timer depende da FOSC e do prescaler.
  • 8. TIMER 0  O móduloTimer 0 é um temporizador/contador de 8 bits com os seguintes recursos:  Registro temporizador/contador de 8 bits (TMR0)  Pré-escalador de 8 bits (compartilhado com Watchdog Timer)  Fonte de relógio interna ou externa programável  Seleção de borda de clock externa programável  Interrupção em caso de estouro
  • 9. TIMER 0  Registradores usados ​ ​ para o Timer 0  OPTION_REG  TMR0  INTCON
  • 12. TMR0  Este é o registro de 8 bits que contém os valores do temporizador.  Por default, inicialmente será 0.  Aumentará em um a cada ciclo de clock.  Quando atingir 255, acionará o bit TMR0IF no registro INTCON. Então novamente começa do 0.
  • 13. ATIVIDADE  Crie um programa para mudar o estado lógico da saída C1 a cada 5ms. Usando o timer0.
  • 14. ATIVIDADE  Crie um cronômetro que incrementa a cada um milissegundo. Contendo:  Um botão pra resetar a contagem.  Mostrar o valor no LCD  Mostrar a contagem de:  Milissegundo  Segundo  Minuto NÃO USAR DELAY
  • 16. INTERRUPÇÃO DOTIMER 1  O par de registros Timer1 (TMR1H:TMR1L) incrementa até FFFFh e passa para 0000h.  Quando o Timer1 estourar, o bit sinalizador de interrupção Timer1 do registro PIR1 é setado.  Para habilitar a interrupção, você deve definir estes bits:  Bit de habilitação de interrupção do Timer1 no registro PIE1  Bit PEIE do registrador INTCON  Bit GIE do registrador INTCON  A flag de interrupção é limpa zerando o bit TMR1IF
  • 18. REGISTRADORES  Registradores utilizados pelo TIMER1  T1CON  TMR1 (TMRIH, TMRIL)  PIR1
  • 20. TIMER 2 Timer 2 é um temporizador de 8 bits disponível em muitos microcontroladores PIC. O timer 2 é utilizado para temporização e geração de PWM, entre outros.
  • 21. TIMER 2  A (FOSC/4) passa pelo prescaler configurado pelos registradores T2CKPS1 e T2CKPS0.  A saída do prescaler é então usada para incrementar o registro TMR2 a partir de 00h. Os valores de TMR2 e PR2 são constantemente comparados e o registro TMR2 continua sendo incrementado até corresponder ao valor de PR2.  Quando a correspondência ocorre, o registro TMR2 é automaticamente zerado para 00h.  O postscaler do temporizador TMR2 é incrementado e sua saída é utilizada para gerar uma interrupção (TMR2IF) se estiver habilitada.  Os registros TMR2 e PR2 são totalmente legíveis e graváveis.  O Timer 2 pode ser desligado zerando o bit TMR2ON.
  • 23. ATIVIDADE TIMER 1  Crie um programa no Mikroc para realizar o acionamento de 1 único injetor numa máquina de testes. Seguindo as orientações:  Use um botão para escolher o número de repetições (máximo 100) incrementando de 5 em 5.  Use um botão para incrementar/decrementar o tempo de injeção, variando entre 2 e 10 ms. Devendo variar com um delta de 1 ms.  Use um botão para iniciar o teste.  Exiba no display o número de repetições e o tempo de injeção.