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

Jak odzyskać łączność z Atmega16 po ustawieniu external clock?

MES Mariusz 30 Sty 2007 13:13 2089 8
REKLAMA
  • #1 3506270
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 224
    Witam.

    Ustawiłem fuse bity w Atmega16 na external clock i straciłem łączność z układem.

    Jak odzyskać łączność z Atmega16 po ustawieniu external clock?

    Co teraz zrobić?

    Acha, i dlaczego nie mogę wybrać odpowiedniej opcji dla kwarca 10MHz?

    Dostępne wyświetlane opcje:

    Jak odzyskać łączność z Atmega16 po ustawieniu external clock?

    Jak odzyskać łączność z Atmega16 po ustawieniu external clock?

    Co wybrać dla rezonatora 10MHz?
  • REKLAMA
  • #2 3506403
    _Robak_
    Poziom 33  
    Posty: 2209
    Pomógł: 231
    Ocena: 29
    Nie wiem czy wziales pod uwage to ze external clock to nie jest popularnie uzywany kwarc. To jest uklad ktory generuje impulsy i podpinasz sie tylko do xtal1. W zalaczniku masz pdfa ktory opisuje po krotce co i jak. Proponuje korzystac z programatora w ktorym recznie ustawiasz fuse bity, wtedy ustawisz sobie tak jak bedzie pasowalo najlepiej:)
    Załączniki:
    • Clock source AVR.pdf (866.62 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #3 3506455
    pubus
    Poziom 30  
    Posty: 1289
    Pomógł: 139
    Ocena: 32
    O ile dobrze pamiętam to Ext CLK oznacza nie kwarc ale zewnętrzny generator...
    To spora różnica bo generator jak sama nazwa wskazuje generuje sygnał zegarowy natomiast kwarc razem z układem wewnątrz uC tworzy generator...
    Aby dogadać się z uC i zmienić fusy musisz podać sygnał zegarowy...
    Podpiąć generator lub próbować z sygnałem generowanym przez inny uC...
  • REKLAMA
  • #4 3509033
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 224
    _Robak_ napisał:
    Nie wiem czy wziales pod uwage to ze external clock to nie jest popularnie uzywany kwarc. To jest uklad ktory generuje impulsy i podpinasz sie tylko do xtal1. W zalaczniku masz pdfa ktory opisuje po krotce co i jak. Proponuje korzystac z programatora w ktorym recznie ustawiasz fuse bity, wtedy ustawisz sobie tak jak bedzie pasowalo najlepiej:)

    Zewnętrzny zegar ustawiłem przez przypadek w pośpiechu. Dysponuję programatorem, który po ISP pozwala zmieniać fuse bity... pod warunkiem, że potrafi nawiązać komunikację z procesorem, a w tej chwili jest to niemożliwe. Pozostaje mi więc zrobić to, co napisał Pubus.

    PS> Dalej nie wiem, jak mam ustawić fuse bity dla rezonatora kwarcoego 10MHz. Czyżby programator nie przewidywał takiej możliwości?

    Dlaczego w okienku fuse bitów największa opcja to 8MHz jeśli sam Atmega16 potrafi pracować przy 16MHz?
  • #5 3509308
    _Robak_
    Poziom 33  
    Posty: 2209
    Pomógł: 231
    Ocena: 29
    jest 8MHz poniewaz tyle moze pracowa przy wewnetrznym oscylatorze.
  • REKLAMA
  • #6 3509313
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 224
    _Robak_ napisał:
    jest 8MHz poniewaz tyle moze pracowa przy wewnetrznym oscylatorze.

    No ale ja mu chcę zapodać na zewnętrzny 10MHz (dla łatwiejszych przeliczeń w późniejszej pracy teoretycznej - dokumentacji - nad projektem).
  • #7 3509412
    _Robak_
    Poziom 33  
    Posty: 2209
    Pomógł: 231
    Ocena: 29
    Wyglada ze w opcjach tego programu tego nie uwzglednili(?). Proponuje sciagnac program ISPPROG i tam recznie ustawic bity CKSEL3..1 na 111 CKOPT na 0 i wtedy na pewno bedzie ci dzialac, oczywiscie po wczesniejszym posawieniu go na nogi sygnalem zewnetrznym.
  • #8 3509454
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 224
    _Robak_ napisał:
    Proponuje sciagnac program ISPPROG i tam recznie ustawic bity CKSEL3..1 na 111 CKOPT na 0 i wtedy na pewno bedzie ci dzialac, oczywiscie po wczesniejszym posawieniu go na nogi sygnalem zewnetrznym.

    Z jakim programatorem / interfejsem sprzętowym działa ISPPROG?
  • REKLAMA
  • #9 3509465
    _Robak_
    Poziom 33  
    Posty: 2209
    Pomógł: 231
    Ocena: 29
    Cytat:
    W programatorze można ustawić dowolny inny schemat połączeń, np. zgodny z AT-Prog, SI-Prog, UISP, STK200/300 lub AEC ISP. Można także przypisać dowolne piny portu drukarki do sygnałów programowania procesora i wybrać polaryzację sygnału RESET.

Podsumowanie tematu

LABEL_AI_GENERATED
Ustawienie fuse bitów w mikrokontrolerze Atmega16 na tryb external clock spowodowało utratę łączności z układem, ponieważ external clock wymaga podania zewnętrznego sygnału zegarowego, a nie jest to standardowy kwarc. Aby odzyskać komunikację i zmienić fuse bity, konieczne jest dostarczenie sygnału zegarowego z zewnętrznego generatora lub innego mikrokontrolera. W standardowych programatorach ISP komunikacja jest niemożliwa bez sygnału zegarowego. Opcje fuse bitów w używanym oprogramowaniu programatora nie uwzględniają bezpośrednio rezonatora kwarcowego 10 MHz, a najwyższa dostępna opcja to 8 MHz, co odpowiada maksymalnej częstotliwości wewnętrznego oscylatora Atmega16. Zaleca się użycie programu ISPPROG, który pozwala ręcznie ustawić bity CKSEL3..1 na 111 i CKOPT na 0, co umożliwia pracę z zewnętrznym rezonatorem 10 MHz po podaniu odpowiedniego sygnału zegarowego. ISPPROG obsługuje różne schematy połączeń programatora, takie jak AT-Prog, SI-Prog, UISP, STK200/300 czy AEC ISP, oraz pozwala na konfigurację pinów i polaryzacji sygnału RESET.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA