Ir ao conteúdo

Posts recomendados

Postado

Pessoal, bom dia. Estava estudando em como se altera a frequencia de pwm dos pinos do arduino...

 

Me deparei com essa tabela de valores em anexo. Queria saber se, tipo eu declarar

TCCR1B = TCCR1B & B11111000 | B00000001; 

no void setup do arduino a frequencia altera para 31.375 khertz como fala essa folha.

 

Uma outra dúvida.

 

Lih em outros sites que a "função"

TCNT=0;

inicializa a variável contador para zero e , pelo que eu entendi,

OCR1A=509;

Seria uma espécide de PRESCALER que invocaria uma função a cada ciclo pelo comando:

ISR(TIMER1_COMPA_vect){// interrupt when timer 1 match with OCR1A value
//suas instruções
}

Queria mais "entender " isso. Sobretudo o OCR1A, como poderei chamá-lo.

 

Desde já agradeço qualquer ajuda

Sem título.jpg

Postado

@lucianolcoa ,

 

O Timer1 do Atmega328 possui dois registradores que podem ser utilizados para se comparar a contagem do Timer1, e que podem ser programados para gerar uma interrupção quando a comparação for  verdadeira.

 

Esses registradores são justamente o Ocr1A e o Ocr1B .

 

E também existe um Prescaler real que você pode utilizar para gerar a temporização de uma maneira muito precisa.

 

E além disso existe a possibilidade de se programar a mudança de estado do pino correspondente quando a comparação for verdadeira.

 

Sugiro que você leia o datasheet do Atmega328P , existem muitos diagramas que mostram como funciona o processo.

 

Paulo

  • Curtir 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...