Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Atmel 89c2051 i kwarc 32kHz - czy komuś działa?

Dykus 09 Cze 2005 18:57 3739 4
  • #1 09 Cze 2005 18:57
    Dykus
    Poziom 26  

    Witam,

    Podłączyłem do uC 'Atmel 89c2051-24PI' rezonator "zegarkowy" 32.768 Hz, ale generator (po włączeniu zasilania) nie potrafi wystartować.
    Układ zasilam napięciem 5V, kondensatory próbowałem różne, np. 47pF, 150pF... wg dokumentacji, dla rezonatorów ceramicznych (zakładam, że w ten "zakres" wchodzi również zegarkowy kwarc 32kHz) powinno dołączyć się kondensatory 47pF ±10pF.

    Sprawdzałem dla kwarcu 9MHz i generator startuje bez problemu. Wcześniej ten rezonator 32kHz pracował w generatorze w CD4060 (licznik z generatorem), więc też uważam go za sprawny. Jedynie mogę mieć podejrzenia, że jest mało aktywny i przez to nie potrafi w Atmelu wystartować generator.

    Czy ktoś stosował z pozytywnym rezultatem takie rezonatory przy tych procesorach?

    0 4
  • #2 09 Cze 2005 19:06
    mipix
    Poziom 29  

    Wiatm

    Dykus napisał:
    ... (zakładam, że w ten "zakres" wchodzi również zegarkowy kwarc 32kHz) ...


    Czy kolega czytał kartę katalogową tego Atmel-a ?
    jest tam napisane co innego.

    http://kuniow.pl/~mipik/Pliki/89c2051.pdf

    Cytat:
    Fully Static Operation : 0 - 24 MHz

    0
  • #4 09 Cze 2005 20:50
    Dykus
    Poziom 26  

    mipix napisał:
    Czy kolega czytał kartę katalogową tego Atmel-a ?
    jest tam napisane co innego.

    Hm, chyba mnie nie zrozumiałeś. Czytałem notę katalogową i są tam podane dwie wartości kondensatorów (z tolerancją) - jedne, dla rezonatorów kwarcowych, drugie dla rezonatorów ceramicznych. Z mojej wiedzy wynika, że rezonatory ceramiczne produkuje się na "małe" częstotliwości (kHz), zaś kwarcowe głównie na MHz. Stąd założyłem, że kwarc 32kHz mieści się w tej pierwszej grupie i należą mu się kondensatory 47pF (a nie 30pF jak dla rezonatorów kwarcowych).
    Czy teraz ok?

    Poza tym, to, że mikrokontroler może pracować od 0 Hz nie oznacza, że jego wewnętrzny generator może pracować przy takiej częstotliwości. Chodzi tu raczej o samą budowę układu - brak układów dynamicznych, np. dynamiczna pamięć RAM, itp. A ja chcę wykorzystać wewnętrzny generator z kwarcem 32kHz.

    Dodano po 1 [godziny] 22 [minuty]:

    Ok, rzeczywiście moja wina. Szukałem, ale niezbyt dokładnie. Szkoda w sumie, że Atmel na swoich stronach nie wspomina (przy architekturze '51) o używaniu takich rezonatorów (a przynajmniej ja nic nie znalazłem - może znowu źle szukałem?:).

    W ramach zadośćuczynienia, załączam schemat, w jaki sposób ja podłączyłem rezonator 32.768 kHz.
    Generowany sygnał jest stabilny (pomiar miernikiem częstotliwości, stabilność krótkoterminowa lepsza niż 0.1Hz), z czasem powoli odpływa w górę (po kilkunastu minutach różnica <1Hz).
    Na wejściu XTAL1 (nóżka 5) sygnał ma kształ jakby mocno zaokrąglonego prostokąta o amplitudzie 2V. Na wejściu XTAL2 (nóżka 4) sygnał przypomina już sinus i ma amplitudę 0.8V.
    Czas ustalania się sygnału generatora wynosi nieco ponad 1 sekundę, co należy uwzględnić przy dobieraniu elementów dla resetu (stan wysoki na wejściu RST musi trwać ponad 1.5 sekundy od momentu włączenia zasilania).
    Zasilanie +5V, przy czym generator pracuje jeszcze poprawnie (przy gorszej stabilności) i potrafi wystartować przy napięciu ~1.7V (procesor też jeszcze pracuje, ale mniej poprawnie:).
    Oczywiście przy 5V mikrokontroler pracuje stabilnie.

    Istotne jest podłączenie do odpowiednich nóżek - po zamianie pinów 4 i 5 generator nie pracował (u mnie).

    PS Rysunek powstał na bazie schematu zamieszczonego tutaj:
    https://www.elektroda.pl/rtvforum/viewtopic.php?p=1295990#1295990
    przez użytkownika Elektrooonik.

    0
  • #5 09 Cze 2005 21:02
    LordBlick
    VIP Zasłużony dla elektroda

    No to jeszcze dorzucę, to co znalazłem w pewnym pdf-e Motoroli - aplikacja , zresztą bardzo podobna do tej j/w.
    Legenda :
    XTAL1 - wejście inwertera generatora
    XTAL2 - wyjście inwertera generatora
    Tak przy okazji - AVR-y posiadające wbudowany timer asynchroniczny (np. AT90S8535, ATmega8535, ATmega16, ATmega8 itd.) już są przygotowane do bezpośredniego przyłączenia do ich wyprowadzeń (OSC1/OSC2) oscylatora zegarkowego 32768Hz i nie są potrzebne żadne dodatkowe elementy w tym przypadku, jednak to nie jest metoda na uzyskanie zegara systemowego, tylko dodatkowego właśnie dla timera. W przypadku ATmega8 jeżeli chcemy użyć Timer2 w asynchronicznym trybie "zegarkowym", ponieważ to są te same fizycznie wyprowadzenia, co zewnętrzny oscylator kwarcowy dużych częstotliwości i odpada jego użycie, zegar systemowy musi być ustawiony na wewnętrzny oscylator RC, którego kalibrację jak najbardziej można oprzeć na odczytach z tego timera. W przypadku, gdy chcemy tak bardzo wolniutki zegar systemowy, trzeba wykorzystać aplikację z rysunku poniżej. W przypadku ATmega8 odpada wtedy praca Timer/Counter2 w trybie asynchronicznym, gdyż jest to inny układ połączeń i nie można ustawiać bitu AS2 w rejestrze ASSR.

    0