-
1. Data: 2011-11-19 23:45:41
Temat: Oscylator attiny2313
Od: "Zbyszekkk" <z...@M...onet.pl>
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
-
2. Data: 2011-11-20 00:34:15
Temat: Re: Oscylator attiny2313
Od: Michoo <m...@v...pl>
W dniu 20.11.2011 00:45, Zbyszekkk pisze:
> 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%.
Z tego co ja wyczytałem kiedyś w dokumentacji to ich kalibracja daje
+-10% dokładności.
> 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.
A jakie napięcie zasilania?
> 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ć.
Ja bym pewnie przeczytał AVR053.
--
Pozdrawiam
Michoo
-
3. Data: 2011-11-20 11:26:31
Temat: Re: Oscylator attiny2313
Od: "Zbyszekkk" <z...@M...onet.pl>
>W dniu 20.11.2011 00:45, Zbyszekkk pisze:
>> 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%.
> Z tego co ja wyczytałem kiedyś w dokumentacji to ich kalibracja daje +-10%
> dokładności.
Mi wychodzi rozrzut większy niż 10% (ok 25%) i im wiekszy rozrzut tym
większa wartość korekcji wpisana fabrycznie - tylko, że nie koryguje.
>> 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.
> A jakie napięcie zasilania?
Napięcie idealnie 5V stablizowane do 0,01V
>> 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ć.
> Ja bym pewnie przeczytał AVR053.
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
-
4. Data: 2011-11-20 23:24:19
Temat: Re: Oscylator attiny2313
Od: "Zbyszekkk" <z...@M...onet.pl>
> 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
-
5. Data: 2011-11-21 08:32:14
Temat: Re: Oscylator attiny2313
Od: "EM" <e...@p...onet.pl>
Użytkownik "Zbyszekkk" <z...@M...onet.pl> napisał w wiadomości
news:jac26n$pks$1@news.onet.pl...
>> 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
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.
--
Pozdr
EM