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

Jak ustawić fusebity w Atmega32 dla zewnętrznego oscylatora 8MHz?

Krzysiek J 26 Cze 2006 22:57 1554 6
REKLAMA
  • #1 2766708
    Krzysiek J
    Poziom 11  
    Posty: 32
    Witam
    Mam problem z Atmegą 32, namieszałem w fusebitach i uP przestał się odzywać (Bascom i Pony Prog straciły z nim kontakt). Wszystko zaczeło się od tego że podłączyłem zewnętrzny oscylator 8Mhz do Atmegi. Za żadne skarby nie chciał mi ruszyć, wiec zacząłem kombinować i na efekty długo nie czekałem- mikrokontroler przestał się komunikować ze światem.

    Jak ustawić Fusebity w Atmedze32 aby nie zablokować procka i żeby mi chodził na zwenętrznym oscylatorze. ? Prosiłbym o łopatologiczne wytłumaczenie :). Programuje w Bascom.
  • REKLAMA
  • #2 2767983
    Krzysiek J
    Poziom 11  
    Posty: 32
    Pogrzebałem troche w internecie i znalazłem artykuł Pana Jacka Bogusza "Nastawy zegara w mikrokontrolerach AVR" i na stronie 9 Pan Jacek napisał że wyłączenie JTAG'a który operuje na portach C uP może spowodować zablokowanie się uP. Tak sie skłąda że na porcie C (0,1,2,3,4,5,) mam podwieszony LCD.
    Pytanie, czy jesli wyłącze w fusebitach JTAG'a (fusebit H) to znowu go zablokuję?
    Mam teraz dwa problemy zewnętrzny rezonator i LCD na porcie C :)

    Dodano po 1 [godziny] 26 [minuty]:

    poczytałem sobie dokładnie datasheet'ke o atmedze 32 i wywnisokowałem coś takiego:
    Mam rezonator 8MHz i LCD na porcie C więc:
    ustawiam CKOPT na 1; CKSEL 3..1 na 1 -to dla rezonatora

    albo
    CKOPT na 1; CKSEL3...0 na 1111; SUT1..0 na 0 i 1; BOD enabled

    dla LCD
    robie JTAG disable

    CZY KTOś DA MI GWARANCJE żE TO ZADZIAłA ?
    Bo mam ostaniego procka,
  • REKLAMA
  • #3 2769905
    Krzysiek J
    Poziom 11  
    Posty: 32
    HA !!!
    ustawiłem rezonator zewnetrzny 8MHz - to już sukces :)


    ale co zrobić z LCD podłączonym do portu C?
    Czy mogę bezpiecznie wyłączyć JTAG'a ?
  • #4 3043035
    skartabel
    Poziom 12  
    Posty: 66
    Pomógł: 1
    Ocena: 45
    poszukaj kogos kto ma programator rownoległy odzyskasz te procki :)
    wlasnie dzisiaj odzyskałem jeden z 2 ale w sumie nie wiedziałem jak to ustawic :) zeby było dobrze i ustawiłem na dwa sposoby ktore wydawały mi sie dobre.

    sam nie wiem jak ustawic procka na zawnetrzne 16 Mhz ;/
  • REKLAMA
  • #5 3043374
    Arnold_S.
    Poziom 26  
    Posty: 883
    Pomógł: 49
    Ocena: 85
    Zamierzam na poważnie zacząć zabawę z mikrokontrolerami.
    Wybrałem ATtiny26. Czy tam też będą takie "przygody" z blokowaniem układu?

    Co z pierwszym po zakupie programowaniem przez ISP?
    Czy rezonator(kwarc 8MHz) ma być wtedy(w czasie programowania) dołączony do ATtiny, czy nie?
  • REKLAMA
  • #6 3043713
    skartabel
    Poziom 12  
    Posty: 66
    Pomógł: 1
    Ocena: 45
    Ja mam moja atmege cały uklad jest zlutowany
    procek włozony do podstawki. z 3 nozek idza kabelki do gniazdka do ktorego wlaczam zrobiony przez siebie programator .

    Wiec wszytko jest podąłczone i to nie przeszkadza w programowaniu
  • #7 20466282
    Rommil
    Poziom 6  
    Posty: 17
    Ocena: 4
    >>2766708 Podłączam się pod posta bo mam podobny problem.
    Atmega32A tez cos namieszałem i mam teraz taki komunikat w AVRdudes
    przy probie wykrycia procesora

    >>>: avrdude -c usbasp -P usb -b 115000 -B 1500.0 -p m8
    BŁĄD: Nieznana sygnatura 1e1502
    >>>: avrdude -c usbasp -P usb -b 115000 -B 1500.0 -p m8
    BŁĄD: Nieznana sygnatura 1e1502

    próba ponownego ustawienia fisbitów daje taki rezultat

    >>>: avrdude -c usbasp -p m32 -P usb -b 115000 -B 1500.0 -U lfuse:w:0xFE:m -U hfuse:w:0x99:m

    avrdude.exe: set SCK frequency to 500 Hz
    avrdude.exe: AVR device initialized and ready to accept instructions

    Reading | ################################################## | 100% 0.20s

    avrdude.exe: Device signature = 0x1e1502
    avrdude.exe: Expected signature for ATmega32 is 1E 95 02
    Double check chip, or use -F to override this check.

    avrdude.exe done. Thank you.

    Czy da sie odzyskać ten procek?

    Dodano po 3 [godziny] 21 [minuty]:

    Opcja - F (force) przy zmianie fusbitów pomogła! Procek stał się wykrywalny jako atmega32

    >>>: avrdude -c usbasp -P usb -b 115000 -B 375.0 -p m8
    BŁĄD: Nieznana sygnatura 1e1502
    Writing fuses...
    ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
    >>>: avrdude -c usbasp -p m32 -P usb -b 115000 -B 375.0 -F -U lfuse:w:0xFE:m -U hfuse:w:0x99:m

    avrdude.exe: set SCK frequency to 2000 Hz
    avrdude.exe: AVR device initialized and ready to accept instructions

    Reading | ################################################## | 100% 0.05s

    avrdude.exe: Device signature = 0x1e1502
    avrdude.exe: Expected signature for ATmega32 is 1E 95 02
    avrdude.exe: reading input file "0xFE"
    avrdude.exe: writing lfuse (1 bytes):

    Writing | ***failed;
    ################################################## | 100% 0.14s

    avrdude.exe: 1 bytes of lfuse written
    avrdude.exe: verifying lfuse memory against 0xFE:

    Reading | ################################################## | 100% 0.02s

    avrdude.exe: verification error, first mismatch at byte 0x0000
    0x7e != 0xfe
    avrdude.exe: verification error; content mismatch

    avrdude.exe done. Thank you.

    >>>: avrdude -c usbasp -P usb -b 115000 -B 375.0 -F -p m8
    Wykryto: 1e9502 = ATmega32
    Writing fuses...
    ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~

