logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[AVR atmega168V]Pytanie odnosnie oscylatora

bua 09 Wrz 2008 09:56 1510 6
REKLAMA
  • #1 5518919
    bua
    Poziom 12  
    Witam.
    Mam troszke lamerskie pytanie, ale licze ze ktos bedzie chcial odpowiedziec. Oczywiscie poszukalem troszke tu i tam, ale nie znalazlem satysfakcjonujacej odpowiedzi.

    W nocie katalogowej jest napisane:
    0-4 Mhz @ 1.8-5.5V
    0-10Mhz@2,7-5,5V

    Czy ktos odpalal ta atmege na zewnetrznym oscylatorze wiekszym niz 10Mhz? (wersja procka bez "V" na koncu daje rade do 20Mhz).

    Np. Jezeli chcialbym kwarc 18.432 Mhz to nie ma mozliwosci zeby to pracowalo na tej czestotliwosci?
    Musze ustawiac dzielnik na conajmniej 2?

    pzdr
  • REKLAMA
  • #2 5520294
    11111olo
    Poziom 42  
    Jeśli na Atmedze pisze ATMEGA168 -20PI tzn. że bez problemu pracuje z rezonatorem 20 MHz. Uwaga! Aby działała poprawnie często zasilanie musi wynosić +5V.
  • REKLAMA
  • #3 5520481
    don diego
    Poziom 32  
    11111olo napisał:
    Jeśli na Atmedze pisze ATMEGA168 -20PI tzn. że bez problemu pracuje z rezonatorem 20 MHz. Uwaga! Aby działała poprawnie często zasilanie musi wynosić +5V.

    Kolega pyta o wersję "V", która według producenta może pracować z kwarcem do 10MHz. Kiedyś była na forum dyskusja na temat różnicy między mikrokontrolerami z "V" i bez "V". Podobno są to te same mikrokontrolery, tylko są poddawane różnym procedurom testowym w procesie produkcji.
  • REKLAMA
  • #4 5520519
    11111olo
    Poziom 42  
    Ostatnio testowałem AT90S2313-4 i bez problemu działały na kwarcu 11.0592 MHz (prawie 300% przetaktowania!)
    Najprościej jest sprawdzić ;)
  • REKLAMA
  • #5 5520759
    bua
    Poziom 12  
    Dzieki za odpowiedzi,
    Chcialem wiedziec, zanim zaczne projektowac plytke,
    bo jesli zostanie mi tylko i wylacznie dostepnych 10Mhz, to zrezygnuje z kwarcu i najprawdopodobniej uzyje oscylatora wewnetrznego,
    ale jesli to prawda ze atmegi ciagna na przetaktowanych zegarach to poswiece troszke miejsca na plytce i potestuje.

    Jeszcze jedno teoretyczne pytanie,
    Czy UART dziala lepiej na oscylatorze wewnetrznym np. 8Mhz czy na zewnetrznym np. 10Mhz.
    (celowo nie uwzgledniam tutaj oscylatorow nie bedacych liczba calkowita )

    pzdr
  • #6 5521003
    mirekk36
    Poziom 42  
    bua -> tu nie chodzi o oscylatory które mają częstotliwość nie będącą liczbą całkowitą - tylko o podział na tzw "przyjazne dla RS232" czy nie. Najprościej jak sobie zajrzysz do noty PDF dowolnego AVR'a i na ostatniej stronie działu poświęconego tematyce UART zobaczysz kilka tabelek w których będziesz miał rozpisane błędy transmisji dla różnej wielkości kwarców (częstotliwości taktowania procka). Bo np na kwarcu 11.059.200 Hz masz dostępną całą gamę prędkosci RS232 bez żadnych błędów praktycznie. A już dla 8MHz czy innych musisz wybierać i iść na jakieś kompromisy

    dodatkowo jest różnica pomiędzy tym czy użyjesz kwarca zewnętrznego czy oscylatora wewn - przy założeniu że chcesz właśnie korzystać z RS232, ponieważ oscylatory wewnętrzne bywają mniej dokładne a co gorsze ich dokładność potrafi zależeć czasem mocno od temperatury. Oczywiście jest z tego jakieś wyjście ale trzeba wtedy ustawiać sobie bajt kalibrujący oscylator wewn. Np każda ATmega8 jaką użyłem na wewn 8MHz zawsze ładnie bez dodatkowej kalibracji tymże bajtem ładnie śmigała na prędkości 9600. Ale za to prawie każda ATmega16, którą przynajmniej ja miałem w rękach musiała zostać poddana zmianie wartości bajtu kalibrującego żeby zaskoczył w ogóle RS232.

    Reasumując jeśli zależy ci na dużych i stabilnych prędkościach to zawsze wybierzesz kwarc i to przyjazny dla RS232. A jeśli transmisja nie ma aż takiego priorytetu to spokojnie można śmigać na oscylatorkach wewnętrznych.

    pozdr
  • #7 5521222
    bua
    Poziom 12  
    Dzieki za odpowiedz, odnosnie "przyjanzych kwarcow" to orientuje sie i znam wspomniana tabele, i dlatego napisalem w nawiasie ze celowo nie uwzgledniam kwarcow bedacych liczba calkowita.
    mirekk36 napisał:
    bua -> tu nie chodzi o oscylatory które mają częstotliwość nie będącą liczbą całkowitą - tylko o podział na tzw "przyjazne dla RS232" czy nie. Najprościej jak sobie zajrzysz do noty PDF dowolnego AVR'a i na ostatniej stronie działu poświęconego tematyce UART zobaczysz kilka tabelek w których będziesz miał rozpisane błędy transmisji dla różnej wielkości kwarców (częstotliwości taktowania procka). Bo np na kwarcu 11.059.200 Hz masz dostępną całą gamę prędkosci RS232 bez żadnych błędów praktycznie. A już dla 8MHz czy innych musisz wybierać i iść na jakieś kompromisy



    mirekk36 napisał:

    dodatkowo jest różnica pomiędzy tym czy użyjesz kwarca zewnętrznego czy oscylatora wewn - przy założeniu że chcesz właśnie korzystać z RS232, ponieważ oscylatory wewnętrzne bywają mniej dokładne a co gorsze ich dokładność potrafi zależeć czasem mocno od temperatury. Oczywiście jest z tego jakieś wyjście ale trzeba wtedy ustawiać sobie bajt kalibrujący oscylator wewn. Np każda ATmega8 jaką użyłem na wewn 8MHz zawsze ładnie bez dodatkowej kalibracji tymże bajtem ładnie śmigała na prędkości 9600. Ale za to prawie każda ATmega16, którą przynajmniej ja miałem w rękach musiała zostać poddana zmianie wartości bajtu kalibrującego żeby zaskoczył w ogóle RS232.

    Reasumując jeśli zależy ci na dużych i stabilnych prędkościach to zawsze wybierzesz kwarc i to przyjazny dla RS232. A jeśli transmisja nie ma aż takiego priorytetu to spokojnie można śmigać na oscylatorkach wewnętrznych.

    pozdr

    Dzieki wielkie za odpowiedz, o to mi chodzilo.
REKLAMA