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

Atmega32 nie wykonuje programu po zmianie fuse bitów na zewnętrzny kwarc

tomasz256 17 Lip 2005 12:41 1166 5
REKLAMA
  • #1 1659857
    tomasz256
    Poziom 12  
    Posty: 25
    Mam taki problem, zmianialem fuse bity na zewnętrzny kwarc i atmega przestała mi wykonywać wpisany program. Powróciłem do poprzednich ustawień wewnętrznego kwarcu i nadal atmega nie chce wykonywać programu. Poniżej dołączam obraz fuse z PonyProg.
    Trochę mnie dziwi, że mogę zmieniać fusy i wgrywać aplikację, ale program nie jest wykonywany.
    Jakieś sugestie?
    Program bascoma
    Config Portb = Output
    Do
    Set Portb
    Wait 5
    Reset Portb
    Wait 5
    Loop
    Załączniki:
    • fuse.jpg (28.05 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • REKLAMA
  • #2 1660270
    LordBlick
    VIP Zasłużony dla elektroda
    Posty: 5438
    Pomógł: 549
    Ocena: 69
    1. Skąd pewność, że nie działa ? A może działa za szybko i tego nie dostrzegasz ?
    2. gdzie jest dyrektywa $crystal = ?
    3. Potrafisz czytać Help-a od Bascoma ? ;)
    -----------------------
    @Dexter :
    - programowanie działa, więc zegar systemowy też musi działać, ewentualnie z inną częstotliwością, niż porządana.
    - CKOPT jest dla zewnętrznych rezonatorów kwarcowych > 8MHz, więc nie musi być programowane, mi nawet działało, choć niestabilnie (zbliżenie palca psuło humor generatorowi... ;)) na 16MHz (ATmega8515) bez zaprogramowanego CKOPT.
    --
    Pozdrawiam, Daniel
  • REKLAMA
  • #3 1660710
    Dexter77
    Poziom 28  
    Posty: 889
    Pomógł: 134
    Ocena: 19
    Czemu wogole uzywasz PonyProga skoro masz wbudowany programator w Bascoma. W Bascomie fusy sa ladniej opisane i trudniej o poylke. Z tego co pamietam to CKOPT musi byc zaprogramowany do pracy z zewn. kwarcem. Byc moze przestawiles na External clock a nie kwarc i dlatego nie dziala.
    Pozdro
    Dexter
  • REKLAMA
  • #4 1662123
    tomasz256
    Poziom 12  
    Posty: 25
    Light'I,
    Dzięki. To jednak jest coś na płytce, niby nic tam nie ma oprócz diód i kwarcu i zasilania, ale dioda przerywa. Zmieniłem program ustawiając przed pustą pętlą Do ...Loop Portb=255
    Czyli:
    $crystal 8000000 (przestawiłem fuse bity)
    config portb = Output
    Portb=255
    do
    loop

    Przestawiłem potem na zewnętrzny kwarc i działa, tylko ta dioda dziwnie się zachowuje.

    Dexter
    Znalazłem rozpisane na forum w PonyProg i dla pewności ustawiłem w tamtym programie
  • REKLAMA
  • #5 1662593
    LordBlick
    VIP Zasłużony dla elektroda
    Posty: 5438
    Pomógł: 549
    Ocena: 69
    Reset podciągnąć do zasilania rezystorem 10kΩ i odsprzęgnąć zasilanie kondensatorami 100µF (elektrolit) i 100nF(zwykły, może być ceramiczny). Najprawdopodobnie układ się resetuje z jakiegoś powodu. Może Watchdog jest włączony (Zaprogramowany fusebit WDTON) ?
  • #6 1665856
    tomasz256
    Poziom 12  
    Posty: 25
    Light'I,
    Doczytałem, że za Watchdog odpowiada WDRF (WDTON nie znalazłem) tylko nie wiem jak tą informację wyciągnąć z atmegi.
REKLAMA