Sistemas Embarcados:

Documentos relacionados
Sistemas Microprocessados

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

Jadsonlee da Silva Sá

Sistemas Embarcados:

Sistemas Embarcados:

Sistemas Embarcados:

Objetivos MICROCONTROLADORES HARDWARE. Aula 03: Periféricos. Prof. Mauricio. MICRO I Prof. Mauricio 1. Arquitetura de um Microcontrolador

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

Interrupções e Timers

Temporizadores e Contadores

INTRODUÇÃO: MICROCONTROLADORES

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

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

Acetatos de apoio às aulas teóricas

Microcontroladores 2 EL08D Turma M12

Tutorial Microcontroladores AVR Atmega8

Temporizadores e Contadores (Timer/Counter)

programáveis por software

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

Sistemas Microprocessados

Sistemas Digitais e Microcontrolados

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

Microcontroladores: Programação em C

Sistemas Microcontrolados

Sistemas Digitais e Microcontrolados

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

Sistemas Microcontrolados

Sistemas Microprocessados

Projeto Instrumentação Eletrônica Conversor A/D para Tensões 3φ

Sistemas Embarcados:

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

Circuito Eletrônico. Entendendo o circuito eletrônico na robótica. domingo, 28 de agosto de 11

Sistemas Digitais e Microcontrolados

Ex.: Rotinas de tempo

Arquitetura PIC - PWM

Microcontrolador 8051:

Sistemas Digitais: Introdução

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

Laboratório de Microprocessadores e Microcontroladores

CONTROLE DE UM SERVO MOTOR

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

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

Lista de Exercícios 2

Sistemas Microcontrolados

Conversor Analógico Digital do MSP430G2553

TIMER2 no ATMEL AT89S8252 TIMER 2 - CARACTERISTICAS TIMER 2 MODOS

LABORATÓRIO DE ARQUITETURA DE COMPUTADORES PREPARAÇÃO 03: INTERRUPÇÕES

Família de Microcontroladores AVR

Microcontrolador 8051

Laboratório de Microprocessadores e Microcontroladores

Tutoriais PET-Tele. Introdução à Amostragem de Sinais com o kit Arduino (Versão: A2016M06D21)

Aula 10 Microcontrolador Intel 8051 Parte 1

Arquitetura PIC - Interrupções e timers + Motores de passo

Organização de Memórias

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

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

Lista de Exercícios 1

Aplicações Avançadas de Microprocessadores. Professor: Marco Shawn Meireles Machado

Laboratório de Microprocessadores e Microcontroladores

Microprocessadores Tópicos Esp. em Eletrônica Industrial

CONTADORES DIGITAIS (Unidade 6)

Introdução Conversão Digital Analógica Conversão Analógica Digital Referências. Conversão D/A e A/D. Aula 01 - DAC / ADC

NOTAS DE AULA NE7720 SISTEMAS DIGITAIS - II AULA

Microcontroladores PIC. Interrupções e Timers

SSC512 Elementos de Lógica Digital. Contadores. GE4 Bio

Lista de Exercícios 1

MICROCONTROLADORES 2 EL08D - TURMA M12

Introdução aos microcontroladores Microcontroladores e microprocessadores Tecnologia em Manutenção Industrial

Microcontroladores: Programação em C

Programa Trainee 2012 Módulo 4 Microcontroladores AVR

Laboratório de Hardware

Curso de Microcontroladores PIC 16F84A

Laboratório de Microprocessadores e Microcontroladores

Programação Ladder. Douglas Wildgrube Bertol DEE - Engenharia Elétrica CCT

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

Shift Registers e Contadores Assíncronos

FACULDADE LEÃO SAMPAIO

Laboratório de Microprocessadores e Microcontroladores

RTC Real Time Counter e Pinos do JM60

Aula 6. Engenharia de Sistemas Embarcados. Prof. Abel Guilhermino Tópico: Arquitetura e Ambiente de Desenvolvimento

16/3/2009. Aula 6. Engenharia de Sistemas Embarcados

1.1 Noções básicas sobre interrupções em Microcontroladores

Aluno(a): Matrícula:

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

TABELA DO F/F. T Q n Q n+1

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

Lista de Exercícios A2

Objetivos MICROCONTROLADORES HARDWARE. Microcontroladores I. Prof. Mauricio. Micro-I Prof. Mauricio 1. Microcontroladores PIC. Requisitos de Hardware

