(3 głosujących) Artykuł ten powstał aby w prosty sposób pokazać jak należy ustawiać bity konfiguracyjne w mikrokontrolerach AVR. Nie mam zamiaru opisywać dokładnie każdego bitu ale tylko te które są najbardziej istotne i najczęściej używane. Głownie zajmiemy się konfiguracją źródła sygnału zegarowego i jego dzielnika. Ponieważ konieczność zmiany wartości Fuse Bitow dla większości początkujących stanowi ogromne wyzwanie, opis będę się starał przedstawić jak najprościej. Mam nadzieje że zawarta tutaj wiedza okaże się pomocna i odpowie na szereg potencjalnych pytań. Ustawienia bitów konfiguracyjnych możemy dokonać w wielu programach, takich jak: BASCOM, PonyProg, ISPProgrammer, AVRDUDE itp. W opisie będę używał zapisu takiego jak w karcie katalogowej, czyli "0" będzie oznaczało bit zaprogramowany a "1" - niezaprogramowany. Zamieszczone przykłady konfiguracji są zrzutami z programu Burn-O-Mat (nakładka na AVRDUDE), zaznaczony "ptaszkiem" bit oznacza ustawienie jego wartości na "0". 1. ATtiny 2313Ustawienia fabryczne Domyślnym (fabrycznym) ustawieniem mikrokontrolera ATtiny2313 są bity CKSEL3..0 = "0010", SUT1..0 = "10" oraz CKDIV8 = "0". Oznacza to że fabryczny mikrokontroler, przed zmianą jakichkolwiek "Fusow" pracuje na wewnętrznym oscylatorze RC z najdłuższym czasem startu i dzieleniem częstotliwości przez 8, co daje w efekcie taktowanie 1MHz. Zewnętrzny Rezonator Kwarcowy 0,9 - 20MHz Gdy chcemy używać zewnętrznego rezonatora kwarcowego to musimy przestawić bity CKSEL3..1 w zależności od jego częstotliwości. Dla częstotliwości 0,9-3MHz bity CKSEL3..1 powinny mieć wartość "101", dla 3-8MHz powinno być CKSEL3..1 = "110" a dla częstotliwości większych od 8MHz bity CKSEL3..1 mają być ustawione na "111". Wewnętrzny oscylator 4/8MHz Wewnętrzny oscylator o częstotliwości 4MHz uruchamiamy ustawiając bity CKSEL3..0 rowne "0010" lub "0011", dla częstotliwości 8MHz zgodnie z kartą katalogową powinno to być "0100" lub "0101". Czas powrotu mikrokontrolera do normalnej pracy po resecie lub trybie Power-Down itp. ustawiamy bitami SUT1..0. Wartość SUT1..0 = "00" stosujemy gdy aktywny jest układ BOD, dla szybko narastającego napięcia zasilającego wartość SUT1..0 powinna być rowna "01" a dla wolno narastającego zasilania SUT1..0 = "10" Dzielenie częstotliwości zegara Za dzielenie częstotliwości zegara przez 8 odpowiada bit CKDIV8, jest on najczęstsza przyczyna problemow z działaniem mikrokontrolera. Dzielenie jest aktywne jeśli CKDIV8 = "0" Przykłady konfiguracji 2. ATMEGA 8Ustawienia fabryczne Domyślnym (fabrycznym) ustawieniem mikrokontrolera ATMEGA 8 są bity CKSEL3..0 = "0001" oraz SUT = "10". Oznacza to że fabryczny mikrokontroler, przed zmianą jakichkolwiek "Fusow" pracuje na wewnętrznym oscylatorze RC z najdłuższym czasem startu i taktowaniem 1MHz. Zewnętrzny Rezonator Kwarcowy 0,9 - 8MHz W tej wersji ustawień, gdy bit CKOPT= "1" zmniejszony jest pobór prądu przez mikrokontroler ale jednocześnie ograniczona została maksymalna częstotliwośc pracy. Dla zewnętrznego rezonatora kwarcowego musimy przestawić bity CKSEL3..1 w zależności od jego częstotliwości. Dla częstotliwości 0,9-3MHz bity CKSEL3..1 powinny mieć wartość "110", natomiast dla 3-8MHz powinno być CKSEL3..1 = "111" Zewnętrzny Rezonator Kwarcowy 1 - 16MHz W tej wersji ustawień, gdy bit CKOPT= "0" maksymalna częstotliwośc pracy wynosi 16MHz. Dla zewnętrznego rezonatora kwarcowego musimy przestawić bity CKSEL3..1 w zależności od jego częstotliwości. Dla częstotliwości 0,9-3MHz bity CKSEL3..1 powinny mieć wartość "110", natomiast dla 3-16MHz powinno być CKSEL3..1 = "111" Wewnętrzny oscylator 1- 8MHz Dla wewnętrznego oscylatora RC musimy przestawić bity CKSEL3..0 w zależności od częstotliwości jaką chcemy uzyskać. Dla 1MHz jest to CKSEL3..0="0001", dla 2MHz należy ustawić CKSEL3..0="0010", dla 4MHz ustawiamy CKSEL3..0="0011", natomiast dla 8MHz wymagana wartość to CKSEL3..0="0100". Przykłady konfiguracji 3. ATMEGA 16(32)Ustawienia fabryczne Domyślnym (fabrycznym) ustawieniem mikrokontrolera ATMEGA 16(32) są bity CKSEL3..0 = "0001" oraz SUT = "10". Oznacza to że fabryczny mikrokontroler, przed zmianą jakichkolwiek "Fusow" pracuje na wewnętrznym oscylatorze RC z najdłuższym czasem startu i taktowaniem 1MHz. Zewnętrzny Rezonator Kwarcowy 0,9 - 8MHz W tej wersji ustawień, gdy bit CKOPT= "1" zmniejszony jest pobór prądu przez mikrokontroler ale jednocześnie ograniczona została maksymalna częstotliwośc pracy. Dla zewnętrznego rezonatora kwarcowego musimy przestawić bity CKSEL3..1 w zależności od jego częstotliwości. Dla częstotliwości 0,9-3MHz bity CKSEL3..1 powinny mieć wartość "110", natomiast dla 3-8MHz powinno być CKSEL3..1 = "111" Zewnętrzny Rezonator Kwarcowy 1 - 16MHz W tej wersji ustawień, gdy bit CKOPT= "0" maksymalna częstotliwośc pracy wynosi 16MHz. Dla zewnętrznego rezonatora kwarcowego musimy przestawić bity CKSEL3..1 w zależności od jego częstotliwości. Dla częstotliwości 0,9-3MHz bity CKSEL3..1 powinny mieć wartość "110", natomiast dla 3-16MHz powinno być CKSEL3..1 = "111" Wewnętrzny oscylator 1 - 8MHz Dla wewnętrznego oscylatora RC musimy przestawić bity CKSEL3..0 w zależności od częstotliwości jaką chcemy uzyskać. Dla 1MHz jest to CKSEL3..0="0001", dla 2MHz należy ustawić CKSEL3..0="0010", dla 4MHz ustawiamy CKSEL3..0="0011", natomiast dla 8MHz wymagana wartość to CKSEL3..0="0100". Interfejs JTAG Jeżeli bit JTAGEN="0" (zaprogramowany) wtedy piny PORTC.5 - PORTC.2 stanowią wyjście interfejsu JTAG i są na stałe podciągnięte do +VCC. Nie działaja one wtedy jako zwykłe piny (nie działa konfiguracja w programie ustawiająca je w roli wejść lub wyjść) i będzie to z pewnością przyczyną problemów, gdy właśnie te wyprowadzenia zostaną użyte jako wejścia lub wyjścia projektowanego systemu mikroprocesorowego. Aby wspomniane wyprowadzenia zachowywały się jak pozostała część portu C konieczne jest wyłączenie interfejsu JTAG poprzez ustawienie JTAGEN="1" Przykłady konfiguracji 4. ATMEGA 162Ustawienia fabryczne Domyślnym (fabrycznym) ustawieniem mikrokontrolera ATMEGA 162 są bity CKSEL3..0 = "0010", SUT1..0 = "10" oraz CKDIV8 = "0". Oznacza to że fabryczny mikrokontroler, przed zmianą jakichkolwiek "Fusow" pracuje na wewnętrznym oscylatorze RC z najdłuższym czasem startu i dzieleniem częstotliwości przez 8, co daje w efekcie taktowanie 1MHz. Zewnętrzny Rezonator Kwarcowy 0,9 - 16MHz Gdy chcemy używać zewnętrznego rezonatora kwarcowego to musimy przestawić bity CKSEL3..1 w zależności od jego częstotliwości. Dla częstotliwości 0,9-3MHz bity CKSEL3..1 powinny mieć wartość "101", dla 3-8MHz powinno być CKSEL3..1 = "110" a dla częstotliwości większych od 8MHz bity CKSEL3..1 mają być ustawione na "111". Wewnętrzny oscylator 8MHz Wewnętrzny oscylator o częstotliwości 8MHz uruchamiamy ustawiając bity CKSEL3..0 równe "0010". Czas powrotu mikrokontrolera do normalnej pracy po resecie lub trybie Power-Down itp. ustawiamy bitami SUT1..0. Wartość SUT1..0 = "00" stosujemy gdy aktywny jest układ BOD, dla szybko narastającego napięcia zasilającego wartość SUT1..0 powinna być rowna "01" a dla wolno narastającego zasilania SUT1..0 = "10" Dzielenie częstotliwości zegara Za dzielenie częstotliwości zegara przez 8 odpowiada bit CKDIV8, jest on najczęstsza przyczyna problemow z działaniem mikrokontrolera. Dzielenie jest aktywne jeśli CKDIV8 = "0" Interfejs JTAG Jeżeli bit JTAGEN="0" (zaprogramowany) wtedy piny PORTC.7 - PORTC.4 stanowią wyjście interfejsu JTAG i są na stałe podciągnięte do +VCC. Nie działaja one wtedy jako zwykłe piny (nie działa konfiguracja w programie ustawiająca je w roli wejść lub wyjść) i będzie to z pewnością przyczyną problemów, gdy właśnie te wyprowadzenia zostaną użyte jako wejścia lub wyjścia projektowanego systemu mikroprocesorowego. Aby wspomniane wyprowadzenia zachowywały się jak pozostała część portu C konieczne jest wyłączenie interfejsu JTAG poprzez ustawienie JTAGEN="1" Przykłady konfiguracji 5. ATTiny 13Ustawienia fabryczne Domyślnym (fabrycznym) ustawieniem mikrokontrolera ATtiny 13 są bity CKSEL1..0 = "10", SUT1..0 = "10" oraz CKDIV8= "0". Oznacza to że fabryczny mikrokontroler, przed zmianą jakichkolwiek "Fusow" pracuje na wewnętrznym oscylatorze RC z najdłuższym czasem startu i dzieleniem częstotliwości przez 8. Wewnętrzny oscylator 4,8/9,6MHz Wewnętrzny oscylator o częstotliwości 4,8MHz uruchamiamy ustawiając bity CKSEL1..0 ="01" , dla częstotliwości 9,6MHz zgodnie z kartą katalogową powinno to być CKSEL1..0 ="10". Czas powrotu mikrokontrolera do normalnej pracy po resecie lub trybie Power-Down itp. ustawiamy bitami SUT1..0. Wartość SUT1..0 = "00" stosujemy gdy aktywny jest układ BOD, dla szybko narastającego napięcia zasilającego wartość SUT1..0 powinna być rowna "01" a dla wolno narastającego zasilania SUT1..0 = "10" Wewnętrzny oscylator 128kHz Wewnętrzny oscylator o częstotliwości 128kHz uruchamiamy ustawiając bity CKSEL1..0 ="11". Czas powrotu mikrokontrolera do normalnej pracy po resecie lub trybie Power-Down itp. ustawiamy bitami SUT1..0. Wartość SUT1..0 = "00" stosujemy gdy aktywny jest układ BOD, dla szybko narastającego napięcia zasilającego wartość SUT1..0 powinna być rowna "01" a dla wolno narastającego zasilania SUT1..0 = "10" Przykłady konfiguracji 6. ATtiny 45Ustawienia fabryczne Domyślnym (fabrycznym) ustawieniem mikrokontrolera ATtiny45 są bity CKSEL3..0 = "0010", SUT1..0 = "10" oraz CKDIV8 = "0". Oznacza to że fabryczny mikrokontroler, przed zmianą jakichkolwiek "Fusow" pracuje na wewnętrznym oscylatorze RC z najdłuższym czasem startu i dzieleniem częstotliwości przez 8, co daje w efekcie taktowanie 1MHz. Zewnętrzny Rezonator Kwarcowy 0,9 - 16MHz Gdy chcemy używać zewnętrznego rezonatora kwarcowego to musimy przestawić bity CKSEL3..1 w zależności od jego częstotliwości. Dla częstotliwości 0,9-3MHz bity CKSEL3..1 powinny mieć wartość "101", dla 3-8MHz powinno być CKSEL3..1 = "110" a dla częstotliwości większych od 8MHz bity CKSEL3..1 mają być ustawione na "111". Wewnętrzny oscylator 8MHz Wewnętrzny oscylator o częstotliwości 8MHz uruchamiamy ustawiając bity CKSEL3..0 równe "0010". Czas powrotu mikrokontrolera do normalnej pracy po resecie lub trybie Power-Down itp. ustawiamy bitami SUT1..0. Wartość SUT1..0 = "00" stosujemy gdy aktywny jest układ BOD, dla szybko narastającego napięcia zasilającego wartość SUT1..0 powinna być równa "01" a dla wolno narastającego zasilania SUT1..0 = "10" Dzielenie częstotliwości zegara Za dzielenie częstotliwości zegara przez 8 odpowiada bit CKDIV8, jest on najczęstsza przyczyna problemów z działaniem mikrokontrolera. Dzielenie jest aktywne jeśli CKDIV8 = "0" Przykłady konfiguracji
|
|||
atmega162
Witam,
zmieniłem cksel=1111 i procesor zablokowany. Mam podłączony kwarc 12mHz i kondziołki 33pF. co mogę jeszcze zrobic?
Re: fusy
CKSEL=1111 (wszystkie pola odznaczone) to dobrze ustawiłeś, powinno pracować na zewnetrznym kwarcu + 2 kondensatory 22pF. Jak ustawiłeś na 0000 to jest zewnetrzny generator, więc trzeba cos takiego dołączyć... ja przeważnie stosowałem zwykły generator kwarcowy, ale podobno są prostsze sposoby zrobienia generatora.... np drugi uC i generowanie zegara na jakimś pinie procka
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
atmega162
a jezeli zamiast 22p dałem 33? Powiem szczerze ze zawsze takie stosowałem i nigdy nie miałem problemu. pierwszą atmege 168 zablokowałem jak w burn-o-macie odznaczyłem div8.
pozdrawiam
Re: Mega
22p i 33p powinno działać.. .po wyłączeniu podzielnika nie mogło się nic stać.....
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
atmega162
Witam,
a wiec juz wszystko działa. wlutowałem procesor z innego źródła. Porażka ze można kupić nowe części a uszkodzone...
Dzięki za zainteresowanie
atmega162
Mam jeszcze jedno pytanie. Pod piny c0-c3 mam podłączone switche,które zwierają do masy a do pinów portu a diody led. Problem polega na tym ze nie potrafię odczytywać switchy mimo iz jtag został wyłączony. Drugi problem ze jak np napiszę program do migania diody to nie działa porta.2 oraz port a.1.
A czy jest mozliwość uruchomienia z poziomu bascoma przerwan zew np. pcint7?
pozdrawiam
Witam, czy poniższe komendy
Witam,
czy poniższe komendy ustawią fuse bity mikrokontrolera Atmega32
Atmega ma zewnętrzny kwarc 16MHz. Pytam bo nigdy nie miałem do czynienia z Atmegą. Dokładnie chodzi mi o lfuse i hfuse.
Pozdrawiam
RE: M32
Tak,... druga linijka ustawi fusebity na zewnętrzny kwarc 16MHZ
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
Jeszcze jedno pytanko, czy to
Jeszcze jedno pytanko, czy to również zadziała na nowym nigdy nie programowanym mikrokontrolerze?
Re: Fusebity
Jak najbardziej tak samo będzie działać na nowym procku
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
OK, wielkie dzięki, jak już
OK, wielkie dzięki, jak już będę miał wszystko złożone to wszystko posprawdzam.
Pozdrawiam
taktowanie 2313V
WItam,
mam pytanie czy kiedyś próbowałeś taktować Tiny 2313 z zegara Watchdoga 128kHz? Jeżeli czegoś nie pomyliłem czytając dokumentację to istnieje taka opcja. Przed chwilą odwrotnie ustawiłem FUS-y i boję się zablokować kolejnego procka.
Jurek
Re: Tiny2313
Z karty wynika że jest taka możliwość po zaprogramowaniu CKSEL=0110 i np. SUT=10. (0 to zaprogramowany bit, zaznaczony "ptaszek" np w burn o mat) Dzielenie prze 8 osobiście bym w tym przypadku wyłączył CKDIV=1.
Nie wiem jaki masz cel w tak niskim taktowaniu... nie używałem tego nigdy więc musisz potestować
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
Dzięki, moim celem jest jak
Dzięki, moim celem jest jak najtańsze obniżenie poboru prądu przy zasilaniu bateryjnym.
Attiny2313 i Willem AT3
Witam mam problem z skasowaniem Attiny2313 programatorem Willem AT3. Programator czyta zawartość Attiny2313 lecz nie mogę jej skasować i jeszcze jedno jak ustawić Fuse Bity tym programatorem.
Re: Fusebity
Nie wiem jakie masz oprogramowanie do tego programatora. To od niego zależą opcje które możesz wykonac i ustawienia fusebitów.
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
Fusebity
Witam, prosiłbym o sprawdzenie fusebity, które mam zaznaczyć. ATmega88-20PU 16MHz.
Fusy:
CKSEL3=1
CKSEL2=1
CKSEL1=1
CKSEL0=1
SUT1=1
SUT0=1
CKDIV8=1
Re: Fusy
ja bym dał 0 na cksel3, zgodnie z kartą (full swing crystal oscilator)
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
fusy
ok,dzięki, bo tam nie wiedziałem dlatego dałem low.
Program do fusy
Witam, skąd mogę ściągnąć ten program do ustawiania fusy?
Re: Fusebity
Chodzi o ten http://avr8-burn-o-mat.aaabbb.de/avr8_burn_o_mat_avrdude_gui_en.html ?
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
Witam! W AVR Studio ustawiłem
Witam!
W AVR Studio ustawiłem coś w fusach tak że teraz nie wykrywa mi megi8 (to było coś z częstotliwością jak się nie mylę to zaznaczyłem to "Ext. RC Osc. 8.0 MHz - 12.0 MHz; Start-up time: 18 CK + 0 ms"). Czy da się jeszcze naprawić mój błąd? mega miała służyć do USBasp z tej właśnie strony
Re: Fusebity
Jeśli tak ustawiłeś to masz external RC oscilator czyli zewnętrzny układ RC. Podłącz od nóżki XTAL1 rezystor 1.5k do +5V oraz kondensator 22pF od nóżki XTAL 1 do masy. XTAL2 pozostaw wiszący w powietrzu. Powinno to dać około 10MHz oscylator i umożliwić odblokowanie procka. Jeśli ustawiłeś na coś innego to tylko metoda prób i błędów pozostaje
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
Attiny13 - fusebity
Witam
Mam do wgrania programik do Attiny13 i nie mogę ustawić fusebity w programie Burn-O-Mat.
Fusebity ustawiam tak jak do zegara wew 4,8 MHz z tym ze zaznaczam "ptaszkiem" jeszcze BODLEVEL0 i wyskakuje komunikat: Error writing fuses
Co jest źle ? Komunikacja z Attiny13 poprzez Avrdude jest.
Programator USBasp - http://fischl.de
Proszę o pomoc.
Pozdrawiam gucio222
Attiny26 zew >8MHz
Witam
Chciałbym poprosić o screena z burn-o-made jak ustawić fusy, aby dołączyć zewnętrzny krawc >8MHz.
Pozdrawiam Dragas
Re: tiny26
Teraz na szybko mogę podać ustawienia, a w burn-o-macie wyklikasz sobie sam:
PLLCK = 1 (odznaczony)
CKSEL0 = CKSEL1 = CKSEL2 = CKSEL3 = 1 (odznaczony)
SUT0 = SUT1 = 1 (odznaczony)
powinno zadziałać
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
O co kaman ?
Witam. przy wew. osc. 1MHz wszystko działało.
przestawiłem fusy na zew. osc. 8MHz wg. powyższego artykułu i dupa.
procek przestał istnieć dla AVRdude :(
What is next?
użyłem -F żeby to pominąć i:
i na końcu wspaniały komunikat "Error writing flash."
Re: Fusy
Jaki dokładnie wartości fusów wgrałeś do procka? Jakie masz kondensatory przy kwarcu i czy napewno dobry kwarc?
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
kondensatory 22pF, kwarc 8MHz
kondensatory 22pF, kwarc 8MHz prosto ze sklepu
Re: Fusy
Osobiście to bym jeszcze CKOPT włączył i SUT0 wyłączył. Ale nie powinno to spowodować problemów. Na wszystkie piny M8 podłączyłeś zasilanie i masę?
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
Atmega328 i kwarc 20Mhz
Witam!
Potrzebuję podłączyć do tego procesora kwarc 20Mhz. To moje pierwsze ustawianie fusów, a zablokowanie procka nie wchodzi w grę. Pierwsze moje pytanie pojawia się w związku z brakiem mojego procesora na liście. Czy mogę wybrać więc Atmegę168 i na niej ustawić fusy dla Atmegi328? Z tego co znalazłem będzie to full swing crystal oscillator, czyli mam wyłączyć CKDIV8 (odznaczyć), ustawić CKSEL3..1 na 011, czyli CKSEL 3=0 (brak ptaszka w burn o macie), CKSEL 2 oraz CKSEL 1 = 1 (jest ptaszek). Czy jeszcze coś trzeba zaznaczać? co z CKSEL0? Może lepiej skorzystać z zakładki Oscillator/clock options, jakie jednak opcje w zakładce full swing crystal oscillator wtedy wybrać?
Z góry dziękuje za pomoc, bo nigdzie nie mogę znaleźć tej informacji, a ciarki przechodzą po plecach jak próbuje coś zaznaczać. Pozdrawiam, Natanek
Re: Fusy
W burn o macie podobnie jak we wszystkich programach do fusów 0 to zaznaczony ptaszek, czyli bit ustawiony. Jest napisane jak byk pod tabelką w burn o macie jak otworzysz program.
Masz ustawić CKSEL=1111 (wszystko odznaczone) SUT=11 i CKDIV=1 żeby mieć Low power crystal 8-16MHz. CKSEL=0111 i reszta tak samo daje full swing crystal większy pobór prądu ale bardziej odporny na zakłócenia
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
Fusebity Atmega8 Bascom
Jak ustawić fusebity w bascomie? Gdzie to w ogóle się robi?
Atmega8L kwarc 6MHz.
Najlepiej prosiłbym o jakieś screeny. Z góry dzięki!
Re: Fusebity
Tam gdzie programujesz flash po otwarciu okna są trzy zakładki: flash, eeprom i fusebity. Co do screenów to będzie ciężko bo żeby bascom wyświetlił fusy to trzeba mu podpiąć procesor taki jak sam posiadasz. Fusebity lepiej ustawia się w burn-o-macie
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
Witam czy przy zakupiepie
Witam czy przy zakupiepie przykładowo nowej attiny 2313 musze wgrywać botloardera i czy jest możliwość wgrania programu juz w postaci pliku hex za pomocą bascoma
pozdrawiam
Re: Atmega328 i kwarc 20Mhz
Bardzo dziękuję za podpowiedzi. Po nakłonieniu programatora do współpracy z Burn-o-matem wszystko udało się ustawić za pierwszym razem. Jak to mówią pierwsze koty za płoty i teraz wiem, że nie ma się czego bać :).
chciałem zaprogramować atmege
chciałem zaprogramować atmege żeby działała na wewnętrzym oscylatorze 8Mhz ustawiłem fuse bity wg ostatniego rysunku, programator nie drgnie ciagle wyrzuca error, jak zakłądam zworke slow to programuje gdzie robie błąd ?
pozdrawiam
Re: Fusebity
Znaczy się że nie ustawiłeś fusebitów, albo ich nie wpisałeś do procka a tylko ustawiłeś w programie. Jaki to mikrokontroler?
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
mikrokontroler Atmega 8,
mikrokontroler Atmega 8, wkoncu ustawiłem fuse bity zrobiłem write zapisał i już nie moge go zaprogramować . Ustawienia mam tak jak na drugim rysunku i kwarc 8Mhz
ATtiny2313
Chciałem ustawić fusebity pod kwarc 10MHz ale coś namieszałem i nie mogłem się więcej połączyć z mikrokontrolerem wyskakuje błąd Could not identify chip with ID:FFFFFF Używam programatora Sample Electronics programmer.
Bardzo proszę o pomoc jak odblokować mój mikrokontroler
Re: Fusebity
Masz dobre kondensatory do kwarca? na pewno 22pF i podłączone tak jak karta katalogowa mówi?
---------
Co ustawiłeś w bascomie w tych fusach? jak coś namieszałeś i nie wiesz co to teraz trzeba niewiadomo co zrobić żeby to odblokować. Najczęstszy błąd to ustawienie external clock zamiast external crystal i wtedy trzeba jakiś generator podłączyć aby to zadziałało.
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
ATtiny2313
No i chyba tak ustawiłem było to gdzieś na końcu listy z tymi fusami dotyczącymi własnie kwarcu było tam napisane coś takiego ale nie pamiętam dokładnie: external clock 8MHz- < i coś tam za tym znakiem większości jeszcze było
Re: Generator
W takim razie teraz trzeba generator podłączyć, albo kupić generator kwarcowy np 8MHz, albo zbudowac generator na inwerterach lub bramkach CMOS i podac na XTAL1
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
ATtiny2313 Generator
Wydaje mi się że taki generator mam już podłączony do mojego układu podam zdjęcie:
ATtiny2313 Generator
LINK DO ZDJĘCIA niestety poprzednio się niedodało http://www.abload.de/image.php?img=dsc_2277p50xk.jpg
RE: KWarc
To nie jest generator tylko rezonator kwarcowy (kwarc). Generator zawiera w sobie kwarc + elektronikę która wytwarza przebieg prostokątny. Podałem takie rozwiązanie bo one jest pewne w działaniu. Kupujesz w sklepie generator i podpinasz i powinno działać, chyba że opcje fusebitów są jeszcze inne niż external clock. Możesz zbudować dowolny inny układ, który generuje przebieg prostokątny, poszukaj w internecie.
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
RE: KWarc
Czy może być takie coś : http://sklep.avt.pl/p/pl/49269/generator+kwarcowy+8mhz.html
Re; fusebity
dokładnie o coś takiego mi chodziło
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
Odpowiedź na zablokowane procki...
Ostatnio zablokowałem sobie atmegę128 poprzez próbę ustawienia fuse bitów na ext clock(i chyba coś z CKOPT robiłem), procesor przestał działać, programator go nie widział.
Pomogło podpięcie portu wyjściowego drugiego procka pod nóżkę XTAL-Out atmegi128 przez opornik 1kOhm.
U mnie drugim mikrokontrolerem była akurat atmega8535 pracująca na wewnętrznym oscylatorze 8MHz podłączona na pająka, z prostym programem:
-ustaw pc2(port z podpiętym opornikiem) jako out
i pętla:
-set pc2
-nop
-reset pc2
Po takim podpięciu udało mi się zaprogramować w atmega128 fusy na wewnętrzny oscylator 8MHz i teraz śmiga.
Wcześniej podpinanie kwarców (z kondensatorami 27pF/i bez) nie przynosiło efektów.
Może komuś się przyda, pozdrawiam.
Zablokowany uc atmega8,attiny2313
Witam chciałbym prosić o mało pomoc w sprawie Fusebity.
Otóż parę miesięcy temu chciałem zmienić z zewnętrznego oscylatora na wewnętrzny w attiny2313
jednak się zablokował. I właśnie dzisiaj chciałem spróbować jeszcze raz z atemga8, jednak też się zablokował.
I właśnie chciałbym prosić o pomoc odblokowania.
Programowanie uc wyglądało tak:
1. Program to Bascom-avr 2.0.7.1 demo
2. Programator to USBasp ATMEL AVR
3. uc atmega8
4. Są ustawione podstawowe ustawienia fabryczne atmegi8
5. Jak zmieniłem wewnętrzny oscylator z 1Mhz na 8Mhz to mikrokontroler działał.
Czyli zmiana 000001:int.Rc osc 1mhz na 000100:int.Rc osc 8mhz
6. Chciałem zmienić już na zewnętrzny oscylator czyli z 000100:int.Rc osc 8mhz na
000111:EXT. RC OSC 3.0Mhz-8Mhz
7. Programowanie odbywa się na uniwersalnej płytce stykowej.
8. Brak komunikacji z programatorem, podłączania rezystora kwarcowego 8Mhz równolegle do pinu 9 i 10 (xtal1 i xtal2) oraz kondensatorów 22pF, nic nie daje. Program załadowany w mikrokontrolerze nie działa.
I właśnie jak można odblokować mikrokontroler i zaprogramować właściwie.