Sistemas Microprocessados

Documentos relacionados
Sistemas Embarcados:

Sistema Digitais. Bacharelado de Informática UEM DIN - Prof. Elvio 2017

Plano de Aula. 1 o semestre. Aula número 010 Interrupções Internas Timers. Uso de interrupções internas produzidas pelos timers

Sistemas Microprocessados

Tutorial Microcontroladores AVR Atmega8

Sistemas Microprocessados

Microcontroladores. Contadores e Temporizadores. Prof. Guilherme Peron Prof. Heitor S. Lopes Prof. Ronnier Rohrich Prof. Rubão

Sistemas Microcontrolados. Período Aula 9. 1 Saulo O. D. Luiz

Jadsonlee da Silva Sá

Lista de Exercícios A2

Circuitos Digitais. Tipos de circuitos digitais: Circuitos combinacionais Circuitos sequenciais

Ex.: Rotinas de tempo

Aula 14. Contadores Assíncronos. SEL Sistemas Digitais. Prof. Dr. Marcelo Andrade da Costa Vieira

Temporizadores e Contadores

programáveis por software

Temporizadores e Contadores (Timer/Counter)

Microcontroladores 2 EL08D Turma M12

Sistemas Digitais e Microcontrolados

Acetatos de apoio às aulas teóricas

AAAA AAAA SEL Aplicação de Microprocessadores I. Aula 5 Temporização e Interrupção. Marcelo Andrade da Costa Vieira

1.2 Registradores relacionados as Interrupções. 3. TOSE Sentido da transição da borda do sinal aplicado am TMR0

ELETRÔNICA DIGITAL II. AUTOR: ENG. ANTONIO CARLOS LEMOS JÚNIOR

Interrupções do Interrupções Gabriel Kovalhuk. UTFPR DAELN - Tecnologia em Mecatrônica Industrial

CONTADORES DIGITAIS (Unidade 6)

ELD - Eletrônica Digital Aula 6 Circuitos Sequenciais Latches e Flip-Flops. Prof. Antonio Heronaldo de Sousa

Sistemas Digitais e Microcontrolados

Atividade de laboratório 005. Prof: Carlos Eduardo de Brito Novaes 20 de maio de Alunos RA Nome Curso Semestre

TIMER2 no ATMEL AT89S8252 TIMER 2 - CARACTERISTICAS TIMER 2 MODOS

Shift Registers e Contadores Assíncronos

Sistema Digitais. Bacharelado de Informática UEM DIN - Prof. Elvio 2016

Sistemas Digitais e Microcontrolados

Plano de Aula. 1 o semestre. Cronômetro Interrupções, Timers. Utilizar interrupções para criar um cronômetro com parciais

Interrupções e Timers

Microcontroladores: Programação em C

ENG-1450 Microcontroladores e Sistemas Embarcados. Lab02 Apresentação Kit PicGenios Interrupção e Timers

Universidade Federal do ABC

Sistemas Microcontrolados

ELETRÔNICA DIGITAL. Parte 12 Latches e Flip-Flops. Professor Dr. Michael Klug. 1 Prof. Michael

UTFPR Departamento Acadêmico de Eletrônica Curso Técnico em Eletrônica Microcontroladores 1 - Prof. Cion nov/2010 (atualizado em jul 2015)

RTC Real Time Counter e Pinos do JM60

Sistemas Microprocessados

CIRCUITOS SEQUENCIAIS (Unidade 5)

SSC512 Elementos de Lógica Digital. Latches e Flip Flops. GE4 Bio

Eletrônica Digital. Prof. Gilson Yukio Sato sato[at]utfpr[dot]edu[dot]br

APRESENTAÇÃO DO KIT CPLD_EE01

CIRCUITOS DIGITAIS. Contadores. Prof. Denis Fantinato Prof. Rodrigo Moreira Bacurau. Slides baseados nas aulas do Prof. Rodrigo Moreira Bacurau

UNIVERSIDADE FEDERAL DO PARANÁ SETOR DE CIÊNCIA E TECNOLOGIA ENGENHARIA ELÉTRICA

CIRCUITOS DIGITAIS. Circuitos Sequenciais e Flip-Flops. Prof. Denis Fantinato Prof. Rodrigo Moreira Bacurau

Capítulo 5 - Flip-Flops e Dispositivos Correlatos

Sistemas Embebidos I , Tiago Miguel Dias ISEL, ADEETC - Secção de Eletrónica e Telecomunicações e de Computadores

