Elektroda.pl
Elektroda.pl
X

Wyszukiwarki naszych partnerów

Kategoria: Kamery IP / Alarmy / Automatyka Bram
Montersi
Kategoria: Akumulatorki / Baterie / Ładowarki

AVR - Atmega16A pierwszy program.

filip10 23 Lis 2016 00:05
  • #1 23 Lis 2016 00:05
    filip10
    Poziom 9  

    Mam programator USBasp, zainstalowane do niego sterowniki (wszystko jest git w menadżerze urządzeń) i ATmegę16A. Połączyłem układ zgodnie z notą i przy uruchamianiu programu wywala mi taki błąd:
    AVR - Atmega16A pierwszy program.
    Próbowałem połączyć wszystko jeszcze raz ale dalej to samo.
    Jaka może być tego przyczyna? [/img]

  • #2 23 Lis 2016 07:58
    krisRaba
    Poziom 20  

    Tak jak jest napisane, mikrokontroler nie odpowiada.
    <ciach>
    Jakiej płytki z ATmegą używasz? Czy jest poprawnie zasilona? Czy to "goły" procesor, czy jakiś kit?
    Podłączyłeś układ zgodnie z notą, czyli jak? Musisz podać więcej szczegółów, żeby ktoś mógł Ci pomóc. Często błąd jest właśnie w tych detalach, które przyjmuje się za pewnik i "nie warto o nich pisać" ;)

    <ciach>

    Moderowany przez dondu:

    Przecież programator działa poprawnie i AVRdude także.

  • #3 23 Lis 2016 08:07
    dondu
    Moderator Mikrokontrolery Projektowanie

    Przyczyn może być wiele: http://mikrokontrolery.blogspot.com/2011/04/problemy-z-zaprogramowaniem.html

    Komunikat sugeruje sprawdzenie prawidłowości podłączenia..
    Pokaż zdjęcia podłączenia programatora, tak byśmy mogli sprawdzić, czy prawidłowo podłączyłeś.

    Przy okazji zaglądnij do spisu treści na powyższej stronie.

  • #4 23 Lis 2016 21:02
    filip10
    Poziom 9  

    Zdjęcia chyba nie ma sensu wstawiać bo i tak byłoby mało czytelne.
    Z taśmy od programatora podłączyłem na 100 % dobrze piny MOSI RST SCK MISO
    do Atmegi i VCC i GND do ścieżek z zasilaniem. Z Atmegi PIN Vcc do + i przez kondziak 100 nF do masy. RESET z Atmegi przez rezystor 1.5 k do +.Zasilane analogowe też podłączyłem.
    Chyba, że R=1.5 k to za mało.

  • #5 23 Lis 2016 21:14
    tmf
    Moderator Mikrokontrolery Projektowanie

    Zapewnień, że na 100% dobrze jest podłączone mieliśmy tu sporo i równie często okazywało się, że jednak coś nie styka, coś jest nie tak itd. Ten rezystor z RESET wywal, niczemu nie służy, czy podłączyłeś wszytkie piny Vcc i GND procesora?

  • #8 23 Lis 2016 22:17
    krisRaba
    Poziom 20  

    A gdzie ten rezystor? Bo wygląda jak RESET (pin 9) czerwonym przewodem podłączony bezpośrednio do VCC... Chociaż przewód wychodzi poza kadr, więc mogę się mylić.
    Jeśli jest na sztywno do VCC, to programator może sobie nim machać i nic nie poradzi.

  • #9 23 Lis 2016 22:19
    filip10
    Poziom 9  

    Wyżej Tmf i dondu napisali, że on nie jest potrzebny.

  • #10 23 Lis 2016 22:22
    krisRaba
    Poziom 20  

    W sensie, że nie podciągasz RESETu, bo ma wewnętrzny pull-up, a nie że wpinasz go na sztywno...

  • #11 23 Lis 2016 22:23
    filip10
    Poziom 9  

    Tak czy tak, program się nie wgrywa.

  • #12 23 Lis 2016 22:35
    krisRaba
    Poziom 20  

    Czemu do masy (brązowy przewód) masz pin 10 programatora, a nie 4?
    AVR - Atmega16A pierwszy program.

  • #13 23 Lis 2016 22:46
    filip10
    Poziom 9  

    Spotkałem się tylko z wersjami, że GND jest na pinach 8 i 10.
    Pod 4 jak wpiąłem to też nic nie zmienia.

  • #14 23 Lis 2016 22:51
    krisRaba
    Poziom 20  

    A fakt, widzę też takie pinouty jak mówisz. Na swoim masz jakąś rozpiskę pinów? Żeby się upewnić...
    I czy to jest mega prosto ze sklepu? Czy ktoś się nią już bawił? Bo nie masz zewnętrznego zegara, więc jeśli ktoś się nią bawił i zmienił fusebity (lub Ty przez przypadek), to bez zegara nie pójdzie.

    Dla pewności możesz też zmierzyć VCC bezpośrednio na nogach MCU, sprawdzić miernikiem przejście z nogi MCU do konkretnego miejsca w USBasp, by potwierdzić, że wszystko styka.
    Jak puściłeś linię RESET programatora na VCC, to zależnie od wykonania (np. obecności rezystorów szeregowych lub ich braku) mogłeś ją uszkodzić. Też dobrze by było sprawdzić, czy działa jak trzeba...

    Pytanie odnośnie zasilania. Czy Twój programator wystawia Ci zasilanie dla płytki, czy oczekuje, że Ty go zasilisz? Gdzie do szyn + i - masz podłączone zasilanie? Bo ten kabel na początku chyba nie jest wpięty? Trochę słabo widać co tam się dzieje z czarnym przewodem...
    EDIT: ok, widzę, że USBasp wystawia zasilanie.

  • #15 23 Lis 2016 23:06
    filip10
    Poziom 9  

    na swoim, tzn?
    Podpinałem tak jak na rysunku:
    AVR - Atmega16A pierwszy program.

  • #16 23 Lis 2016 23:11
    krisRaba
    Poziom 20  

    Na stronie producenta piszą

    Cytat:
    Proszę nie pomylić wyjść pomiędzy wtykiem i gniazdem (najczęstszy błąd początkujących!)

    Rozumiem, że sprawdzone 2 razy ;)

  • #17 23 Lis 2016 23:28
    dondu
    Moderator Mikrokontrolery Projektowanie

    filip10 napisał:
    Podpinałem tak jak na rysunku:

    A jak mamy to sprawdzić, skoro na zdjęciach nie widzimy programatora i taśmy?

    Zrób porządek - wypnij zbędne przewody i elementy z płytki, podepnij tylko zasilanie i pozostałe przewody z programatora.

    Jeśli nadal będziesz miał problem zrób ponownie zdjęcia i pokaż nam do sprawdzenia.


    filip10 napisał:
    Spotkałem się tylko z wersjami, że GND jest na pinach 8 i 10.

    I to są programatory niezgodne ze standardem producenta mikrokontrolera - standard Atmela mówi jasno jak ma być: http://mikrokontrolery.blogspot.com/2011/04/isp-co-to-takiego.html

  • #19 25 Lis 2016 00:04
    filip10
    Poziom 9  

    Teraz już powinno być czytelne :)
    AVR - Atmega16A pierwszy program. AVR - Atmega16A pierwszy program. AVR - Atmega16A pierwszy program. AVR - Atmega16A pierwszy program. AVR - Atmega16A pierwszy program.

    PS. ATmega była używana wcześniej przez kogoś innego.

  • #20 25 Lis 2016 09:24
    krisRaba
    Poziom 20  

    Hehe, no dużo ładniej.
    Wyjaśniają się natomiast dodatkowe rzeczy ;)
    1. Nie masz programatora ATNELa, tylko programator DIY - upewnij się zatem, że on zasila Twój układ docelowy, bo ktoś mógł w projekcie DIY to pominąć - znów nie pokazujesz całego ;) I czy jesteś pewny jego wyprowadzeń? Że sygnały znajdują się tam, gdzie powinny być?
    2. Załatw sobie kwarc i podłącz do odpowiednich pinów, bo jak MCU było używane wcześniej, to jest duże prawdopodobieństwo, że ktoś działał na zewnętrznym zegarze i bez niego mega Ci nie ruszy. Po przestawieniu fusebitów na wewnętrzny zegar będziesz mógł kwarcu się pozbyć. Bo fabrycznie mega przychodzi na zegarze wewnętrznym, ale jak ktoś się nią bawił, to może już tak nie być.

    Co to za kabel sterczy do szyn zasilających, że go nie usunąłeś? Zasilanie?

  • #21 25 Lis 2016 11:07
    filip10
    Poziom 9  

    AVR - Atmega16A pierwszy program.
    Jestem pewny wyprowadzeń.
    Jaki kwarc mam podpinać?
    Tak, to kabel z zasilania od USB.

  • #22 25 Lis 2016 11:38
    krisRaba
    Poziom 20  

    Dobra, czyli zasilasz z zewnętrznego źródła. Sprawdziłeś miernikiem, że to zasilanie pojawia się na nóżkach MCU?

    Co do kwarcu, to pytanie, czy masz coś pod ręką, czy będziesz specjalnie kupował? Chyba najlepiej próbować z 8MHz, bo zadziała przy obu ustawieniach CKOPT. Ale jak masz inny, to spróbuj z takim jaki masz.

  • #23 26 Lis 2016 10:58
    filip10
    Poziom 9  

    Nie mam pojęcia co było wcześniej robione z tym układem więc kupiłem nową ATmegę16A ale dalej mam ten sam błąd.

  • #24 26 Lis 2016 11:54
    krisRaba
    Poziom 20  

    No jak na drugim jest to samo, to trzeba szukać w innych miejscach, bo fabrycznie mega startuje na wewnętrznym RC.
    A posprawdzałeś rzeczy, które sugerowane były już wcześniej? Napięcia zasilające? Przejścia od programatora do MCU? Jak programator masz w takiej postaci, w jakiej masz, to w łatwy sposób można miernikiem sprawdzić przejścia od spodu gniazda IDC na programatorze do nogi MCU.
    Ten programator skąd masz? Sam go składałeś? Czy był już sprawdzony przez kogoś, że cokolwiek w życiu zaprogramował? Pokaż foto od spodu. Na pierwszy rzut oka nie ma tam rezystorów szeregowych na wyjściach, więc chociażby wcześniejsze próby z resetem podpiętym na sztywno do VCC mogły go uszkodzić niestety. Możliwe, że np. pierwsza mega potrzebowała zewnętrznego zegara, natomiast przy dalszych próbach uszkodzony został programator.

  • #25 26 Lis 2016 13:18
    Piotrus_999
    Poziom 38  

    Usbasp na alim za dolca. Szkoda się męczyć z diy szczególnie że nie masz doswiadczenia

  • #26 26 Lis 2016 19:28
    majeranek53
    Poziom 24  

    Witam
    To może wrócimy do Twojego filip10 pierwszego postu.
    W komendzie wywołującej avrdude na załączonym obrazku znalazłem coś takiego: " -P com2 "???? Zamień to na : " -P usb "!!!!

  • #27 13 Lut 2017 17:19
    filip10
    Poziom 9  

    Po długiej przerwie wróciłem do uC z nowym programatorem i nową ATmegą.
    Udało mi się uruchomić w końcu kilka programów ale pojawił się inny problem.
    Otóż przez przypadek, w Notepadzie zamiast "make program" kliknąłem "make clean" i od tego momentu nie mogę nic wgrać.
    Przywróciłem usunięte pliki i próbowałem reinstalacji WinAVR.
    Nie pomaga też nowy projekt, ani nowy makefile.
    Procek działa cały czas z wcześniej wgranym programem.
    Programator jest wykrywalny.
    A o to błąd:
    AVR - Atmega16A pierwszy program.

    Dodano po 16 [minuty]:

    Próba wgrania programu przez AVR Studio 6.2 kończy się resetem (i dalej mam wgrany stary program) i takim komunikatem: avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.

  • #28 13 Lut 2017 17:22
    Piotrus_999
    Poziom 38  

    Nic dziwnego bo twiój program się nie linkuje. Tak że zawsze wgrywasz stary.

    Kominikat avrdude mówi że czas firmware programatora zaktualizować.

  • #29 13 Lut 2017 17:23
    filip10
    Poziom 9  

    Tzn. Co mam zrobić z tym firmware?

  • #30 13 Lut 2017 17:37
    Piotrus_999
    Poziom 38  

    Po pierwsze doprowadź swoje makefile do takiego stanu aby bez błędu kompilował i linkował Twoje projekty. Bład chyba ciężko przeoczyć na Twoim obrazku.

    Aby móc zmieniać sprędkość sck przy programowaniu, oprogramowanie usbasp musi umieć to robić. Ty masz wersję, która nie umie. Tak że np. innym programatorem musisz wgrać nowszy firmware w procesor na swoim programatorze.

  Szukaj w 4mln produktów
Przeglądaj produkty