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

Problem z AVRISP mkII (migająca pomarańczowa dioda)

qbin 24 Sie 2006 14:15 2981 11
REKLAMA
  • #1 2948261
    qbin
    Poziom 2  
    Posty: 4
    Witam

    Pracuję nad projektem opartym o ATmega2561 i mam problem z zaprogramowaniem jej za pomocą AVRISP mkII pracującym pod AVR Studio 4.12. Problem objawia się tym, że bez względu jak podłączę konektor do złącza w programowanym układzie, miga pomarańczowa dioda. Jak można przeczytać w manualu do AVRISP mkII ( http://www.atmel.com/dyn/resources/prod_documents/AVRISPmkII_UG.pdf ), błąd ten może być spowodowany niepoprawnym podłączeniem linii sygnałów ("Revesed target cable connection"). Sprawdziłem wszystkie piny, przemierzyłem i wydają się być ok. Dla pewności, proszę niech ktoś sprawdzi na tym zdjęciu: http://www.qbin.pl/programmer.jpg czy mam dobrą kolejność sygnałów na złączu (a nie w lustrzanym odbiciu). Programator jest dobrze zainstalowany, świeci się zielona kontrolka przy złączu USB, AVR Studio go widzi no i poprawnie odczytuje napięcie zasilania z mojego układu (4.9V - 5.0V). Jak przeczytałem w manualu do programatora, "The Reset line should NOT have stronger pull up than 4.7k ohm. Any de-coupling capacitor should NOT be larger than 10uF". A więc zmieniłem rezystor podciągający linię reset z 10k na 4.7k. Kondensator mam 10uF. Nic to nie dało. Następnie wyczytałem, że "Pull-up resistors on MISO/MOSI/SCK connected to VCC/GND should not be stronger than 820 ohm". Tych linii wogóle nie miałem podciągniętych (i tak mi się wydaje, że nie muszą być), ale dla pewności że to nie powoduje błędu podciągnąłem je rezystorkami 910ohm (to więcej niż podaje manual, ale tylko takie miałem). Też bez efektu. Także obecna konfiguracja jest taka, że mam reset podciągnięty rezystorem 4.7k ohm i odsprzągnięty 10uF kondziorem. Na Vcc mam 5.0V, na Gnd mam Gnd. Linie MOSI (w ATmega2561 jest to sygnał PDI na porcie PE0), MISO (PDO na porcie PE1) oraz SCK (SCK na porcie PB1) NIE są podciągnięte (mógłbym je spróbować podciągnąć rezystorami mniejszymi od 820, tak jak pisze w manualu, ale wątpię że to coś da..). No i co o tym myślicie? Ja już nie mam pomysłów, co jeszcze mogłoby być źle.. Może programator jest uszkodzony? Procesor raczej nie, tym bardziej że programator nawet nie próbuje wejść w tryb programowania - od razu zgłasza błąd, że źle podłączony konektor. Pozdrawiam.
  • REKLAMA
  • #2 2949410
    McRancor
    VIP Zasłużony dla elektroda
    Posty: 5326
    Pomógł: 479
    Ocena: 124
    Złącze jest ok, pullup musi mieć wartość większą niż 4,7K, żeby słabiej podciągał, więc wymiana była niekorzystna, tak samo źle dołączyłeś rezystory do lini MISO, MOSI i SCK, nie powinno ich być, chodzi jedynie o to że jak podciąganie na tych pinach będzie mocniejsze (R<820R) to programator nie da sobie rady z ustawieniem poprawnego stanu, nie dołączaj żadnych rezystorów i nic nie podciągaj.

    Kondensator nie powinien mieć wartości 10uF, na pinie resetu nie powinno go być wogóle, nalepiej między Vcc a GND 100nF i to wystarczy.

    Jeśli procesor jest w obudowie TQFP 100 a nie 64, to podłączasz programator do linii PB, a nie PE, w jakiej obudowie masz procesor?
  • REKLAMA
  • #3 2949768
    qbin
    Poziom 2  
    Posty: 4
    Faktycznie, źle zrozumiałem z angielskiego manuala z tymi rezystorami. Myślałem, że "not stronger" oznacza "nie większy niż". Jutro zmienię kondensator z linii reset z 10uF na 100nF i rezystor podciągający z powrotem na 10k i to powinno być ok? Procesor mam w obudowie TQFP64, więc sygnały MOSI i MISO mam chyba poprawnie do portu PE podpięte. Linie MISO, MOSI, SCK podciągnąłem tylko chwilowo w ramach sprawdzenia, czy to może powodować błąd, ale już nie są podciągane. Ok, w takim razie jutro dam znać czy pomogło i dzięki za pomoc.
  • #4 2949923
    McRancor
    VIP Zasłużony dla elektroda
    Posty: 5326
    Pomógł: 479
    Ocena: 124
    Musi, bo jak nie to będzie lipnie, jeszcze kwestia taktowania procesora, może podłącz zewnętrzny kwarc jeśli nie ma, jeśli jest to czy działa poprawnie.
    Podłączenia pinów i złącze programatora jest ok
  • #5 2949991
    kamyczek
    Poziom 38  
    Posty: 3994
    Pomógł: 394
    Ocena: 571
    ten programator łaczy sie i pracuje bez problemowo proponuje całkowicie usunąc kandensator z obwody resetu jedynym mankamentem tego programatora jest słaby sygnał zerowania który może sie objawiać brakiem możliwości zerowania procka jesli w układzie resety znajduje sie np kondensator
  • REKLAMA
  • #6 2950286
    qbin
    Poziom 2  
    Posty: 4
    No chłopaki, chyba macie rację. Byłem zbyt ciekaw, by do jutra czekać i przelutowałem na szybko kondensator 10uF na 100nF. I coś się zaczęło dziać. Na chwilę zapaliła się zielona dioda, udało mi się wykonać pierwsze w życiu programowanie procka (:D), a potem znów zaczęła migać pomarańczowa dioda :P No ale jestem na dobrej drodze. Myślę, że jutro całkowicie wywalę kondensator z obwodu resetu tak jak radzicie, zmienię rezystor z 4.7k na 10k i będzie śmigać :) Wielkie dzięki chłopaki, bo już powoli traciłem nadzieję!! :)
  • #7 2953940
    qbin
    Poziom 2  
    Posty: 4
    Hmm wiecie co.. zmieniłem to tak jak mówiłem, ale dalej nie działa tak jak powinno, tzn czasami się zapali zielona lampka i pracuje normalnie, ale zdarza się to bardzo rzadko (muszę kilka razy odłączyć/podłączyć konektor, poruszać układem, kabelkami). Tak to wygląda, jakby gdzieś nie było styku, albo jakby się gdzieś coś zwierało.. ale przemirzyłem wszystkie linie i wyglądają ok..
  • #8 3123480
    gregoorr
    Poziom 18  
    Posty: 229
    Pomógł: 19
    Ocena: 34
    Dla zainteresowanych, jest instrukcja w języku polskim, może komuś się przyda.
    Załączniki:
    • AVRISPMK2.pdf (308.59 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • REKLAMA
  • #9 4055551
    romantv
    Poziom 17  
    Posty: 328
    Pomógł: 11
    Ocena: 8
    Panowie pierwszy raz zastosowałem układ ATmega 2561
    nie mam go w bibliotece BasComa
    Jak napisać do niego program ?
    posiadam program AVRStudio i z tego programu programuję ATmegi.

    Może ktoś ma pomysł.
  • #10 4055605
    Ch.M.
    Poziom 27  
    Posty: 1009
    Pomógł: 62
    Ocena: 15
    Poszukaj czy Twój Bascom obsługuje któryś z tych procków:
    64KB/100-pin version: ATmega640
    128KB/64-pin version: ATmega1281
    128KB/100-pin version: ATmega1280
    256KB/100-pin version: ATmega2560

    Jeśli tak to zadeklaruj ten o mniejszej niż Twój pamięci i po sprawie
    Jeśli nie to podpowiem ze AVRStudio obsługuje wszystkie te procki :)
  • #11 4055654
    romantv
    Poziom 17  
    Posty: 328
    Pomógł: 11
    Ocena: 8
    tylko w asemblerze bede musiał pisac lub c ?
  • #12 4548520
    GienekS
    Poziom 32  
    Posty: 1971
    Pomógł: 139
    Ocena: 15
    Też gryzę tego procka. Podobny problem ma na tym programatorze ale to może jeszcze być moja wina bo wisia tam MAX232 buforowany 74ls126. Na szczęście mam jeszcze JTAGA i z nim niema problemu.
    Oczywiście musiałem zainstalować Nowe AvrStudio 4.13 no i WinAvr najnowszy bo w starym tego procka jeszcze nie było.
    Ja mam teraz inny problem. Jak zaadresować pamięć ROM procka powyżej 64k ??