LATCHES e FLIP-FLOPs. Aula 15 GRECO-CIN-UFPE

Lista de Exercícios 2

Sistemas Microcontrolados

Microcontroladores AVR Baseado no ATmega328 Prof. Eduardo G. Bertogna DAELN/UTFPR

Os circuitos seqüenciais podem ser classificados em três tipos:

Microcontrolador 8051:

CONTROLE DE UM SERVO MOTOR

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE SERGIPE COORDENADORIA DE ELETRÔNICA CIRCUITOS OSCILADORES. Experimentos de Osciladores

Manual da Pinagem dos Microcontroladores BASIC Step 1 e M8 + Esquema de instalação do cabo

Microcontrolador 8051

PCS 2304 PROJETO LÓGICO DIGITAL 19/05/2006 Gabarito Preliminar 6 a Lista de Exercícios Contadores

Laboratório de Microprocessadores e Microcontroladores

Eletrônica Digital. Prof. Gilson Yukio Sato sato[at]utfpr[dot]edu[dot]br

LABORATÓRIO DE PROCESSAMENTO DIGITAL DE SINAIS II. Filtros FIR utilizando matlab e arduino duo LAB 4 (BRF)

Nome...Nota... T /R,COUNT

Eletrônica Digital. Circuitos Lógicos Sequenciais PROF. EDUARDO G. BERTOGNA UTFPR / DAELN

Eletrônica Digital. Prof. Gilson Yukio Sato sato[at]utfpr[dot]edu[dot]br

Experiência 5: Circuitos osciladores e conversores digital-analógicos

Registradores de Deslocamentos.

Prof. Adilson Gonzaga

Circuitos Sequenciais

Sistema Digitais. Bacharelado de Informática UEM DIN - Prof. Elvio v. 17a

Mapeamento de memória e conexões do Controlador CP-WS11/4DO4DI-USB

Controladores do IBM-PC. Gustavo G. Parma

Departamento de Engenharia Elétrica SEL 384 Laboratório de Sistemas Digitais I PRÁTICA Nº5B

ENGC40 - Eletrônica Digital

Sistemas Digitais Módulo 10 Circuitos Sequenciais: Latches e Flip-Flops

EPAC Microcontroladores Organização do curso 30/8/2007

FLIP-FLOPS JK e T. Na saída da porta A, temos J.Q e na saída da porta B temos K.Q

Célula básica de memória - Notas de aula abril/2012

Microprocessadores Tópicos Esp. em Eletrônica Industrial

Aula 12. Flip-Flop Parte 1. SEL Sistemas Digitais. Prof. Dr. Marcelo Andrade da Costa Vieira

Sistema Digitais. Bacharelado de Informática UEM DIN - Prof. Elvio 2016

Registros do 16F628A. Prof. Luiz Antonio Vargas Pinto Prof. Vargas

LABORATÓRIO DE PROCESSAMENTO DIGITAL DE SINAIS II. Filtros FIR utilizando matlab e arduino duo LAB 1 (LPF)

Conversores Digital/Analógico (D/A) e Analógico/Digital (A/D)

Eletrônica Digital para Instrumentação. Herman Lima Jr.

Circuitos Digitais. Prof. Esp. Pedro Luís Antonelli Anhanguera Educacional

Acetatos de apoio às aulas teóricas

Lista de Exercícios 1

Interrupção

Arquitetura PIC - PWM

PROJETO E SIMULAÇÃO DE CIRCUITO INTEGRADO DEDICADO PARA CONTROLE DE SERVO-MOTORES

Circuitos Seqüenciais Latches e Flip-Flops

Circuitos Sequenciais

Flip-Flop. Uma das coisa importantes que se pode fazer com portas booleanas é criar memória.

UFJF FABRICIO CAMPOS

Elementos de processamento de sinais

Transcrição:

Sistemas Microprocessados sato<at>utfpr<dot>edu<dot>br http://pessoal.utfpr.edu.br/sato/

Temporizadores e Contadores do ATmega8 sato<at>utfpr<dot>edu<dot>br

Sobre o material Essas transparências foram baseadas no manual do ATmega8 da Atmel e no site da Atmel

Temporizadores e Contadores Operação independente Programável por software Aplicações contagem de tempo Contador de eventos medição da largura de pulsos geração de sinais PWM geração periódica de interrupções

Temporizadores e Contadores ATmega8 Dois T/C de 8 bits com prescaler e modo de comparação (T/C0 e T/C2) Um T/C de 16 bits com prescaler e modo de comparação de captura (T/C1)

Temporizador/Contador 0

