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.

Procesor nie odpowiada po zmianie zegara

MasMas 13 Lip 2010 16:31 750 2
  • #1 13 Lip 2010 16:31
    MasMas
    Poziom 16  

    Witam,

    Bawię się w programowanie uC i wszystko szło dobrze póki nie wpadłem by przetestować jak działa procesor z innymi ustawieniami zegara.
    Mowa konkretnie o ATMega 8, fabrycznie taktowana wewnętrznym 1MHz. Chciałem zmienić na dalej wewnętrzny tylko 8 MHz (podobno jest niezbyt dokładny, ale nie potrzeba mi dokładności do testów).
    Otworzyłem więc datasheet'a , czytałem i w tabeli odczytałem, że należy ustawić fuse bity CKSEL3..0. Aby był 8MHz wewnętrzne jest podana wartość 0100 czyli zrozumiałem to w ten sposób, że bit CKSEL2 ma być na 1 czyli ma być niezaprogramowany (bo jak jest 0 to jest bit zaprogramowany a jak 1 to niezaprogramowany). Fabrycznie jest 0001 a ja chciałem dać na 0100 więc przestawiłem fuse i dałem "program" (używam programu ISPProg).
    Potem wyłączyłem reset i ... procek nie wystartował... Miał migać diodami (wcześniej na 1Mhz działało). To próbuję dać "Read signature" i pisze "NOT KNOWN (FF,FF,FF)" - program nie widzi procesora... Zupełnie...

    Gdzieś jeszcze potem w necie wyczytałem, że należy ustawić bity SUT1..0 - ja ich nie ruszałem... Zmieniłem tylko CKSEL, czy to przez to ?
    Zacząłem się teraz zastanawiać czy na pewno odznaczyłem bit CKSEL0... Kurcze przecież patrzyłem na niego to nie mogłem go zostawić na 1, ale teraz już sam nie wiem... Jeśli go zostawiłem to by oznaczało, że włączyłem "External RC Oscillator", ale chyba go na pewno odznaczyłem...

    Da się jakoś procesor przywrócić do życia ? Nie mogę nic zmienić bo go program nawet nie widzi... Niby tragedii nie będzie, ale szkoda mi atmegę wyrzucać...

    Z góry dziękuje,
    Pozdrawiam.

    0 2
  • Pomocny post
    #2 14 Lip 2010 13:20
    Klima
    Poziom 30  

    No to spróbuj podłączyć zewnętrzny obwód RC. To taki problem?

    0
  • #3 14 Lip 2010 14:03
    MasMas
    Poziom 16  

    O rany :) Reanimowałem... Tak jak podejrzewałem jednak przez moją własną głupotę nie odznaczyłem CKSEL0 i weszło na zewnętrzny RC...
    Podpiąłem ten RC tak jak pisało w nocie katalogowej i wystartował, odznaczyłem fusa i chodzi ;)
    Dzięki za pomoc, a problem to nie był tylko po prostu nie wiedziałem za bardzo co to jest RC a po za tym to jeszcze płytka testowa i....
    Ale wszystko śmiga, dzięki za pomoc :D

    Pozdrawiam.

    0