Podsumowanie tematu

✨ Problem dotyczy ustawienia fusebitów w mikrokontrolerze Atmega32 dla pracy z zewnętrznym oscylatorem 8 MHz. Użytkownik miał trudności z konfiguracją, co spowodowało utratę komunikacji z mikrokontrolerem przy użyciu Bascom i programatora Pony Prog. W dyskusji poruszono kwestie wyłączania JTAG, które działa na porcie C, gdzie podłączony jest LCD, co może prowadzić do zablokowania mikrokontrolera. Zalecane jest ustawienie fusebitów: CKOPT=1, CKSEL=111 (lub 1111) oraz odpowiednie SUT i BOD dla rezonatora zewnętrznego. Wyłączenie JTAG jest konieczne przy LCD na porcie C, ale budzi obawy o blokadę układu. W odpowiedziach pojawiły się sugestie dotyczące odzyskiwania mikrokontrolera za pomocą programatora równoległego oraz pytania o podobne problemy z innymi modelami AVR, jak ATtiny26. Jeden z użytkowników zgłosił problem z błędną sygnaturą urządzenia (1E1502 zamiast 1E9502) w Atmega32A, co wskazuje na problem z fusebitami lub uszkodzenie, a także próbę wymuszenia programowania z opcją -F w avrdude. Ogólnie dyskusja skupia się na prawidłowym ustawieniu fusebitów dla zewnętrznego oscylatora 8 MHz, wpływie wyłączania JTAG na port C oraz metodach odzyskiwania mikrokontrolera po błędnej konfiguracji fusebitów.
Wygenerowane przez model językowy.
REKLAMA