Возникла проблема, не могу сделать плавное изменения яркости светодиода на аттини 2313, а именно с использованием таймера Т0. Прочел статьи разных авторов по шим для разных контроллеров. Сваял програмку, пользовался даташипом естественно. Где то косяк, но где?
Схема: к 14 ноге контроллера PB2/OC0A/... присоединен светодиод.
сам код
#include <avr/io.h>
#include <math.h>
#include <util/delay.h>
int main(void)
{
PORTB=0x00;
DDRB=0xFF;
TCCR0A =(1<<WGM02)|(1<<WGM01)|(1<<WGM00)|(1<<COM0A1)|(1<<COM0A0);
TCCR0B =(1<<CS00);
TCNT0 = 0x00;
OCR0A = 0x5;
while(1)
{
int i = 1;
while( i < 255)
{
OCR0A++;
_delay_ms(50);
i++;
}
}
}
Раздел: AVR
Схема: к 14 ноге контроллера PB2/OC0A/... присоединен светодиод.
сам код
#include <avr/io.h>
#include <math.h>
#include <util/delay.h>
int main(void)
{
PORTB=0x00;
DDRB=0xFF;
TCCR0A =(1<<WGM02)|(1<<WGM01)|(1<<WGM00)|(1<<COM0A1)|(1<<COM0A0);
TCCR0B =(1<<CS00);
TCNT0 = 0x00;
OCR0A = 0x5;
while(1)
{
int i = 1;
while( i < 255)
{
OCR0A++;
_delay_ms(50);
i++;
}
}
}
Раздел: AVR