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

Ustawianie fuse bitów w Atmega8.

bobo21 23 Gru 2009 11:34 4465 11
REKLAMA
  • #1 7426140
    bobo21
    Poziom 16  
    Witam.
    Mam pytanie do bardziej zaawansowanych użytkowników niż ja. Otóż jestem w trakcie budowy Zegarka LED na Atmedze 8. https://www.elektroda.pl/rtvforum/topic900947-0.html I mam do was pytanie. Czy muszę ustawiać w PonyProgu fuse bity takie jak podał autor tego wątku tzn.
    RSTDISBL = 1
    WDTON = 1
    SPIEN = 0
    CKOPT = 0
    EESAVE = 0 (lub 1)
    BOOTSZ1 = 1
    BOOTSZ0 = 1
    BOOTRST = 0

    BODLEVEL = 1
    BODEN = 1
    SUT1 = 1
    SUT0 = 0
    CKSEL3 = 0
    CKSEL2 = 0
    CKSEL1 = 1
    CKSEL0 = 0

    Jeśli tak to jeśli np. SUT1=1 to w Ponyprogu muszę to opcję mieć odznaczoną? Tak pisało w innym temacie iż w tym programie odznaczone=1
    Dziękuję i pozdrawiam.
  • REKLAMA
  • #2 7426705
    Mari@@@n
    Poziom 19  
    W PonyProgu jest odwrotnie nie wiem jak autor projektu podawał ale przy ustawianiu fuse bitów przykładowo zgodnie z dokumentacją procesora jeśli w dokumentacji jest podana wartość jeden to w PonyProgu wartość jest odznaczona a jeśli zero to zaznaczona w PonyProgu.
  • #3 7426908
    _Robak_
    Poziom 33  
    gothye napisał:
    jęsli wartość=1 to zaznaczona , jeśli wartość=0 odznaczona

    Oby bobo21 nie zdazyl zmieniac fuse bitow za Twoja rada, bo bedzie mial trupa :> 0 oznacza bit zaprogramowany a 1 niezaprogramowany !! Czy to w ponyprogu czy w avrstudio ptaszek to 0 1 to "nie ptaszek".
  • REKLAMA
  • #4 7426935
    gary2007
    Poziom 14  
    Już się czasami gubie czytając posty o fusbitach. Nie używałem nigdy pony proga do ustawiania tych bitów, ale normalnie to wg. dokumentacji atmela 0 oznacza bit zaprogramowany a 1 oznacza bit niezaprogramowany. W programie, który używałem do ustawiania fusbitów (nie pamiętam nazwy) ptaszek oznaczał zaprogramowanie bitu (czyli ustawienie 0). Czytam że w pony progu jest odwrotnie, ale odwrotnie w stasunku do czego? Do całej reszty programów? Czyli odwrotnie niż wcześniej napisałem?
  • #5 7427262
    tmf
    VIP Zasłużony dla elektroda
    Latwo to zapamietac w ten sposob - swiezy EEPROM (niezaprogramowany) zawiera same 0xFF - stad '1' to bit niezaprogramowany. Programujac zeruje sie bity - stad bit zaprogramowany jest rowny '0'. Ptaszek oznacza zrobienie "czegos", czyli zaprogramowanie, stad ptaszkami oznacza sie bity zaprogramowane. Proste :)
  • #6 7430489
    bobo21
    Poziom 16  
    Dziękuję za odpowiedź.
    Czyli z tego co zrozumiałem to jeśli mam 0 to daje ptaszka a jeśli 1 nie to pozostawiam puste pole.
    RSTDISBL = 1 - bez ptaszka
    WDTON = 1 - bez
    SPIEN = 0 - daję ptaszek
    CKOPT = 0 - daję
    EESAVE = 0 (lub 1)
    BOOTSZ1 = 1 bez
    BOOTSZ0 = 1 bez
    BOOTRST = 0 daję

    BODLEVEL = 1 bez
    BODEN = 1 bez
    SUT1 = 1 bez
    SUT0 = 0 daję
    CKSEL3 = 0 daję
    CKSEL2 = 0 daję
    CKSEL1 = 1 bez
    CKSEL0 = 0 daję

    Pozdro
  • #7 7431933
    Konto nie istnieje
    Poziom 1  
  • REKLAMA
  • #8 7432935
    bobo21
    Poziom 16  
    Dzięki za odpowiedź.
    Masz rację ja kompletnie nie rozumiem o co chodzi w tych fuse bitach. Chciałem tylko sam sobie zaprogramować tą Atmegę8. Ale widzę że będą problemy z tymi fuse bitami.
    Jeśli miałbyś trochę czasu to czy mógłbyś napisać jak mają wyglądać ustawienia fuse bitów dla tego procesora w programie PonyProg? Projekt z którego robię ten zegarek jest tu: https://www.elektroda.pl/rtvforum/topic900947.html
    Dzięki i pozdro.
  • REKLAMA
  • #9 7453897
    bobo21
    Poziom 16  
    Bardzo proszę o pomoc. Czy tak mają wyglądać ustawione fuse bity w Atmedze 8 w programie PonyProg?:
    RSTDISBL = 1 - bez ptaszka
    WDTON = 1 - bez
    SPIEN = 0 - daję ptaszek
    CKOPT = 0 - daję
    EESAVE = 0 (lub 1)
    BOOTSZ1 = 1 bez
    BOOTSZ0 = 1 bez
    BOOTRST = 0 daję

    BODLEVEL = 1 bez
    BODEN = 1 bez
    SUT1 = 1 bez
    SUT0 = 0 daję
    CKSEL3 = 0 daję
    CKSEL2 = 0 daję
    CKSEL1 = 1 bez
    CKSEL0 = 0 daję

    Zegarek który robię pochodzi z tego projektu: https://www.elektroda.pl/rtvforum/topic900947.html
    Proszę o pomoc.
  • #10 7454080
    landy13
    Poziom 31  
    Lfuse dobrze - na wewnętrzne 2MHz. Natomiast Hfuse masz ustawione na bootloader, którego chyba nie używasz. Najlepiej zostaw je fabrycznie czyli 11011001 czyli D9
  • #11 7456772
    bobo21
    Poziom 16  
    Dzięki za odpowiedź. Ja kompletnie nie rozumiem o co chodzi w tych fuse bitach. Bazuje na tym co napisał autor tego tematu. https://www.elektroda.pl/rtvforum/topic900947.html . Tam napisał, że tak należy ustawić fuse bity. I jemu zegarek działa a także innym użytkownikom. No nic jak tylko uruchomię stk200 to zaprogramuje Atmegę 8 i ustawię te fuse bity jak radzi autor tamtego tematu. Jak nie zadziała postąpię zgodnie z twoją radą.
    A czym skutkuje ustawienie fuse bitów tak jak ja napisałem?
    Pozdro :D

    O fuse bitach autor tego zegarka pisze tak w połowie strony w linku który podałem.
  • #12 7457669
    landy13
    Poziom 31  
    bobo21 napisał:
    A czym skutkuje ustawienie fuse bitów tak jak ja napisałem?
    Czym skutkuje napisał Ci emarcus cztery posty wyżej
    emarcus napisał:
    Programujac 'BOOTRST' zamiast default (1) dajesz (0) wiec zmieniasz address poczatku programu (0x000) na poczatkowy addres gdzie powinien znajdowac sie bootloader (0xF80).
REKLAMA