T/C0 Timer/Counter 0 8 bits progressivo (00 a FF) Contagem circular Gerador de frequência (temporizador) Contador de eventos externos (contador) Prescaler de 10 bits Pode gerar interrupção (TOV0)

Timer/Counter 0

TCNT0 T0 8bits Timer/Counter 0 Contem o valor da contagem ( capacidade máxima 00 a FF) R/W Entrada externa de clock Contador de eventos externos

TCCR0 Timer/Counter 0 Timer/Counter Control Register Seleção do clock Sem clock Externo Prescaler (clk i/o ) Bits CS02..CS00

TCCR0 TCCR0 - - - - - CS02 CS01 CS00 CS0 2 CS0 1 CS0 0 Fonte de Clock 0 0 0 Sem clock(contador parado) 0 0 1 clk i/o 0 1 0 clk i/o /8(prescaler) 0 1 1 clk i/o /64(prescaler) 1 0 0 clk i/o /256(prescaler) 1 0 1 clk i/o /1024(prescaler) 1 1 0 T0 -Clockexterno borda de descida 1 1 1 T0 - Clock externo borda de subida

TOV0 Interrupções T/C T/C0 Overflow Flag (registro TIFR) Setadoquando o a contagem(tcnt0) vai a 0 TIFR T/C Interrupt Flag Register Sinalização de eventos nos T/C Compartilhado com outros T/C

TIFR TIFR OCF2 TOV2 ICF1 OCF1A OCF1B TOV1 - TOV0 Bit 0 TOV0 Descrição T/C0Overflow Flag: - Setada quando ocorre overflow(ff 00) -É resetadapor HW quando a interrupção é atendida -Pode se resetadapor SW -Para que gere interrupção, a interrupção deve estar habilitada(i= 1 e TOIE0=1)

TIMSK Interrupções T/C T/C Interrupt Mask Register Habilitação/Desabilitação de interrupção Compartilhado com outros T/C

TIMSK TIMSK OCIE2 TOIE2 TICIE1 OCIE1A OCIE1B TOIE1 - TOIE0 Bit 0 TOIE0 Descrição T/C0Overflow InterruptEnable: - Se I(SREG)=1 e TOIE0=1 a interrupção está habilitada -Se o TOV0 for para 1, então ocorre a interrupção

Prescaler T/C0 e T/C1 Prescaler Compartilhadoentre T/C0e T/C1, mas eles ficam independentes Divide a frequência de entrada clk i/o Divisão por 8, 64, 256 e 1024 Fica rodando continuamente de forma independente

Prescaler T/C0 e T/C1 Prescaler T0e T1não passam pelo prescaler O prescaler pode ser resetado O bit PSR10 do SFIOR é o reset

SFIOR SFIOR - - - - ACME PUD PSR2 PSR10 Bit 0 PSR10 Descrição PrescalerReset T/C1andT/C0: -Se o PSR10=1 reseta o prescaler -Depois do reset, o PSR10 vai a zero -O reset afeta tanto o T/C1quanto o T/C0

Temporizador/Contador 1

T/C1 Timer/Counter 1 16 bits bidirecional (capacidade máxima 0000 a FFFF) Gerador de frequência (temporizador) Contador de eventos externos (contador) Prescaler de 10 bits

T/C1 Timer/Counter 1 Pode gerar quatro interrupções diferentes (TOV1, OCF1A, OCF1B e ICF1) Pode gerar PWM de período variável Dois registros de comparação independentes Um registro de captura

Timer/Counter 1 Valor máximo de contagem Capacidade máxima de 0000 a FFFF Depende do Modo de operação 00FF, 01FF, 03FF OCR1A, ICR1

TCNT1 T1 16bits TCNT1 e T1 Contêm o valor da contagem ( capacidade máxima 0000 a FFFF) R/W Entrada externa de clock Contador de eventos externos

TCNT1H+ TCNT1L TCNT1 Clock Interno (Prescaler) ou Externo (T1) Bits CS12... CS10 do TCCR1B Modo de operação Bits WGM13... WGM10 dos TCCR1A e TCCR1B O flag TOV1é acionado cf. modo de operação

TCCR1B TCCR1B ICNC1 ICES1 - WGM13 WGM12 CS12 CS11 CS10 CS1 2 CS 11 CS10 Fonte de Clock 0 0 0 Sem clock(contador parado) 0 0 1 clk i/o 0 1 0 clk i/o /8(prescaler) 0 1 1 clk i/o /64(prescaler) 1 0 0 clk i/o /256(prescaler) 1 0 1 clk i/o /1024(prescaler) 1 1 0 T1 -Clockexterno borda de descida 1 1 1 T1 - Clock externo borda de subida

