wewn. oscylator w attiny26

Dec 04, 2004 5 Replies

Witam Moze i to glupawe pytanie ale... jak ustawic wewnetrzny oscylator tego procka na 8 MHz? Ponizej opisuje jak ja to w tej chwili robie i jakie widze nieprawidlowosci.


-Ustawiam w pony prog-u ptaszki w polach CKSEL3, CKSEL1 i CKSEL0


-Wykonuje tez ustawienie kalibracji na najwyzsza mozliwa wartosc OSCCAL=0xff;



i pisze sobie programik w przyblizeniu polegajacy na czyms takim:



SIGNAL(SIG_OVERFLOW0){ if(PORTA==255) PORTA=0; else PORTA=255; }



to jest przerwanie od timera 0... Przy wybraniu preskalera CK/1024: TCCR0=5; powinno byc jakies 7812,5 zmian na sekunde a ja widze wyrazne migotanie diod... na oko z 40Hz... Co robie zle? A moze CK to nie jest bezposrednio czestotliwosc oscylatora wewnetrznego? Z tego co czytalem - jest. O co tu biega ? :)



Wlasnie zrobilem probe zmierzenia czestotliwosci pracy tego procka dla podanych ustawien:

preskaler timer0 - CK/1024 w funkcji obsl. przerwania (przepelnienia timera) miganie dioda co 256 wejsc do funkcji.

Dioda miga co 4,5 sekundy a co z tego wynika jej czestotliwosc migania to 0.222Hz

0,222*256*1024=58195Hz ??? Wychodzi ze takim zegarem jest CK... Gdzie sie traci ta czestotliwosc ??? Wewnetrznego oscylatora nawet sie nie da ustawic na tak niska czestotliwosc... wiec co jest grane skoro 8MHz to jest 137 razy wiecej niz wartosc wyliczona.

hehe - prowadze monolog ale moze komus cos przyjdzie do glowy :) Podlaczylem kwarc 8MHz... zaprogramowalem tym samym kodem, ustawilem "ptaszka" przy CKSEL0 (reszta niezaznaczona) i ... uklad pracuje z polowa predkosci ukladu NIBY ustawionego na wewn. oscylator 8MHz... wymiekam :) Chyba wstane i uruchomie stary i wymeczony oscyloskop :)

Dnia 2004-12-04 17:36, Użytkownik mavs[NOSPAM] napisał:

Kurcze .. dzisiaj niby nie jest trzynasty... poszla podstawa czasu :(

Użytkownik mavs[NOSPAM] napisał:

Hmmm... czegoś mi tu brakuje w tych wyliczeniach. A mianowicie stałej zliczania timera. Samo ustawienie preskalera na CK/1024 powoduje, że WEJŚCIE licznika jest taktowane 1024 razy mniejszą czastotą od zegara głownego. Problem w tym, że licznik zgłasza przerwanie po przepełnieniu. Czyli jeśli jest 8-mio bitowy, to może zgłaszać je po 256 tyknięciach.

58195 * 256 = 15.421.675Hz czyli coś kole 16MHz.

Pozdrawiam Grzegorz Kurczyk

Dnia 2004-12-04 20:08, Użytkownik Grzegorz Kurczyk napisał:

Dokladnie... sorry za zamieszanie - posta wywalilem ale i tak dzieki za odpowiedz :) To o czym zapomnialem to pojemnosc licznika ktory ma 256 stanow i przeciez dopiero po przepelnieniu nastepuje przerwanie... jeszcze raz sorry ... wpadlem na to po przewietrzeniu sie po... 10 godzinach siedzenia :)

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required