Probuje wyenerować czestotliwość na AtMega16, niby proste, jest instrukcja jak to zrobić które bity jak ustawić, a wyszło jak zwykle, czyli nie działa
. W ogóle jest jakaś różnica czy ja to zrobie na liczniku 0 czy na 2? Na razie robie na wewnętrznym 1Mhz i chce uzyskać około 8Hz żeby było coś widać na diodzie. Więc zgodnie ze wzorem z datasheet
f=fclk/(2*N*(1+OCRn)) daje preksaler(N) 256 i OCR2 ustawiam na 243 co powinno dac to 8,0046 Hz, ale oczywiście dioda się nie pali.
Kod pod licznik 2, czyli na PD7:
Co robię nie tak? Na liczniku0 to samo.
f=fclk/(2*N*(1+OCRn)) daje preksaler(N) 256 i OCR2 ustawiam na 243 co powinno dac to 8,0046 Hz, ale oczywiście dioda się nie pali.
Kod pod licznik 2, czyli na PD7:
#include <avr/io.h>
#define F_CPU 1000000UL
int main(void)
{
DDRD=0xFF; //PortD jako wyjscia
TCCR2|=(1<<CS21)|(1<<CS22)||(1<<WGM21)|(1<<COM20); //presk 265 ; wlaczony tryb CTC; zmiana stanu OC2 na przeciwny gdy nastapi porownanie
OCR2=243;// ~8Hz
while (1)
{}
}
Co robię nie tak? Na liczniku0 to samo.