🎧 New: AI-Generated Podcasts Turn your study notes into engaging audio conversations. Learn more

Aula 07 - Periféricos-3-17.pdf

Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Transcript

Temporizador / Contador Visão geral Em circuitos digitais, vocês conectaram vários flip-flops (FFs) para criar um contador. Por exemplo, conectando 3 FFs criamos um contador de 3 bits capaz de contar até 7 (000 - 111). Atualmente, todos os microcontroladores vêm com Tim...

Temporizador / Contador Visão geral Em circuitos digitais, vocês conectaram vários flip-flops (FFs) para criar um contador. Por exemplo, conectando 3 FFs criamos um contador de 3 bits capaz de contar até 7 (000 - 111). Atualmente, todos os microcontroladores vêm com Timer/Counter em seu chip. ○ Se o clock para o Timer vier de uma fonte interna, ele é chamado de temporizador. ○ Se o clock para o Timer vier de uma fonte externa, ele é chamado de contador. Prof. Dr. Harlei M. A. Leite (ITA) - EEA-27 Microcontroladores e Sistemas Embarcados Temporizador Visão geral Circuito capaz de medir intervalos de tempo. Pode gerar eventos temporais - por exemplo, para manter o sinal verde em um semáforo por 10 s. Pode medir o tempo decorrido entre a ocorrência de eventos - por exemplo, para computar a velocidade de um carro Prof. Dr. Harlei M. A. Leite (ITA) - EEA-27 Microcontroladores e Sistemas Embarcados Temporizador Visão geral Para que complicar se temos o delay()? ○ Precisão ajustável: possibilita a contagem de milissegundos, microssegundos e até mesmo ciclos de clock. ○ Multitarefa: enquanto o delay pausa a execução do programa, os temporizadores continuam operando em segundo plano, permitindo que outras tarefas sejam realizadas enquanto o temporizador está contando ou aguardando um determinado intervalo de tempo. ○ Interrupções: os temporizadores frequentemente têm a capacidade de gerar interrupções após um período definido, o que significa que o processador pode continuar sua operação normal até ser alertado pela interrupção do temporizador. Prof. Dr. Harlei M. A. Leite (ITA) - EEA-27 Microcontroladores e Sistemas Embarcados Temporizador Como medir o tempo? Contando os pulsos que aparecem em um sinal de clock de entrada que possui um período/frequência conhecido. Exemplo: Se a frequência de clock é igual a 1 MHz (período 1µs) e são contabilizados 2000 pulsos, o tempo decorrido é 2 milissegundos (ms). Prof. Dr. Harlei M. A. Leite (ITA) - EEA-27 Microcontroladores e Sistemas Embarcados Temporizador Como medir o tempo? Considerando frequência de clock igual a 1 MHz (período 1µs). ○ Faixa: máximo intervalo de tempo que um temporizador de 16 bits consegue medir. 65535. 1 x 10-6 = 65,535 ms ○ Resolução: mínimo intervalo de tempo que o temporizador consegue medir (período do clock). 1 µs ○ O sinal top indica que a contagem máxima foi alcançada. Prof. Dr. Harlei M. A. Leite (ITA) - EEA-27 Microcontroladores e Sistemas Embarcados Contador Visão geral Mesma estrutura interna de um temporizador, porém conta pulsos gerados por outro sinal de entrada no lugar do clock. ○ Por exemplo, a contagem de carros que passam por um sensor. ○ Com um seletor, controlado pelo modo de operação, é possível configurar um dispositivo como temporizador ou contador. Prof. Dr. Harlei M. A. Leite (ITA) - EEA-27 Microcontroladores e Sistemas Embarcados Contador Estruturas alternativas Diminuindo a faixa do contador ○ O valor final da contagem é determinado de acordo com o intervalo de tempo a ser analisado. Essa estratégia permite diminuir a faixa do contador. ○ Exemplo: dado o contador mostrado ao lado e um sinal de clock com frequência de 1 MHz, qual o valor a ser armazenado como valor final de contagem para que seja medido um tempo de 4 ms? 4.10-3 / 1.10-6 = 4000 Prof. Dr. Harlei M. A. Leite (ITA) - EEA-27 Microcontroladores e Sistemas Embarcados Contador Estruturas alternativas Aumentando a faixa do contador ○ Contador em série (cascata) estende o valor máximo da contagem (amplia a faixa). ○ Exemplo: Pode-se combinar dois contadores de 16 bits para formar um contador de 32 bits. 65536 * 65536 = 4.294.967.296 Prof. Dr. Harlei M. A. Leite (ITA) - EEA-27 Microcontroladores e Sistemas Embarcados Contador Estruturas alternativas Contador com divisor de frequência ○ Dependendo dos bits em mode, o sinal de saída do prescaler será semelhante ao relógio de entrada, mas com metade da frequência, ou um quarto da frequência, etc. ○ Por exemplo: Clock de 100 MHz. Divisão de frequência por um fator de 8. Clock efetivo terá frequência de 12,5 MHz. Resolução 1/12,5 MHz = 80 ns Faixa: 80 ns x 65535 = 5,24 ms Prof. Dr. Harlei M. A. Leite (ITA) - EEA-27 Microcontroladores e Sistemas Embarcados Temporizador Implementação É possível utilizar um processador genérico para implementar um temporizador. ○ Sabendo o número de ciclos que cada instrução consome, basta escrever um laço (loop) que executa uma determinada sequência de instruções. ○ Quando o loop se encerra, sabe-se que um determinado período de tempo (ciclos) se passou. Entretanto, tal estratégia pode consumir parcela significativa do tempo de processamento, diminuindo o tempo disponível para outras computações. Nesse sentido, é vantajoso usar um temporizador para executar a tarefa. Prof. Dr. Harlei M. A. Leite (ITA) - EEA-27 Microcontroladores e Sistemas Embarcados Temporizador watchdog Visão geral O watchdog timer é um contador que é regularmente reiniciado pelo software em operação normal do sistema. Se o software não "alimentar" o temporizador (ou seja, não reiniciá-lo) dentro de um intervalo de tempo especificado, o temporizador aciona uma ação corretiva. Prof. Dr. Harlei M. A. Leite (ITA) - EEA-27 Microcontroladores e Sistemas Embarcados Temporizador watchdog Funcionamento: Se o sistema trava, falha ou entra em um estado inesperado que impeça a renovação do temporizador, o watchdog entra em ação. Ele detecta a falha (por não ser reiniciado) e realiza uma ação predeterminada para remediar a situação, como um reinício do sistema. O tempo de expiração do watchdog é determinado pelo projeto do sistema e pode variar de alguns milissegundos a vários segundos, dependendo dos requisitos e da aplicação. O watchdog timer é amplamente empregado em sistemas críticos, como em equipamentos médicos, sistemas automotivos, dispositivos de rede e muitos outros, onde a segurança e a confiabilidade são fundamentais. Prof. Dr. Harlei M. A. Leite (ITA) - EEA-27 Microcontroladores e Sistemas Embarcados KL25Z timer modules Visão geral Prof. Dr. Harlei M. A. Leite (ITA) - EEA-27 Microcontroladores e Sistemas Embarcados Modulação por largura de pulso (PWM) Visão geral Modular: inserir informações em um sinal mediante a modificação de suas características. Exemplos: AM e FM. PWM ajusta o tempo que um sinal periódico com dois níveis (digital), alto e baixo, permanece em nível alto de acordo com a informação a ser inserida. Tempo de nível alto: largura do pulso. Duty cycle: razão entre a largura do pulso (tempo em nível alto) e período da onda. Proporção do tempo em que um sinal está em nível alto. Prof. Dr. Harlei M. A. Leite (ITA) - EEA-27 Microcontroladores e Sistemas Embarcados Modulação por largura de pulso (PWM) Implementação digital Um relógio é usado como base para estabelecer o período e a largura de pulso. Exemplo: período correspondente a 8 pulsos e tempo de nível alto a 6 pulsos de relógio. Prof. Dr. Harlei M. A. Leite (ITA) - EEA-27 Microcontroladores e Sistemas Embarcados

Tags

microcontrollers electronics computer engineering
Use Quizgecko on...
Browser
Browser