Captura Captura o valor de TCNT1quando ocorre um evento: No pino ICP1 Em uma entrada do comparador analógico Aplicado no cálculo de duty-cycle e de frequência, na criação de logs, etc

ICR1 ICR1 (Input Capture Register) 16bits (ICR1H + ICR1L) Registro que guarda cópia do conteúdo de TCNT1 quando da ocorrência do evento O flag ICF1 é setado quando o TCNT1 é copiado e pode ser usado para gerar interrupção

ICR1 Dependendo do Modo de Operação, o ICR1 pode armazenar o valor máximo da contagem

ICP1 Pinoque disparao processo de captura A captura pode ser disparada pela saída do comparador analógico Pino ICP1 possui filtro digital na entrada O disparo pode ser feito por SW, com uma escrita em ICP1

Comparação TCNT1é comparado continuamente com OCR1Ae OCR1B Quando os valores são iguais: ativaopino OC1A ou o OC1Be seta o flagocf1a ou o OCF1B Se a interrupção estiver habilitada, ela vai ser gerada

OCR1A e OCR1B Output Compare Registers 16bits Contêm o valor para comparação com TCNT1 Dependendo do modo de operação, a recarga do valor é automática

Modos de Operação O T/C pode operar de formas diferentes (modos) Definidos pela combinação de: WGM13... WGM10 COM1A1... COM1A0 COM1B1... COM1B0

Mais simples Modo Normal Progressivo e circular O flag TOV1é setadoquando o TCNT1 torna-se 0000 Se a interrupção estiver habilitada: TOV1 setado gera pedido de interrupção TOV1é resetado quando a interrupção é atendida

Modo Normal O TCNT1pode receber um novo valor (carga) a qualquer momento Captura operacional Comparaçãopode ser usada para gerar interrupção

Modo CTC Clear Timer on Compare Match OCR1Aou ICR1 guardam o valor máximo Quando o TCNT1tornar-se iguala OCR1Aou ICR1, otcnt1 é resetado O flag OCF1Aou o flag ICF1 são setados Uma interrupção pode ser gerada

Modo CTC Para gerar uma forma de onda pode-se usar o pino OC1A O pino deve ser configurado como saída em modo toggle O flag TOV1é setado quando o T/C1 vai do FFFF a 0000

Modo Fast PWM PWM de mais alta frequência Rampa simples O T/C1 conta do valor mínimo para o máximo e retorna para o mínimo A saída do PWM pode ser o pino OC1Aou OC1B O sinal de saída pode ser invertido ou não invertido

Valor máximo Modo Fast PWM 00FF (8 bits), 01FF (9 bits), 03FF (10bits), OCR1A ou ICR1 TOV1é setado quando o valor máximo é atingido Se são usados OCR1Ae ICR1 então são setados também OCF1Ae ICF1

Usado para Modo Fast PWM Controle de potência Retificação Conversão D/A

Modo Phase Correct PWM Gera PWM com fase correta Rampa dupla O T/C1 conta do valor mínimo para o máximo e do máximo para o mínimo A saída do PWM pode ser o pino OC1Aou OC1B O sinal de saída pode ser invertido ou não invertido

Modo Phase Correct PWM Valor máximo 00FF (8 bits), 01FF (9 bits), 03FF (10bits), OCR1A ou ICR1 TOV1é setado quando o 0000 é atingido O flag OCF1Aou o OCF1Bsão setados quando TCNT1 torna-se igual a OCR1A ou a OCR1B

Modo Phase Correct PWM Se OCR1Aou ICR1 armazenam o valor máximo, então OCF1Ae ICF1 são setados quando o valor de OCR1A ou OCR1B são recarregados Usado para Controle de motor

Modo Phase and Frequency Correct PWM Gera PWM com fase e frequência correta Rampa dupla O T/C1 conta do valor mínimo para o máximo e do máximo para o mínimo A saída do PWM pode ser o pino OC1A ou OC1B O sinal de saída pode ser invertido ou não invertido

Modo Phase and Frequency Correct PWM Valor máximo OCR1A ou ICR1 TOV1é setado quando o 0000 é atingido O flag OCF1Aou o OCF1Bsão setados quando TCNT1 torna-se igual a OCR1A ou a OCR1B

