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

Wgrywanie fusebitów do atmegi8

mateuszrjzr 15 Sty 2012 15:24 1643 12
REKLAMA
  • #1 10400859
    mateuszrjzr
    Poziom 17  
    witam
    Piszę odnośnie tego regulatora:
    http://forumrc.alexba.eu/ipw-web/bulletin/bb/viewtopic.php?p=72550#72550
    Czy mogę zamiast ustawiać w burnomacie:

    CKSEL 3 = 0
    CKSEL 2 = 1
    CKSEL 1 = 0
    CKSEL 0 = 0

    wpisać w cmd

    avrdude -c usbasp -p t13 -U lfuse:w:0xE4:m
    avrdude -c usbasp -p t13 -U hfuse:w:0xD9:m
    ?
    Z góry dziękuję za odpowiedź
  • REKLAMA
  • #2 10400977
    McMonster
    Poziom 32  
    Możesz, tylko dokładnie przelicz wartości i je sprawdź dwa razy, żebyś przypadkiem np. nie zablokował sobie możliwości programowania ISP.
  • REKLAMA
  • #3 10401039
    mateuszrjzr
    Poziom 17  
    Witam
    Ja już sprawdzałem z 10 razy, więc jakby był jeszcze ktoś taki miły i sprawdził ten 11 raz, bo jak się pomyliłem i zablokuje atmegę to będzie źle bo nie mam ich więcej a pozatym moja wiedza z mikrokontrolerów jest bardzo mała i nie zdziwie się jak coś przeoczyłem.
  • #5 10401120
    tmf
    VIP Zasłużony dla elektroda
    Rozwiązanie Mirka to jedno z wygodnych rozwiązań. Ale są też i inne. Moim zdaniem najsensowniejsze to programator kompatybilny z AVR Studio, co daje możliwość wygodnej konfiguracji bezpośrednio z AS (funkcjonalność mniej więcej taka jak programu Mirka). Kolejna rzecz to nakładka graficzna na avrdude. Ale IMHO najsensowniejsza (szczególnie w połączeniu z oryginalnymi narzędziami supportowanymi przez AS) to skorzystanie a AVR-libc i ustawianie fusów na poziomie kodu w C. Dzięki temu nie trzeba pamiętać z jakimi fusami należy zaprogramować procesor bo wszystko jest razem. Prawdę mówiąc dziwię się dlaczego tak mało osób z tego korzysta, podobnie jak z tego, dlaczego posługują się dziwnymi hexami zamiast plikami elf.
  • REKLAMA
  • #6 10406041
    mateuszrjzr
    Poziom 17  
    witam
    Panie Mirku, czy byłby tak pan uprzejmy i zobaczył, czy zrobiłem to ok, bo jak podłączam atmegę, to oczywiście nic nie działa, a nie powinno, bo płytka jest prosta, więc tu będą raczej błędy od strony programowej(tak mi się zdaje)

    Wgrywanie fusebitów do atmegi8
  • #7 10406113
    mirekk36
    Poziom 42  
    Ja bym przede wszystkim zawsze oddzielnie ustawiał fusebity i oddzielnie programował wsad, a ty robisz wszystko naraz jak widać po ptaszkologii. Niby nie powinno być źle - ale ja zawsze wolę fusy dla pewności oddzielnie.

    Więc najpierw ustaw fuski i potem odczytaj ponownie z procka tzn wykryj go i wczytają się same. Wtedy będziesz miał jedno za sobą - pewność, że fusy masz ustawione zgodnie z projektem który chcesz zrobić.

    Potem wczytaj wsad i ew zawartość EEPROM - a jak nie zadziała - to ja ci tu już nic nie pomogę - pisz maila do autora projektu.... tylko żebyś się nie zdziwił jak już wielu ludzi, że nie wszystkie projekty z netu zawsze działają. Ja zaryzykowałbym stwierdzenie, że tylko 50% działa a pozostałe 50% to lipa. Na którą połowę trafiłeś ? ciężko powiedzieć.

    Gdybyś sam pisał program to byłbyś pewien. I to może jest najlepszy moment żeby zacząć się samemu uczyć pisać - bo napisałbyś coś prostego do migania diodą LED, wgrał i jakby migała to już miałbyś pewność, że wsad też dobrze wgrywasz. A skoro ten z jakiegoś tam projektu nie działa - to hmmm masz gotową odpowiedź dlaczego - trafiłeś na tą bardziej kocią połowę która nie działa.

    Jeszcze kilka razy się przejdziesz później na takich projektach to tym szybciej dojdziesz do wniosku, że gdybyś ten czas poświęcił na naukę programowania to już byłbyś w stanie sam takie rzeczy robić- czego ci zresztą życzę ;)
  • #8 10406139
    mateuszrjzr
    Poziom 17  
    http://forumrc.alexba.eu/ipw-web/bulletin/bb/viewtopic.php?p=72550#72550

    nie wydaje mi sie, aby była to lipa, w przeciwnym razie autor nie pisałby referatu.

    Wiec mam ustawić te fuski, kliknąć odczyt i się same ustawią??

    Nie powinno się wczytać najpierw FLASH, potem EEPROM, potem fuski?

    Wsad z rozszerzeniem .bin, to właśnie to EEPROM, nie?
  • #9 10406742
    mirekk36
    Poziom 42  
    No jak przez odczytanie mogę się fuski ustawić ?

    Najpierw trzeba je zapisać do procka, same fuski i najpierw fuski, zresztą kolejność nie ma aż tak wielkiego znaczenia.

    Potem jak zapiszesz to odczytaj żeby sprawdzić czy się ustawiły.

    A na końcu zapisz Flash - to plik HEX

    (nie twierdzę że ten twój projekt to akurat lipa, nic takiego nie powiedziałem, wyciągasz zbyt daleko idące wnioski. Powiedziałem tylko że sam się przekonasz o tym niedługo, życzę ci oby pozytywnie)

    A żaden referat nie jest dowodem ;) to już niestety zbyt naiwne podejście. A widywałem już w życiu dłuższe referaty na stronach z których projekty nie działały, więc daj pokój takim argumentom ok)
  • #10 10406767
    mateuszrjzr
    Poziom 17  
    Co do tego zapisu eeproma, to mam wyczytać ten plik z rozszerzeniem .bin?
  • #11 10406908
    mirekk36
    Poziom 42  
    mateuszrjzr napisał:
    Co do tego zapisu eeproma, to mam wyczytać ten plik z rozszerzeniem .bin?


    Nie mam zielonego pojęcia. Mnie to wygląda na dwie różne wersje wsadu, jedna w postaci HEX a druga w postaci BIN. No chyba że tam z jakiegoś opisu w tym referacie wynika, że ten BIN to jakaś zawartość do EEPROMA. Ale sorki ja referatu nie czytałem więc nie podpowiem.
  • REKLAMA
  • #12 10407329
    mateuszrjzr
    Poziom 17  
    Teraz zauważyłem coś interesującego- jeżeli daję polecenie, aby odczytał zawartość atmegi, to wiadomo program tworzy mi plik .HEX, a w nim co?

    Kod: text
    Zaloguj się, aby zobaczyć kod


    Tylko ostatnia linijka mojego kodu.
    Próbowałem w bascomAVR i w twoim mkCalculator...
  • #13 10407511
    gaskoin
    Poziom 38  
    tmf napisał:
    Ale IMHO najsensowniejsza (szczególnie w połączeniu z oryginalnymi narzędziami supportowanymi przez AS) to skorzystanie a AVR-libc i ustawianie fusów na poziomie kodu w C. Dzięki temu nie trzeba pamiętać z jakimi fusami należy zaprogramować procesor bo wszystko jest razem.


    http://www.nongnu.org/avr-libc/user-manual/group__avr__fuse.html
REKLAMA