quarta-feira, 6 de fevereiro de 2013

PWM no modo 8bits, usando o timer1



//************************************************************************
//                            PWM USANDO O TIMER1 (MODO 8 BITS)
//  microcontrolador    : AVR ATMega328p
//  Autor           : Aguivone 
//  data de criação     : 06/02/2013.
//
//************************************************************************

#define F_CPU 16000000UL  // 16 MHz deve vir antes das interrupções
#include <avr/io.h>

int main(void)
{
         DDRB = 0xFF;  //inicializa portB como saidas
 TCCR1A = 0XA1;// configura pino B1 e B2 como saida(modo não inversor) e fast PWM
         TCCR1B = 0X09;// sem divisão de prescaler
         OCR1A = 100;//valor máximo é 255.
 OCR1B = 50;
           for(;;)
            {
             //faz nada!  
            }
}

/* para calcular a frequência no modo 8 bits
 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...)*/

Nenhum comentário :

Postar um comentário

olá,digite aqui seu comentário!