ATNEL tech-forum
https://forum.atnel.pl/

Zmiana kwarcu -> zmiana fusków?
https://forum.atnel.pl/topic21135.html
Strona 1 z 1

Autor:  Rumcajs [ 15 sie 2018, o 10:36 ]
Tytuł:  Zmiana kwarcu -> zmiana fusków?

Jak w tytule, a dokładniej - mam fuski (LOW F7, HIGH DC, EXT 05), które były przeznaczone do Atmegi328 i zewnętrznego kwarcu 16MHz. Problem jest taki że gostek który zaprojektował układ popełnił szkolny błąd, gdyż przy zasilaniu 3,3V dał na pałę właśnie kwarc 16MHz. O ile wiem - by atmega nie głupiała przewidział dzielenie zegara przez 2, ale to wszystko co mi wiadomo..
Da się jakoś zmienić fuski by od razu wlutować kwarc 8MHz? O ile stronę hardłerową dam radę ogarnąć, o tyle grzebanie w sofcie jest niemożliwe gdyż nie jest on upubliczniony, i jedyne czym dysponuję to właśnie fuski i sam botek w postaci hexa..

Autor:  Rumcajs [ 15 sie 2018, o 11:54 ]
Tytuł:  Re: Zmiana kwarcu -> zmiana fusków?

Ooooo, czyli niepotrzebnie od dwóch miesięcy bałem się nawet dotknąć płytek by mnie nie kusiło:D:D
Ok, na dniach spróbuję bo póki co mam małe urwanie głowy w domu, i niestety ale dłubanie musi trochę poczekać:)

Autor:  andrews [ 15 sie 2018, o 12:16 ]
Tytuł:  Re: Zmiana kwarcu -> zmiana fusków?

Rumcajs napisał(a):
Problem jest taki że gostek który zaprojektował układ popełnił szkolny błąd, gdyż przy zasilaniu 3,3V dał na pałę właśnie kwarc 16MHz. O ile wiem - by atmega nie głupiała przewidział dzielenie zegara przez 2, ale to wszystko co mi wiadomo..

Zakładając, że jest tak, jak napisałeś, to "dzielenia zegara przez 2" w ATmega328 nie dokonuje się za pomocą fusebitów, tylko programowo, poprzez ustawienie bitów CLKPS3:0 w rejestrze CLKPR. Fusbitów rzeczywiście nie trzeba zmieniać, aby oscylator poprawnie pracował. Jeśli jednak wlutujesz rezonator 8MHz, a nie zmienisz softu, to uzyskasz rzeczywistą częstotliwość taktowania 4MHz, co może być problemem. Nawet gdyby program nie ustawiał preskalera, to przecież zwykle programy bazują na jakimś timingu, który jest zależny od częstotliwości taktowania. Na podstawie F_CPU ustawia się np. prędkości pracy interfejsów komunikacyjnych. Sama zmiana rezonatora, bez ingerencji w program raczej nie zda egzaminu.

Rumcajs napisał(a):
grzebanie w sofcie jest niemożliwe gdyż nie jest on upubliczniony, i jedyne czym dysponuję to właśnie fuski i sam botek w postaci hexa..

Niekoniecznie jest niemożliwe...
Jeśli chodzi tylko o zmianę preskalera zegara systemowego, to myślę, że jest to do opanowania bez kodu źródłowego...

Autor:  Rumcajs [ 15 sie 2018, o 14:15 ]
Tytuł:  Re: Zmiana kwarcu -> zmiana fusków?

To może dokładniej i po kolei..
Kilkanaście lat temu pewien Turek opracował link radiowy do modeli RC bazujący na arduino i module radiowym RMF22b. Jako że moduł radiowy MUSI być zasilany z 3,3V, więc i zasilanie samej atmegi miało tą samą wartość. Projekt doczekał się finalnej wersji na samodzielnej płytce, jednak wciąż zdarzały się problemy z działaniem. Wieeeele lat temu gostek o ksywce Mifau postanowił zdeko poprawić soft (który był dostępny na licencji opensource), jednak pozostał przy zasilaniu 3,3V i kwarcu 16MHz. Soft został tak poprawiony że w zasadzie powstał całkiem od nowa, i Mifau postanowił że będzie go sprzedawał - jako że napisał soft od nowa więc uznał że licencja opensource go nie obowiązuje. Oczywiście wciąż pojawiały się problemy z wysypywaniem się programu, jednak było to zwalane na niewłaściwe użytkowanie..
Dopiero po przejęciu całości przez gostka o ksywce Miś nastąpiły generalne porządki - układ pozostał przy zasilaniu 3,3V i otrzymał kwarc 8MHz. Otrzymał też nowy bootloader i wieeeele innych możliwości, i odtąd nazywał się "eLeReS v2".
Stare płytki (z kwarcem 16) wciąż krążą po świecie, jednak powstałe na przestrzeni lat nowe softy (pisane pod nową wersję) zachowują zgodność ze starszymi - mają "autodetekcję" jaki kwarc siedzi na płytce (czyli jeśli soft wykryje kwarc 16 to używa dzielnika, a jeśli kwarc 8 - działa bez dzielenia). Jeśli nowy soft wykryje nowego bootloadera - wówczas działa z nowymi możliwościami, a jeśli starego - działa tylko w okrojonym zakresie. Najnowsze nowości mnie nie interesują, i choć w teorii mógłbym dać kwarc 16 (i później programowo dzielić go na dwa), to nie widzę sensu by katować atmegę zmuszając ją do pracy poza możliwościami katalogowymi, by później i tak uzyskać 8MHz - stąd chęć by atmegoa od razu pracowała na 8MHz.