Podsumowanie tematu

✨ Problem dotyczy programowania mikrokontrolera ATmega2561 za pomocą programatora AVRISP mkII w środowisku AVR Studio 4.12, gdzie pomarańczowa dioda programatora miga, wskazując na błąd połączenia lub konfiguracji. Sprawdzono poprawność podłączenia sygnałów do złącza, które jest zgodne z dokumentacją, a programator jest prawidłowo wykrywany przez komputer i odczytuje napięcie zasilania (4,9–5,0 V). Wskazano, że rezystor podciągający na linii reset powinien mieć wartość powyżej 4,7 kΩ (np. 10 kΩ), a kondensator na linii reset nie powinien mieć wartości 10 µF, lecz 100 nF lub być całkowicie usunięty, ponieważ zbyt silne podciąganie lub duża pojemność mogą uniemożliwiać poprawne zerowanie mikrokontrolera. Linie MISO, MOSI i SCK nie powinny być podciągane rezystorami, gdyż może to zakłócać komunikację. Dla obudowy TQFP64 sygnały programatora powinny być podłączone do portu PE. Zwrócono uwagę na konieczność stosowania zewnętrznego kwarcu, jeśli mikrokontroler nie jest taktowany wewnętrznie, co może wpływać na stabilność programowania. Po wymianie kondensatora i rezystora udało się częściowo nawiązać poprawną komunikację, jednak problem z migającą pomarańczową diodą pojawia się sporadycznie, co może wskazywać na problemy z połączeniami mechanicznymi lub zwarciami. Dodatkowo pojawiły się pytania dotyczące programowania ATmega2561 w Bascomie oraz obsługi pamięci ROM powyżej 64 kB w AVR Studio.
Wygenerowane przez model językowy.
REKLAMA