Oscylator attiny2313

Nov 19, 2011 4 Replies

Mam problem z wewnêtrznym generatorem RC w ATTINY2313. Fabrycznie uk³ady ustawione s± na 8MHz z podzia³em czêstotliwo¶ci przez 8. Wy³aczam wiêc podzia³ przez 8 (bit CKDIV8) i wszystko jest OK ale poszczególne egzemplarze maja bardzo du¿y rozrzut czêstotliwo¶ci wewnêtrznego zegara RC. Z tego co mo¿na wyczytaæ na stronie Atmela w fabryce uk³ady ustawiane s± z dok³adno¶ci± do 3%. W praktyce kupi³em 7 uk³adów Attiny 2313 i ka¿dy z nich ma inn± czêstotliwo¶æ wewnêtrznego zegara. Zrobi³em w programie wpisanym do procka podzia³ zegara przez 210 i otrzymujê na nodze czêstotliwo¶c 38kHz. W praktyce poszczególne egzemplarze daj± na nodze czêstotliwo¶ci od 28kHz do



46kHz wiêc rozrzut czêstotliwo¶ci poszczególnych egzeplarzy wynosi kilkadziesi±t %. Sprawdzi³em w prockach bajt kalibracji i w ka¿dym egzemplarzu jest zapisany inna warto¶æ tego bajtu.

egzemplarz czêstotliwo¶c uzyskiwana bajt kalibracji



1 46kHz 0x52
2 41kHz 0x59
3 38kHz 0x5D
4 36kHz 0x61
5 35kHz 0x64
6 30kHz 0x6D
7 28kHz 0x70

Widaæ, ¿e czêstotliwo¶æ zegara ma zwi±zek z warto¶ci± bajtu kalibracji wpisanego fabrycznie do uk³adu. Sk±d siê biezrze taki rozrzut, czy to jest normalne. Jak to unormowaæ? Wyczyta³em, ¿e po restarcie bajt kalibracji jest przepisywany do rejestru OSCCAL w uk³adzie. Próbujê wiêc w programie wpisywaæ do tego rejestru warto¶æ 0x5D ale nie zmienia to czêstotliwo¶ci w ¿adnym egzemplarzu. Uk³ady programujê przez AVR-studio. Mo¿na tam odczytaæ warto¶æ bajtu kalibracyjnego ale nie mo¿na jej zapisaæ pod zmieniaon± warto¶ci±. Nie mam ju¿ pomyslu co robiæ. Mo¿e kto¶ ju¿ siê mordowa³ z tym tematem?



Zbyszek


W dniu 20.11.2011 00:45, Zbyszekkk pisze:

Z tego co ja wyczytałem kiedyś w dokumentacji to ich kalibracja daje

+-10% dokładności.

A jakie napięcie zasilania?

Ja bym pewnie przeczytał AVR053.

Mi wychodzi rozrzut wiêkszy ni¿ 10% (ok 25%) i im wiekszy rozrzut tym wiêksza warto¶æ korekcji wpisana fabrycznie - tylko, ¿e nie koryguje.

Napiêcie idealnie 5V stablizowane do 0,01V

Ju¿ wczoraj przeczyta³em tylko, ¿e nic z tego nie wynika. Mo¿e jaki¶ bit w fusach trzeba w³±czyæ, aby wpisana fabrycznie korekta zegara dzia³a³a. Mo¿e trzeba co¶ w kodzie programu umie¶ciæ?

Zbyszek

Doszed³em ju¿ gdzie by³ b³±d. Mój program wpisywa³ do rejestru osccal warto¶æ 00 wiêc korekty zegara wpisane fabrycznie nie by³y brane pod uwagê. Swoj± drog± widaæ jakie rozbie¿ne maj± poszczególne generatory RC. Dobrze, ¿e robi± t± korektê fabrycznie. Mam nadziejê ¿e po zmianie kodu programu bêdzie ju¿ dobrze. Zbyszek

U¿ytkownik "Zbyszekkk" snipped-for-privacy@MALPApoczta.onet.pl> napisa³ w wiadomo¶ci news:jac26n$pks$ snipped-for-privacy@news.onet.pl...

Witam My u¿ywamy produkcyjnie procesrów AVR i przez d³uzszy czas nie by³o ¿adnych problemów z komunikacj± RS232, przy wykorzystywaniu wewnêtrzengo RC, czyli dok³adno¶æ raczej lepsza ni¿ 2%. Problemy pojawi³y siê, gdy by³y zawirowania na rynku i problem z dostêpno¶ci±. Wtedy wprowadzili¶my proecdurê kalibracji w razie potrzeby oraz przej¶cie na rezonator kwarcowy w nowych opracowaniach.

Join the Discussion

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

Didn't find your answer?

Ask the community — no account required