Modo Phase and Frequency Correct PWM Se OCR1Aou ICR1 armazenam o valor máximo, então OCF1Ae ICF1 são setados quando o valor de OCR1A ou OCR1B são recarregados Usado para Controle de motor

Modo de Funcionamento da Saída de Comparação Configuração de como OC1A ou OC1B operam Operam diferentemente, conforme modo de operação Bits COM1A1, COM1A0, COM1B1, COM1B0 do TCCR1A

TCCR1A COM1A1 COM1A0 COM1B1 COM1B0 FOC1A FOC1B WGM11 WGM10 TCCR1A Modos Não-PWM COM1A1/ COM1B1 COM1A0/ COM1B0 0 0 Modo de funcionamento da saída de comparação OperaçãoNormal do port, OC1A e OC1B desconectados 0 1 Toggle OC1A e OC1B quando comparação positiva 1 0 Reseta OC1A e OC1B quando comparação positiva 1 1 Seta OC1A e OC1B quando comparação positiva

TCCR1A COM1A1 COM1A0 COM1B1 COM1B0 FOC1A FOC1B WGM11 WGM10 TCCR1A Modo Fast PWM COM1A1/ COM1B1 COM1A0/ COM1B0 Modo de funcionamento da saída de comparação 0 0 Operação Normal do port, OC1A e OC1B desconectados 0 1 1 0 1 1 Modo WGM13:0= 15: ToggleOC1A quando comparação positiva. OC1B desconectado. Outros modos OC1A e OC1B desconectados Reseta OC1A e OC1B quando comparação, seta OC1A e OC1B quando valor mínimo (não inversor) Seta OC1A e OC1B quando comparação, reseta OC1A e OC1B quando valor mínimo (inversor)

TCCR1A COM1A1 COM1A0 COM1B1 COM1B0 FOC1A FOC1B WGM11 WGM10 TCCR1A Modo Fast PWM COM1A1/ COM1B1 COM1A0/ COM1B0 Modo de funcionamento da saída de comparação 0 0 Operação Normal do port, OC1A e OC1B desconectados 0 1 1 0 1 1 Modo WGM13:0= 15: ToggleOC1A quando comparação positiva. OC1B desconectado. Outros modos OC1A e OC1B desconectados Reseta OC1A e OC1B quando comparação, seta OC1A e OC1B quando valor mínimo (não inversor) Seta OC1A e OC1B quando comparação, reseta OC1A e OC1B quando valor mínimo (inversor)

TCCR1A COM1A1 COM1A0 COM1B1 COM1B0 FOC1A FOC1B WGM11 WGM10 TCCR1A COM1A1/ COM1B1 Modo fase correta e fase e frequências corretas PWM COM1A0/ COM1B0 Modo de funcionamento da saída de comparação 0 0 Operação Normal do port, OC1A e OC1B desconectados Modo WGM13:0= 9 ou 14: ToggleOC1A quando 0 1 comparação positiva. OC1B desconectado. Outros modos OC1A e OC1B desconectados 1 0 1 1 Reseta OC1A e OC1B quando comparação positiva na contagem progressiva, seta OC1A e OC1B quando comparação positiva na contagem regressiva Seta OC1A e OC1B quando comparação positiva na contagem progressiva, reseta OC1A e OC1B quando comparação positiva na contagem regressiva

Forçar comparação positiva Bits FOC1A e FOC1B do TCCR1A Modos não-pwm Setandoesses bits uma comparação positiva é forçada Pinos de saída OC1A e OC1B reagem a comparação (depende do modo) Não ativa flagsocf1a e OCF1B

TCCR1A COM1A1 COM1A0 COM1B1 COM1B0 FOC1A FOC1B WGM11 WGM10 TCCR1A Bit 2e 3 FOC1A / FOC1B Descrição Force Output Compare for channel A Force Output Compare for channelb - Se setado por SW força comparação positiva - Somente modos não-pwm -O efeito de setaresses bits nas saídas OC1Ae OC1B depende do estado de COM1A1/COM1A0 e COM1B1COM1B0

Modos de Operação 16 modos de operação (0 a 15) Bits WGM13 e WGM12 do TCCR1B Bits WGM11 e WGM10 do TCCR1A

TCCR1A e TCCR1B COM1A1 COM1A0 COM1B1 COM1B0 FOC1A FOC1B WGM11 WGM10 TCCR1A TCCR1B ICNC1 ICES1 - WGM13 WGM12 CS12 CS11 CS10 Bit 1e 0 TCCR1A WGM11 / WGM10 Bit 4e 3 TCCR1B WGM13 / WGM12 Descrição Waveform Generation Mode Descrição Waveform Generation Mode