Implementando PWM por soft - um método simples. Por Renie S. Marquet reniemarquet.sites.com.br - versão

Universidade Federal do ABC

MICROCONTROLADORES NO RADIOAMADORISMO

Registradores de Deslocamentos.

Família 8051 (introdução) 2011/1

ELETRÔNICA DIGITAL APLICADA Aula 8- Registradores de deslocamento como contadores

MSP430 - Arquitertura

MICROPROCESSADORES E MICROCONTROLADORES PROVA 2 - RESPOSTA ESPERADA

Transcrição:

Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Sistemas Embarcados: Temporizadores e Contadores DCA0119 Sistemas Digitais Heitor Medeiros Florencio

Temporizadores e Contadores T/C : Timer/Counter Temporizadores: Dispositivo que gera sinais pulsados em uma frequência fixa; Dispositivo configurável através de registradores de controle; Conta intervalos de tempo; Contadores: Idêntico ao temporizador; Conta pulsos de clock internos ou externos; Conta o número de eventos de uma entrada; 2

Timer/Counter Dentro dos MCUs existem vários T/C que possuem uma resolução de acordo com o número de bits. Todas as interrupções são controladas pelos T/C. O Watchdog é construído por um temporizador/contador. Watchdog é baseado em um temporizador que faz a contagem regressiva de um valor inicial definido via registro até zero. Se o MCU não resetar a contagem regressiva do temporizador, deixando chegar até o valor 0, o temporizador vai enviar um sinal para resetar o MCU. 3

ATMega328: Timer/Counter O microcontrolador ATMega328 possui temporizadores de 8 bit e de 16 bits. Timer/Counter 0 (T/C 0): o módulo mais simples de 8 bit. Timer/Counter 2 (T/C 2): módulo de 8 bits; permite a configuração do valor de topo da contagem; permite 4 modos de execução. Timer/Counter 1 (T/C 1): módulo de 16 bits; mais preciso; permite geração de ondas. 4

ATMega328: T/C 0 Características do temporizador/contador 0: Contador simples que incrementa um valor a cada ciclo de clock, podendo ser de uma fonte interna ou externa. Quando o contador passar do valor 0xFF ocorre um estouro e é gerada uma interrupção. Prescaler de 10 bits. Prescaler é o número de divisões para incremento; número de divisões do ciclos de clock. Ex.: Prescaler de 8: após 8 ciclos de clock o contador incrementa 1 unidade. Duas unidades de comparação independentes; Suporte a geração de sinais PWM; Quatro modos de operação (WGM<2:0>); 5

ATMega328: T/C 0 Contador Comparadores 6

ATMega328: T/C 0 Modo Normal : O contador sempre incrementará; Interrupção quando atingir o topo; Interrupção quando TCNT == OCR; Pode setar/resetar/toggle o pino OC quando TCNT == OCR; Modo CTC (Clear Timer on Compare Match): O contador sempre incrementará; Recomeça a contagem quando TCNT == OCR; Usado para geração de onda quadrada no pino OC (quando habilitado como pino de saída); Adequado para aplicações regulação de potência, retificação e outras usando DACs; 7

ATMega328: T/C 0 Modo CTC (Clear Timer on Compare Match): Usado para geração de onda quadrada no pino OC (quando habilitado como pino de saída); Frequência de OC: N vai depender do prescaler (1, 8, 64, 256 ou 1024); OCR valor entre 0 e 255; 8

ATMega328: T/C 0 Modo PWM Rápido: O contador sempre incrementará; Interrupção quando overflow (TCNT == 255); Interrupção quando TCNT == OCR; Utilizado para geração de sinal PWM (Pulse Width Modulation) de alta frequência; Frequência PWM: 9

ATMega328: T/C 0 Modo PWM com fase corrigida: Baseado na contagem crescente e decrescente do TCNT; Aplicações: Controle de motores; 10

Fast PWM x Phase Correct PWM 11

ATMega328: TTCR0A TTCR0A: Timer/Counter Control Register A COM0 - Modo de saída da comparação: 12

ATMega328: TTCR0A TTCR0A: Timer/Counter Control Register A WGM<1:0> - Modo do timer/counter: 13

ATMega328: TTCR0B TTCR0B: Timer/Counter Control Register B CS<2:0> - Clock select: 14

ATMega328: TTCR0B TTCR0B: Timer/Counter Control Register B FOC0<A;B> - Force Output Compare: Apenas para os modos não PWM (modo normal e CLC); Quando setado, força a saída de comparação OC produzir uma mudança; 15