Czyli podsumowując - mając to czym dysponuję (soft w działaniu jak opisałem powyżej) mogę bez problemu dać kwarc 8 i fuski LOW F7, HIGH DC, EXT 05? Że soft rozpozna kwarc to wiem, jednak fuski to dla mnie taka magia że na samą myśl o ich dotykaniu po prostu mdleję ze strachu:D:D

Autor:  andrews [ 15 sie 2018, o 15:06 ]
Tytuł:  Re: Zmiana kwarcu -> zmiana fusków?

Przy tych ustawieniach fusebitów oscylator powinien pracować poprawnie zarówno z kwarcem 16MHz jak i 8MHz.
Jeśli faktycznie program ma taką funkcjonalność, że rozpoznaje, jaki kwarc został podłączony, to wszystko powinno działać OK.

Autor:  Rumcajs [ 15 sie 2018, o 16:46 ]
Tytuł:  Re: Zmiana kwarcu -> zmiana fusków?

Na RCFPV kiedyś miałem konto, ale odkąd forum stało się kółkiem wzajemnej adoracji zrezygnowałem. Za to od dawna buszuję na RCCLUB - o wiele milsza atmosfera, a i co spotkanie na jakimś zlocie z chłopakami rozmawia się tak jakbyśmy się widywali codziennie (a nie średnio co rok):).
Odkąd Miś oficjalnie przejął projekt nie ma nic przeciwko "samoróbkom" - raz że jest skupiony na wersji 2, a dwa - teraz wszyscy wiedzą że Mifau raczej olał temat (zarówno z samym projektem gdy jeszcze był pod jego pieczą, jak i późniejszym podejściem do tematu), więc raczej nie wnika "co, kto, jak i dlaczego"..

Autor:  Rumcajs [ 16 sie 2018, o 12:22 ]
Tytuł:  Re: Zmiana kwarcu -> zmiana fusków?

Q.., coś jest nie tak.. Po ustawieniu fusków (LOW F7, HIGH DC, EXT 05) mkAVR calculator niby je przyjmuje, jednak po kliknięciu w przycisk "ustaw" (ten pomiędzy trzema okienkami fuse a okienkiem lock) wartość 05 fuska EXT zmienia się na FD.. O co chodzi?..

I jeszcze jedno pytanie - za co odpowiada wartość 0F "Ulock"? Coś mi się obiło o uszy że blokuje on atmegę przed ponownym wgraniem bootka?

Autor:  andrews [ 16 sie 2018, o 12:34 ]
Tytuł:  Re: Zmiana kwarcu -> zmiana fusków?

Pewnie dlatego, że w "Extended Fuse Byte" wykorzystane są tylko 3 najmłodsze bity. Pozostałe przyjmują po prostu wartość domyślną 1 i nie można ich zmienić. Tym się nie musisz przejmować, to naturalne.

Rumcajs napisał(a):
I jeszcze jedno pytanie - za co odpowiada wartość 0F "Ulock"?


Nie wiem, jak inni, ale ja nie bardzo zrozumiałem pytanie. Mógłbyś sprecyzować?

Autor:  mirekk36 [ 16 sie 2018, o 13:02 ]
Tytuł:  Re: Zmiana kwarcu -> zmiana fusków?

Cytuj:
fuska EXT zmienia się na FD.. O co chodzi?..

dokładnie jak pisze wyżej kolega andrews ;) nie przejmuj się bo avrdude nieużywane bity wyświetla jako JEDYNKI a nie zera

Rumcajs napisał(a):
za co odpowiada wartość 0F "Ulock"?

pewnie chodzi ci o LockBity - czyli zabezpieczenie przed odczytem - zostaw to w spokoju ;) skoro robisz coś dla siebie ;) po co zabezpieczać ?

Autor:  Rumcajs [ 16 sie 2018, o 13:10 ]
Tytuł:  Re: Zmiana kwarcu -> zmiana fusków?

mirekk36 napisał(a):
Rumcajs napisał(a):
fuska EXT zmienia się na FD.. O co chodzi?..

dokładnie jak pisze wyżej kolega andrews ;) nie przejmuj się bo avrdude nieużywane bity wyświetla jako JEDYNKI a nie zera

Ok, zapisałem na przyszłość coby nie zapomnieć ;)
mirekk36 napisał(a):
Rumcajs napisał(a):
za co odpowiada wartość 0F "Ulock"?

pewnie chodzi ci o LockBity - czyli zabezpieczenie przed odczytem - zostaw to w spokoju ;) skoro robisz coś dla siebie ;) po co zabezpieczać ?

Aaaaaaacha, czyli na przyszłość ustawiać tylko fuski, loki zostawiać nieruszane?:D
Uffffff - tyle koło tego chodziłem jak pies koło wokół jeża, a tu w niecałe 24 godz mam jasność:D:D, dzięki:D

Strona 1 z 1 Strefa czasowa: UTC + 1
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/