Modos de Operação Modo WGM1(3:0) 0 0000 1 0001 2 0010 3 0011 Descrição Normal: val. máx. = FFFF, atualização OCR1A/B imediata, TOV1 setado em FFFF CorrectphasePWM, 8 bits: val. máx. = 00FF, atualização OCR1A/B em 00FF, TOV1 setado em 0000 CorrectphasePWM, 9 bits: val. máx. = 01FF, atualização OCR1A/B em 01FF, TOV1 setado em 0000 CorrectphasePWM, 10 bits: val. máx. = 03FF, atualização OCR1A/B em 03FF, TOV1 setado em 0000

Modos de Operação Modo WGM1(3:0) 4 0100 5 0101 6 0110 7 0111 Descrição CTC: val. máx. = OCR1A, atualização imediata, TOV1 setado em OCR1A FastPWM, 8 bits: val. máx. = 00FF, atualização OCR1A/B em 0000, TOV1 setado em 00FF FastPWM, 9 bits: val. máx. = 01FF, atualização OCR1A/B em 0000, TOV1 setado em 01FF FastPWM, 10 bits: val. máx. = 03FF, atualização OCR1A/B em 0000, TOV1 setado em 03FF

Modos de Operação Modo WGM1(3:0) 8 1000 Descrição PWM,phaseandfrequencycorrect: val. máx. = ICR1, atualização OCR1A/B em0000, TOV1 setado em 0000 PWM,phaseandfrequencycorrect: val. máx. 9 1001 = OCR1A, atualização OCR1A/B em0000, TOV1 setado em 0000 10 1010 11 1011 CorrectphasePWM: val. máx. = ICR1, atualização OCR1A/B em ICR1, TOV1 setado em 0000 CorrectphasePWM: val. máx. = OCR1A, atualização OCR1A/B emocr1a, TOV1 setado em 0000

Modos de Operação Modo WGM1(3:0) 12 1100 13 1101 Reserved 14 1110 15 1111 Descrição CTC: val. máx. = ICR1, atualização OCR1A/B imediata, TOV1 setado em FFFF FastPWM: val. máx. = ICR1, atualização OCR1A/B em 0000, TOV1 setadoemicr1 FastPWM val. máx. = OCR1A, atualização OCR1A/B em 0000, TOV1 setado em OCR1A

Filtro Digital Entrada de captura Bit ICNC1 do TCCR1B Setado ativa o filtro Seleção da Borda Bit ICEB1 do TCCR1B Setado o ICR1 fica sensível a borda de subida Resetado o ICR fica sensível a borda de descida

TCCR1B TCCR1B ICNC1 ICES1 - WGM13 WGM12 CS12 CS11 CS10 Bit 7 ICNC1 Bit 6 ICES1 Descrição Input Capture Noise Canceler -Sesetadofiltra o sinal do pino ICP1 -Causa atraso no sinal de entrada Descrição Input Capture Edge Select -Se resetado, uma borda de descida no pino ICP1 dispara a captura -Se setado, uma borda de subida no pino ICP1 dispara a captura

TIFR TIFR OCF2 TOV2 ICF1 OCF1A OCF1B TOV1 - TOV0 Bit 5...2 ICF1 OCF1A OCF1B TOV1 Descrição T/C1 Input Capture Flag -Setadoquando uma captura ocorre no pino ICP1 -Resetadoquando atende a interrupção T/C1 Output Compare A Match Flag -Setadono ciclo de clockseguinte de quando ocorre uma comparação -Resetadoquando atende a interrupção T/C1 Output Compare B Match Flag -Setadono ciclo de clockseguinte de quando ocorre uma comparação -Resetadoquando atende a interrupção T/C1 Overflow Flag -Setadoconforme o modo de operação -Resetadoquando atende a interrupção

TIMSK TIMSK OCIE2 TOIE2 TICIE1 OCIE1A OCIE1B TOIE1 - TOIE0 Bit 5...2 TICIE1 OCIE1A OCIE1B TOIE1 Descrição T/C1 Input Capture Interrupt Enable - Se I(SREG)=1 e TICIE1=1 a interrupção está habilitada -Se o ICF1 for para 1, então ocorre a interrupção T/C1 Output Compare A Match Interrupt Enable - Se I(SREG)=1 e OCIE1A=1 a interrupção está habilitada -Se o OCF1A for para 1, então ocorre a interrupção T/C1 Output Compare B Match Interrupt Enable Se I(SREG)=1 e OCIE1B=1 a interrupção está habilitada -Se o OCF1B for para 1, então ocorre a interrupção T/C1 Overflow Interrupt Enable - Se I(SREG)=1 e TOIE1=1 a interrupção está habilitada -Se o TOV1for para 1, então ocorre a interrupção

