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

ATtiny26 nie wykrywany po pierwszym programowaniu - co robię źle?

Krzemex 06 Wrz 2007 14:47 1965 26
REKLAMA
  • #1 4256188
    Krzemex
    Poziom 11  
    Posty: 16
    Witam.
    Kupiłem sobie ATtiny26 i programator ISP STK200/300. Na płytce uniwersalnej umieściłem tylko podstawkę i złącze ISP. Podłączyłem układ do komputera, uruchomiłem BASCOMa (wersja 1.11.8.7) i napisałem prościutki programik:
    $regfile = "attiny26.dat"
    $crystal = 1000000
    
    Config PORTA = Output
    Config PORTB = Output
    PORTA = &B11111111
    PORTB = &B11110000
    
    End

    Zaprogramowałem mikrokontroler bez problemu, odłączyłem programator i sprawdziłem działanie programu. Na wszystkich pinach portu A był stan wysoki, a na porcie B na 4 pinach wysoki i na 4 niski. Podłączyłem znowu programator i teraz żaden program nie wykrywa uC (BASCOM, PonyProg, ISPProg, AVRdude). Na dodatek mój program już się nie wykonuje, a na resecie jest napięcie 2,6V i na pozostałych pinach 1,4V (poza tymi odpowiedzialnymi za ISP oraz VCC i GND). Kupiłem drugi taki sam uC, podłączyłem, zaprogramowałem i ta sama historia... już nie działa.
    Coś robię nie tak? O co chodzi?
  • REKLAMA
  • #2 4256440
    elektroziom
    Poziom 20  
    Posty: 337
    Pomógł: 40
    Ocena: 122
    Masz do niego dołączony rezonator kwarcowy?(z tego co widze uzywasz wewnetrznego 1MHz) Jak nie to spróbuj podpiąć. Zmieniałeś może cos w Fusebitach?
  • #3 4256853
    Krzemex
    Poziom 11  
    Posty: 16
    Fusebitów nie ruszałem, są ustawione domyślnie, czyli na rezonator wewnętrzny 1MHz. Próbowałem dołączyć rezonator kwarcowy 4MHz, niestety nic to nie zmienia.
  • REKLAMA
  • #4 4256926
    antrykot
    Poziom 20  
    Posty: 470
    Pomógł: 27
    Ocena: 27
    A z czego zasilasz procka, i czy masz połączone masy PCta i ew. zasilacza ? Może doszło do jakiegoś przepięcia.
  • REKLAMA
  • #5 4256955
    Nawigator
    Poziom 33  
    Posty: 1923
    Pomógł: 167
    Ocena: 160
    Czy przypadkiem pin resetu nie powinien być połączony z plusem zasilania przez rezystor? np. 10k. Oraz kondensator np. 10nF do masy?
    Pzdr. N.
    P.S. program działa prawidłowo.
  • #6 4256986
    Krzemex
    Poziom 11  
    Posty: 16
    Zasilanie biorę z sieci przez zasilacz 12V (od starych głośników :P), to podaję na stabilizatora 5V i do procka. Udało mi się prawidłowo zaprogramować dwa procesory tylko raz, obydwa po ponownym podłączeniu programatora zamierały, więc to raczej nie jest wina złego zasilania. Zastanawia mnie to niskie napięcie na resecie... Próbowałem go podpiąć do VCC, ale to też nic nie dawało.
  • #7 4257045
    elektroziom
    Poziom 20  
    Posty: 337
    Pomógł: 40
    Ocena: 122
    A teraz z tych procesorów da sie odczytać Fuse Bity? Rezystor i kondensator to układ wymuszenia resetu..a przy nim STK 200/300 nie bedzie działał..w STK przewód reset jest bezpośrednio podpiety do nózki reset procesora..sprawdz czy dobrze sa podpięte przystkie przewody od programatora a szczególnie SCK. Rezonator 4MHz żeby działał musisz ustawić w fusebitach pozdr ;)
  • #8 4257056
    Nawigator
    Poziom 33  
    Posty: 1923
    Pomógł: 167
    Ocena: 160
    A stabilizator 5V ma kondensatory na we/wy?
    Czy ten program do programowania nie ma ustawionej opcji zmiany fuses bo być może komenda $crystal = 1000000 ustawia zewnętrzny kwarc?
    Pzdr. N.
  • #9 4257126
    Krzemex
    Poziom 11  
    Posty: 16
    Fuse Bitów odczytać się nie da, bo żaden program nie rozpoznaje procka. Wszystkie połączenia sprawdzałem już wiele razy i nie znalazłem żadnego problemu. Co do SCK, to próbowałem też wpiąć kondensator pomiędzy SCK i GND.
    $crystal = 1000000 tylko informuje kompilator o częstotliwości taktowania. Z tego co wiem, to BASCOM sam z siebie nie zmienia Fuse Bitów. A może się mylę?

    P.S. Oczywiście przy stabilizatorze są kondensatory, wszystko wg noty katalogowej.
  • #10 4257154
    antrykot
    Poziom 20  
    Posty: 470
    Pomógł: 27
    Ocena: 27
    A może zepsuła sie tylko sygnatura ? Spróbuj może w PonyProgu ustawić typ procka i pominąć sprawdzanie ? Ja tak kiedyś miałem z M162, że była sprawna, tylko brakowało jej sygnaturki. Choć skoro program sie nie wyknuje, to albo procek jest walnięty, albo nie jest taktowany. Może zbuduj generator na jakimś inverterze i podłącz zgodnie z notą (chyba do XTAL1) i zobacz, czy coś sie będzie działo.
  • #11 4257331
    elektroziom
    Poziom 20  
    Posty: 337
    Pomógł: 40
    Ocena: 122
    Może sprubój zaprogramować jakiś innu procesor np. ATtiny2313. Może problem tkwi w programatorze?
  • #12 4257451
    Krzemex
    Poziom 11  
    Posty: 16
    Spróbuję jeszcze zrobić rezonator RC wg noty katalogowej i podłączyć go do XTAL1, ale jakoś nie wydaje mi się, żeby to pomogło. Dziwne jest to, że mogłem ten jeden raz zaprogramować obydwa procesory.
    Chyba nie pozostaje nic inne jak sprawdzić inny procek. Orientuje się ktoś, czy jest jakiś w obudowie DIP20 o takim samym rozmieszczeniu nóżek co ATtiny26?
  • Pomocny post
    #13 4257543
    firefox_PL
    Poziom 17  
    Posty: 235
    Pomógł: 21
    Ocena: 2
    wg. AVRFreaks niestety nie, http://www.avrfreaks.net/index.php?module=Freaks%20Devices&func=displayDev&objectid=61
    normalnie jeśli są jakieś inne kompatybilne pinowo jest taka informacja, np. dla atmega32 http://www.avrfreaks.net/index.php?module=Freaks%20Devices&func=displayDev&objectid=69 jest podane, że np atmega16 jest kompatybilna
  • #14 4260247
    Krzemex
    Poziom 11  
    Posty: 16
    Oczywiście podłączenie zewnętrznego rezonatora RC również nie pomogło... Bo w końcu Fuse Bity nie były ruszane. Tak kombinowałem, że teraz jakoś mocno grzeje mi się stabilizator, a jak sprawdziłem jaki prąd pobiera uC, to mi multimetr pokazał 0A. Już nie mam pojęcia o co chodzi :/
  • #15 4260341
    owurac
    Poziom 15  
    Posty: 95
    Pomógł: 10
    Ocena: 2
    Nie chodziło o zewnętrzny rezonator RC, ale o kompletny generator sygnału zegarowego. Można go zrobić na inwerterze, bądź wykorzystać gotowy scalony generator.
  • #16 4262740
    Krzemex
    Poziom 11  
    Posty: 16
    Czy układ NE555 będzie odpowiedni i jaką częstotliwość powinienem ustawić?
  • #17 4262956
    przemek20
    Poziom 21  
    Posty: 328
    Pomógł: 41
    Ocena: 25
    bedzie idealny ale sprawdz najpierw przyczyne grzania stabilizatora. Jakie jest napięcie zasilania? Po podlaczeniu resetu przez 10kom lub inny podobny do Vcc jaka jest wartość napięcia ne resecie? Odnosze wrażenie ze stabilizator ci generuje. Polecam go sprawdzić/wymienic i pewnie nie obejdzie sie bez nowego proca ale to na szczescie groszowy wydatek.
  • REKLAMA
  • #18 4263747
    Krzemex
    Poziom 11  
    Posty: 16
    Po podpięciu resetu do zasilania 5V przez rezystor 10kom, to na resecie jest 5V. Stabilizator jest chyba ok, bo grzeje się tylko jak procek jest w podstawce, czyli na 99% to jego wina. Tylko co mu się stało? Ja go tylko zaprogramowałem. No cóż nie ma co z tym dalej walczyć, kupię innego procka, na wszelki wypadek nowy stabilizator i mam nadzieję, że sytuacja się nie powtórzy.
    Jakoś nie wierzę, że kupiłem dwie wadliwe sztuki...:|
  • #19 4268854
    seba_x
    Poziom 31  
    Posty: 2071
    Pomógł: 29
    Ocena: 112
    Krzemex napisał:
    Po podpięciu resetu do zasilania 5V przez rezystor 10kom, to na resecie jest 5V. Stabilizator jest chyba ok, bo grzeje się tylko jak procek jest w podstawce, czyli na 99% to jego wina. Tylko co mu się stało? Ja go tylko zaprogramowałem. No cóż nie ma co z tym dalej walczyć, kupię innego procka, na wszelki wypadek nowy stabilizator i mam nadzieję, że sytuacja się nie powtórzy.
    Jakoś nie wierzę, że kupiłem dwie wadliwe sztuki...:|


    sprawdź płytkę , procka nie tak łatwo uwalić . a jak masz podpięte zasilanie i kabel programatora to procek działa ? nie wiem czy dobrze zrozumiałem że odłączenie kabla programatora powoduje uwalenie procka ? może spróbuj odpinać programator po wcześniejszym odłączeniu zasilania . osobiście uwaliłem dwa tiny26 ale tylko poprzez odwrotne zasilanie .
  • #20 4269397
    Krzemex
    Poziom 11  
    Posty: 16
    Płytkę sprawdzałem już wiele razy i niestety tam żadnego błędu nie znalazłem. I nie do końca dobrze zrozumiałeś, procesor przestał odpowiadać po tym jak po pierwszym zaprogramowaniu znowu podłączyłem programator.
  • #21 4269569
    seba_x
    Poziom 31  
    Posty: 2071
    Pomógł: 29
    Ocena: 112
    Krzemex napisał:
    Płytkę sprawdzałem już wiele razy i niestety tam żadnego błędu nie znalazłem. I nie do końca dobrze zrozumiałeś, procesor przestał odpowiadać po tym jak po pierwszym zaprogramowaniu znowu podłączyłem programator.


    sprawdz czy jakiś program pracujący w tle nie korzysta z lpt , u mnie chodzi SmatrieLCD i jak zapomnę go wyłączyć to też program nie wykrywa procka lub wykrywa ale nie może programować .
  • #22 4269582
    Krzemex
    Poziom 11  
    Posty: 16
    Nie o to chodzi. Zaprogramować mogłem, ale tylko raz. I teraz procek nie działa, ani z programatorem ani bez. Żadnych programów korzystających z lpt nie mam.
  • #23 4271393
    seba_x
    Poziom 31  
    Posty: 2071
    Pomógł: 29
    Ocena: 112
    dziwne , w fusach napewno nic nie zmieniasz ? a jaki komunikat dostajesz z baskoma jak próbujesz zaprogramować procka ponownie ?
  • #24 4272468
    Krzemex
    Poziom 11  
    Posty: 16
    Na pewno nic nie zmieniam, za drugim razem specjalnie nawet nie wchodziłem zakładkę Lock and Fuse Bits. Otrzymuję komunikat "Could not identify chip with ID: FFFFFF. A jak mu "pomagam" zidentyfikować i próbuję zaprogramować na siłę, to wiesza się na okienku "Writing ROM".
  • #25 4272604
    seba_x
    Poziom 31  
    Posty: 2071
    Pomógł: 29
    Ocena: 112
    - zasilanie dobrze odfiltrowane ?
    - przekładasz procki z odłączonym zasilaniem ?
    - reset przez 10kohm do plusa ?
    - programator też odpinasz bez zasilania ?

    jeśli robisz tak jak jest wyżej to nie ma prawa paść ten procek , a te piny na które wystawiasz - lub + to wiszą w powietrzu ? może są gdzieś zwarte z masą lum z zasilaniem i podczas wykonywania programu poprostu robią zwarcie ? spróbuj w Options/Compiler/Chip wybrać attiny26.dat , i jeszcze jedno czy masz wtyczkę programatora czy lużne kabelki ? może źle któryś podpiełeś i bascom nie znajduje procka
  • #26 4274463
    Krzemex
    Poziom 11  
    Posty: 16
    seba_x napisał:
    - zasilanie dobrze odfiltrowane ?

    było, nie wiem na ile dobrze, jest stabilizator, a przy stabilizatorze kondensatory
    seba_x napisał:
    - przekładasz procki z odłączonym zasilaniem ?

    tak
    seba_x napisał:
    - reset przez 10kohm do plusa ?

    było
    seba_x napisał:
    - programator też odpinasz bez zasilania ?

    nie

    seba_x napisał:
    jeśli robisz tak jak jest wyżej to nie ma prawa paść ten procek , a te piny na które wystawiasz - lub + to wiszą w powietrzu ? może są gdzieś zwarte z masą lum z zasilaniem i podczas wykonywania programu poprostu robią zwarcie ? spróbuj w Options/Compiler/Chip wybrać attiny26.dat , i jeszcze jedno czy masz wtyczkę programatora czy lużne kabelki ? może źle któryś podpiełeś i bascom nie znajduje procka

    Nie ma żadnych wiszących pinów, wszystko jest na płytce. Co do ustawień Bascoma próbowałem już na wszystkie strony. A programator mam z wtyczką i podłączam ją tak samo jak wtedy, kiedy udało się zaprogramować.
  • #27 4274849
    seba_x
    Poziom 31  
    Posty: 2071
    Pomógł: 29
    Ocena: 112
    kup nowego procka , zrób wszystko dokładnie tak jak ci napisałem , musi działać . najpierw tylko odczytaj fusy (nic nie zmieniaj i nie zapisuj) wyłącz wszystko , odłącz zasilanie , wyjmij i wsadz spowrotem procka , podłącz programator a potem zasilanie i spróbuj ponownie odczytać fusy , jeśli po takim manewrze bez programowania procek się nie znajdzie to ja wymiękam

    wrzuć zdjęcia tej płytki może czegoś się dopatrzymy :crazyeyes:

