Engenheiro eletricista - Desenvolvedor de hardware. Protótipos e projetos. Desenvolvimento de software de interface.(aguivone@gmail.com)
quinta-feira, 7 de fevereiro de 2013
Gerando pwm usando o timer 2 do avr
//************************************************************************
// pwm usando o timer 2
// microcontrolador : AVR ATMega328p
// Autor : Aguivone
// data de criação : 07/02/2013.
//
//************************************************************************
#define F_CPU 16000000UL // 16 MHz deve vir antes das interrupçoes
#include <avr/io.h>
int main(void)
{
DDRB = 0xFF; //inicializa portB como saida
DDRD = 0xFF; //inicializa portD como saida
TCCR2A = 0XA3;// configura pino B3 e D3 como saida pwm e modo fast PWM
TCCR2B = 0X01;// sem divisão de prescaler
OCR2A = 100;
OCR2B = 50;
for(;;)
{
//faz nada!
}
}
/* para calcular a frequência no modo pwm do timer2
sera :
F = Fclock/N.128 (isso se deve ao fato de não estar usando o OCR2A conforme o datasheet especifica)
onde N é o prescaler (ex.1,8...)*/
Assinar:
Postar comentários
(
Atom
)
Nenhum comentário :
Postar um comentário
olá,digite aqui seu comentário!