Temporizador/Contador 2

T/C2 Timer/Counter 2 8 bits bidirecional (capacidade máxima 00 a FF) Gerador de frequência (temporizador) Prescaler de 10 bits Limpa a contagem quando a comparação é positiva

T/C2 Timer/Counter2 Pode gerar duas interrupções diferentes (TOV2 e OCF2) Pode gerar correct phase PWM Um registro de comparação Pode usar clockexterno de 32k Hz, independente do clock interno

TCNT2 8bits TCNT2 Contêm o valor da contagem ( capacidade máxima 00 a FF) R/W TOSC1/TOSC2 Entrada para oscilador externo de clock

TCNT2 Clock Interno ou Oscilador Externo Ambos passam pelo Prescaler Bits CS22... CS20 do TCCR2 Modo de operação Bits WGM21... WGM20 dos TCCR2 O flagtov2é acionado cf. modo de operação

TCCR2 TCCR2 FOC2 WGM20 COM21 COM20 WGM21 CS22 CS21 CS20 CS2 2 CS 21 CS2 0 Fonte de Clock 0 0 0 Sem clock(contador parado) 0 0 1 clk T2S 0 1 0 clk T2S /8(prescaler) 0 1 1 clk T2S /32(prescaler) 1 0 0 clk T2S /64(prescaler) 1 0 1 clk T2S /128(prescaler) 1 1 0 clk T2S /256(prescaler) 1 1 1 clk T2S /1024(prescaler)

Comparação TCNT2é comparado continuamente com OCR2 Quando os valores são iguais: ativaopino OC2 e seta o flagocf2 Se a interrupção estiver habilitada, ela vai ser gerada

Comparação OCR2: Output Compare Register 2 8bits Contêm o valor para comparação com TCNT2 Dependendo do modo de operação, a recarga do valor é automática OCF2: Output Compare Flag2 Resetadoautomaticamente quando a interrupção é atendida

Comparação OCR2: Output Compare Register 2 8bits Contêm o valor para comparação com TCNT2 Dependendo do modo de operação, a recarga do valor é automática OCF2: Output Compare Flag2 Resetadoautomaticamente quando a interrupção é atendida

Modos de Operação O T/C2 pode operar de formas diferentes (modos) Definidos pela combinação de: WGM21 e WGM20 Modo de operação COM21 e COM20 Modo de funcionamento dos pinos de saída de comparação

Mais simples Modo Normal Progressivo e circular O flagtov2é setadoquando o TCNT2 torna-se 00 Se a interrupção estiver habilitada: TOV2 setado gera pedido de interrupção TOV2é resetadoquando a interrupção é atendida

Modo Normal O TCNT2pode receber um novo valor (carga) a qualquer momento Comparaçãodeve ser usada preferencialmente para gerar interrupção, não para gerar formas de onda

Modo CTC ClearTimer oncompare Match OCR2guarda o valor máximo Quando o TCNT2tornar-se iguala OCR2 otcnt2 é resetado O flagocf2 é setado Uma interrupção pode ser gerada

Modo CTC Para gerar uma forma de onda pode-se usar o pino OC2 O pino deve ser configurado como saída em modo toggle O flagtov2é setadoquando o T/C2 vai do FF a 00

Modo Fast PWM PWM de mais alta frequência Rampa simples O T/C2 conta do valor mínimo para o máximo e retorna para o mínimo A saída do PWM é o pino OC2 O sinal de saída pode ser invertido ou não invertido

Valor máximo OCR2 Modo Fast PWM TOV2é setadoquando FF é atingido. Nesse momento pode ser atualizado o OCR2

Usado para Modo Fast PWM Controle de potência Retificação Conversão D/A

Modo Phase Correct PWM Gera PWM com fase correta Rampa dupla O T/C2 conta do valor mínimo para o máximo e do máximo para o mínimo A saída do PWM é o pino OC2 Osinal de saída pode ser invertido ou não invertido

Modo Phase Correct PWM Valor máximo FF TOV2é setadoquando 00 é atingido O flagocf2é setadoquando TCNT2 torna-se igual a OCR2 Usado para Controle de motor