ATMega328: TCNT; OCR TCNT0: Timer/Counter Register Valor do contador; OCR0<A;B>: Output Compare Register <A;B> Valor de comparação; 16

ATMega328: TIMSK0 TIMSK0: Timer/Counter Interrupt Mask Register Habilitando interrupções: OCIE0B: Habilitar interrupção do comparador B. OCIE0A: Habilitar interrupção do comparador A. TOIE0: Habilitar interrupção de overflow. 17

ATMega328: TIFR0 TIFR0: Timer/Counter 0 Interrupt Flag Register Interrupções: OCF0B: Flag da interrupção do comparador B. Bit 1 quando ocorre a interrupção; OCF0A: Flag da interrupção do comparador A. Bit 1 quando ocorre a interrupção; TOV0: Flag da interrupção de overflow. Bit 1 quando ocorre a interrupção; 18

ATMega328: T/C 1 Características do temporizador/contador 1: Contador de 16 bits; Dois comparadores independentes; Uma unidade de captura (pino ICP1); Contador de eventos externos; Quatro interrupções independentes: TOV1, OCF1A, OCF1B e ICF1; O flag ICF1 é setado quando ocorre a captura de evento no pino ICP1. Suporte a geração de sinais PWM; 19

ATMega328: T/C 1 20

ATMega328: T/C 1 21

ATMega328: T/C 1 22

ATMega328: T/C 2 Características do temporizador/contador 2: Diagrama de bloco idêntico ao T/C 0 23

ATMega328: T/C 2 Características do temporizador/contador 2: Contador de 8 bits; Dois comparadores independentes; Três interrupções independentes: TOV1, OCF1A, OCF1B; Suporte a geração de sinais PWM; Principal diferença: Operação assíncrona. O T/C 2 pode ser incrementado pelo clock interno, via prescaler, ou assicronamente através dos pinos TOSC1/2 (cristal de 32.768 Hz), quando o bit AS2 do registrador ASSR. 24

ATMega328: T/C 2 Características do temporizador/contador 2: Operação assíncrona. Sincronismo de um oscilador externo. Diagrama de bloco do contador: 25

ATMega328: T/C 2 26

ATMega328: T/C 2 27

Atividade Complementar Analise os temporizadores/contadores do MCU da família PIC, fabricante Microchip. 28

Exercícios: Temporizadores/Contadores 29

Exercício Desenvolver um programa em C e embarcar no microcontrolador ATMega328 para piscar um LED a cada 1 segundo utilizando o temporizador T/C0 do μc. 30

Exercício: Resolução Solução: Utilizar o temporizador T/C 0 para contar 1 segundo e depois alterar o valor do pino do LED (piscar); T/C 0: temporizador de 8 bits conta de 0 a 255 pulsos de clock para gerar o overflow; O período de cada pulso depende da frequência do temporizador; Se a frequência do μc for 16 MHz, o maior período possível é: CS02<2:0> = 101 : CLK CPU /1024 f TC0 = 16.000.000 = 15.625 Hz 1024 1 T TC0 = = 0, 000064 s 15. 625 Cada pulso de clock leva 0,000064s. 31

Exercício: Resolução Alternativa 01: Alterar o valor do pino do LED quando ocorrer um overflow. O temporizador TC0 demora 0,016384 para gerar um overflow. T overflow TC0 = 256 0,000064s = 0,016384 s Problema: O T/C0 deveria contar 1s. 0,016384 s 32

Exercício: Resolução Alternativa 02: Utilizar vários ciclos do temporizador para contar 1s. 1 = 61,035 61 ciclos do temporizador 0,016384 É necessário ocorrer 61 overflow (término do ciclo do temporizador) para contar 1s. 0,016384 s ~ 1,0 s 33

Exercício: Resolução Como identificar o overflow?? O bit TOV0 do registrador TIFR0 indica quando ocorre um overflow. 34

Exercício: Resolução Configurando o pino do LED e o temporizador T/C0; 35

Exercício: Resolução Esperar 61 estouros do overflow (1 segundo) para alterar o valor do LED; 36

Referências Datasheet: ATMega328, Atmel. Datasheet: PIC18F45K20, Microchip. Charles Borges de Lima. Os poderosos ucontroladores AVR. Apostila. IFSC, 2009. 37

Dúvidas? Dúvidas por email: heitorm@dca.ufrn.br 38