Podsumowanie tematu

✨ Problem dotyczy programowania mikrokontrolera ATtiny26 za pomocą programatora ISP STK200/300 i środowiska BASCOM (wersja 1.11.8.7). Po pierwszym udanym zaprogramowaniu i odłączeniu programatora układ działał zgodnie z oczekiwaniami, jednak po ponownym podłączeniu programatora mikrokontroler przestał być wykrywany przez różne programy (BASCOM, PonyProg, ISPProg, AVRdude), a program przestał się wykonywać. Na pinie reset pojawiło się obniżone napięcie (około 2,6 V), a na innych pinach wartości napięć były nietypowe. Próby podłączenia zewnętrznego rezonatora kwarcowego 4 MHz oraz rezonatora RC nie przyniosły efektu. Fuse bity pozostały domyślne (wewnętrzny oscylator 1 MHz) i nie udało się ich odczytać po utracie komunikacji z układem. Zasilanie pochodziło ze stabilizatora 5 V z kondensatorami, jednak stabilizator zaczął się mocno grzać po umieszczeniu mikrokontrolera w podstawce. Sprawdzono poprawność połączeń, w tym masy i sygnałów programatora, a także obecność rezystora podciągającego na pinie reset (10 kΩ do VCC). Podejrzewano uszkodzenie mikrokontrolera lub stabilizatora, ewentualnie problem z sygnałem zegarowym (brak taktowania). Zalecano testowanie programatora na innym mikrokontrolerze (np. ATtiny2313) oraz stosowanie generatora sygnału zegarowego (np. na układzie NE555). Ostatecznie zasugerowano wymianę mikrokontrolera i stabilizatora, gdyż uszkodzenie układu mogło nastąpić podczas programowania lub z powodu błędów w układzie zasilania i resetu.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA