Busque no blog

terça-feira, 13 de outubro de 2015

Usando Zilog Z8 encore e Z8 encore XP!

Zilog - Usando o Timer e PWM do Z8 encore XP! - Parte 1


Mostra como usar o microcontrolador Zilog

Vamos mostrar como usar o timer e PWM da linha Z8 Encore corretamente.

       Olá, meus preciosos leitores, quanto tempo não escrevo aqui e já estava com saudades de vocês. 
      Para quem não sabe ando criando uma plataforma de desenvolvimento chamada ZILOGUITO e ainda é conceito (2015) e espero poder ter a ajuda de todos para que divulguem e usem a plataforma a fim de  difundir meu trabalho e ajudar a mais pessoas a terem alternativas. 
         Uma das coisas mais interessantes de se usar a linha Z8 encore e Z8 encore XP! é o fato de a gente poder gravar o micro com qualquer porta serial, seja física ou seja emulada com aqueles cabos conversores de USB-Serial e até mesmo gravar e desenvolver no linux
usando o WINE para rodar o ZDSII da Zilog. Então vamos lá. 

Características do TIMER do Z8 encore:
  • 4 timers de 16 bits auto recarregáveis, ou seja, funcionam em ciclo.
  • Podem gerar eventos de timers.
  • Podem gerar pulsos de PWM e de contagem.
  • Prescaler programável de 1 a 128.
  • Aceitam função captura e comparação.
  • Pino de entrada de sinal para timer e sinal de capitura.
  • Interrupção por evento do timer.  

- A figura a seguir mostra como é a arquitetura interna do TIMER do Z8 encore! 


Operação do TIMER dos microcontroladores Z8 Encore! 

          Como dito antes, os timers dos microcontroladores Z8 Encore! são de 16 bits. A tabela a seguir apresenta os valores de recarga, prescaler e duração que podem ser ajustados de acordo com os mínimos e máximos da contagem do Timer


Tipo de estouro do timer Recarga do timer Valor do prescaler Duração
Baixo valor 0001H 1 1 período de clock
Alto valor 0000H 128 1 fclock*128*65536

          NOTA : quando o timer alcança o valor FFFFH, ele vai a 0000H e continua a contar.
 
          O timer do Z8 Encore! pode ser configurado para funcionar em diferentes modos. A equação usada para calcular os parâmetros requeridos dos diferentes modos esta descrita a seguir. Para saber mais, a documentação de especificação do produto da linha Z8 encore (PS0176, PS0197, PS0199) pode ser encontrada no site da Zilog em www.zilog.com.


  • Modo contínuo.
           No modo contínuo, o período de estouro do timer é determinado pela seguinte equação: 
           Período de estouro do modo contínuo = (valor de recarga x prescale)/freq. do            
           sistema(em Hz).
           Nesse modo o contador resseta para 0001H depois de chegar ao valor de recarga e, então,        
           continua contando. 
           Uma representação típica da saída de sinal e da interrupção gerada durante o modo contínuo e funcionamento é ilustrado na figura a seguir : 
           
            O modo contínuo pode gerar uma forma de onda quadrada que pode ser aplicada em qualquer aplicação de tempo real. Entretanto não está limitada a somente aplicações desse tipo. 
  • Modo one-shot.
            No modo one-shot, o estouro e determinado pela seguinte equação : 
            Período do estouro no modo one-shot = ((valor de recarga - valor de início) x        
            prescale)/freq. do sistema (em Hz).
            Nesse modo o contador de recarga resseta para 0001H depois de alcançar o valor de recarga e o timer é desabilitado automaticamente.O modo one-shot pode gerar um pulso de gatilho atrasado 
            
  • Modo contador.
            No modo contador o número de transições na entrada do timer que ocorre no início do timer é definido na seguinte equação: 
            Transições na entrada no modo contador = (Valor atual do contador - valor de início ).
            Neste modo, o contador conta um evento externo até o valor de recarga, então resseta para 0001H e depois continua contando. Uma representação típica da saída gerada durante o modo de funcionamento do contador é ilustrado a seguir : 
         
            No modo contador é contado pulsos ou eventos externos. A entrada de sinal para o timer vem desses pulsos externos. 
  • Modo PWM.
          O período PWM é definido pela seguinte equação :  Período PWM (em s) = (valor de recarga x valor do prescale)/freq. sistema em Hz.
          Se TPOL ( um bit de controle que seleciona a polaridade da porta I/O do registro de controle do timer ) é setado em zero, o ciclo da saída de tempo alto PWM para o período total é calculado como se segue : 
          Ciclo PWM (em %) = valor de recarga - valor PWM x 100/valor de recarga 
          Nota: O valor PWM tem de ser menor que o valor de recarga. 
          Se TPOL é setado em 1, o ciclo ativo PWM é calculado da seguinte forma : 
          Ciclo PWM (em %) = valor PWM x 100 / valor de recarga .
          A figura a seguir ilustra bem esse fato : 
       
            O modo PWM é largamente usado em aplicações de sistema de controle. Por exemplo, em sistema de controle de servomotores, mudando o ciclo ativo do PWM, podemos mudar a     
            velocidade do motor.
          
  • Modo captura. 
    No modo de captura, o tempo decorrido do timer que inicia os eventos de captura pode ser  calculado pela seguinte equação: 
    Tempo decorrido de captura(s) = ((valor de captura - valor inicial) x prescale)/freq. sistema (Hz) 
   O modo de captura pode ser usado para calcular o intervalo de tempo entre dois eventos sucessivos, o que pode ser usado para desenvolver um medidor de intervalo de tempo. 
  • Modo comparador.
No modo comparador, a entrada é constantemente comparada com um evento específico dinâmico de modo a que gera uma interrupção sempre que um valor é alcançado. Então o timer zera a contagem depois de auto re-setar. O modo comparador pode ser definido pela seguinte equação: 
Tempo do modo de comparador =((valor do comparador - valor inicial) x  prescale)/freq. sistema(Hz)
A figura a seguir mostra a saída e a interrupção gerada no modo comparador : 
  • Modo Gated.
No modo gatilho, o timer só conta se um sinal na entrada estiver em modo ativo ou nível alto.Quando o timer alcança o valor de recarga, ele re-seta para 0001H e então zera a contagem. E se a função alternativa de saída do timer estiver ativa, o pino de saída do timer muda de estado (alto ou baixo) no re-set do timer.
A entrada de sinal para o timer nesse modo é o sinal de pulso onda quadrada. Este modo pode ser usado para medir o desliga/liga do timer que em retorno, pode medir a frequência do pulso de entrada.  
  • Modo captura/compara.
No modo captura/compara, o início do tempo decorrido do timer para os eventos de captura do timer, pode ser calculado pela seguinte equação: 
Tempo no modo captura/compara = ((valor de captura - valor inicial) x prescaler)/ freq. do sistema(Hz).

Bem! Com essas informações já dá para saber quais opções de uso do timer da linha Z8 encore e Z8 encore XP! podem satisfazer seus projetos. No próximo post, falaremos dos registradores usados nessas configurações de modo a ficar bem claro como acionar cada opção, até lá ! 

Nenhum comentário:

Postar um comentário