TCCR2 TCCR2 FOC2 WGM20 COM21 COM20 WGM21 CS22 CS21 CS20 Modo WGM2(1:0) 0 00 1 01 2 10 3 11 Descrição Normal: val. máx. = FF, atualização OCR2 imediata, TOV2 setado em FF CorrectphasePWM: val. máx. = FF, atualização OCR2 emff, TOV2 setadoem 00 CTC: val. máx. = OCR2, atualização OCR2 imediate, TOV2 setado em FF FastPWM: val. máx. = FF, atualização OCR2 em00, TOV2 setadoem FF

Modo de Funcionamento da Saída de Comparação Configuração de como OC2 opera Opera diferentemente, conforme modo de operação Bits COM21 e COM20 do TCCR2

TCCR2 TCCR2 FOC2 WGM20 COM21 COM20 WGM21 CS22 CS21 CS20 Modos Não-PWM COM21 COM20 Modo de funcionamento da saída de comparação 0 0 Operação Normal do port, OC2 desconectado 0 1 Toggle OC2 quando comparação positiva 1 0 Reseta OC2 quando comparação positiva 1 1 Seta OC2 quando comparação positiva

TCCR2 TCCR2 FOC2 WGM20 COM21 COM20 WGM21 CS22 CS21 CS20 Modo Fast PWM COM21 COM20 Modo de funcionamento da saída de comparação 0 0 Operação Normal do port, OC2 desconectado 0 1 Reservado 1 0 1 1 Reseta OC2 quando comparação positiva, seta OC2 em 00 (não-inversor) Seta OC2 quando comparação positiva, reseta OC2 em FF (inversor)

TCCR2 TCCR2 FOC2 WGM20 COM21 COM20 WGM21 CS22 CS21 CS20 Modo Phase Correct PWM COM21 COM20 Modo de funcionamento da saída de comparação 0 0 Operação Normal do port, OC2 desconectado 0 1 Reservado 1 0 1 1 Reseta OC2 quando comparação positiva em contagem progressiva, seta OC2 quando comparação positiva em contagem regressiva (não-inversor) Seta OC2 quando comparação positiva em contagem progressiva, reseta OC2 quando comparação positiva em contagem regressiva (inversor)

Forçar comparação positiva Bit FOC2 do TCCR2 Modos não-pwm Setandoesse bit uma comparação positiva é forçada Pino de saída OC2 reage à comparação (depende do modo) Não ativa flagocf2

TCCR2 TCCR2 FOC2 WGM20 COM21 COM20 WGM21 CS22 CS21 CS20 Bit 7 FOC2 Descrição Force Output Compare - Se setado por SW força comparação positiva - Somente modos não-pwm -O efeito de setaresse bit na saída OC2 depende do estado de COM21 e COM20 -Não gera interrupção

TIFR TIFR OCF2 TOV2 ICF1 OCF1A OCF1B TOV1 - TOV0 Bit 7 e 6 OCF2 TOV2 Descrição T/C2 Output Compare Flag -Setadono ciclo de clockseguinte de quando ocorre uma comparação positiva (TCNT2=OCR2) -Resetadoquando atende a interrupção T/C2 Overflow Flag -Setado quando ocorre overflow do TCNT2 -Resetadoquando atende a interrupção

TIMSK TIMSK OCIE2 TOIE2 TICIE1 OCIE1A OCIE1B TOIE1 - TOIE0 Bit 7e 6 OCIE2 TOIE2 Descrição T/C2 Output Compare Match Interrupt Enable - Se I(SREG)=1 e OCIE2=1 a interrupção está habilitada -Se o OCF2 for para 1, então ocorre a interrupção T/C2 Overflow Interrupt Enable - Se I(SREG)=1 e TOIE2=1 a interrupção está habilitada -Se o TOV2for para 1, então ocorre a interrupção

Prescaler do T/C2 T/C2 Prescaler Frequência de entrada clk T2S clk T2S pode ser clk i/o ou TOSC1 Essa escolha é feito no bit AS2 do registro ASSR Divisão por 8, 32, 64, 128, 256 e 1024 Fica rodando continuamente de forma independente

Prescaler do T/C2 T/C2 Prescaler O prescaler pode ser resetado O bit PSR10 do SFIOR é o reset

SFIOR SFIOR - - - - ACME PUD PSR2 PSR10 Bit 1 Descrição PSR2 PrescalerReset T/C2: -Se o PSR2=1 reseta o prescaler -Depois do reset, o PSR2 vai a zero

Sobre o material Essas transparências foram baseadas no manual do ATmega8 da Atmel e no site da Atmel