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

AVR BASCOM - Brak reakcji procesora na wgrany program

djramu 25 Lip 2013 12:57 4860 35
  • #1 12559474
    djramu
    Poziom 17  
    Witam.

    Kombinuje już dłuższy czas nad problemem martwych AVR. Przeglądałem internet ale nie znalazłem odpowiedzi która by rozwiązała mój problem.

    Procesor programuje się bez żadnych błędów. Weryfikacja przebiega poprawnie.
    Niestety nie działa nawet najprostszy program:

    Kod: text
    Zaloguj się, aby zobaczyć kod


    Objawy dotyczą każdego programowanego przeze mnie procesora. Nie ma różnicy czy procesor jest nowy czy używany.

    Schemat podłączeń zasilania procesora:
    AVR BASCOM - Brak reakcji procesora na wgrany program

    Fusebity:
    AVR BASCOM - Brak reakcji procesora na wgrany program

    Nie mam pojęcia czemu to nie rusza. Będę wdzięczny za każdą sugestię.
  • #2 12559504
    M. S.
    Poziom 34  
    Na schemacie ok. Ale czy w rzeczywistości porta ma zasilanie (AVCC)? Sprawdź na innych końcówkach nie będących wejściami ADC.

    Kod: text
    Zaloguj się, aby zobaczyć kod


    Dla pewności spróbuj
    Kod: text
    Zaloguj się, aby zobaczyć kod
  • #3 12559744
    piotrva
    VIP Zasłużony dla elektroda
    Próbowałeś odłączyć programator?
    Może linia RST nie jest zwalniana.
    Poza tym jak sprawdzasz działanie tego programu?
  • #4 12559856
    djramu
    Poziom 17  
    Na avcc jest takie samo napięcie zasilania jak na vcc. Zastosowanie ddrx.y nie przynosi efektu. sytuacja powtarza się przy wykorzystaniu każdego z portów wyjściowych. Sprawdzam to optycznie, gdyż mam podpięte diody na pinach portu a i d. Programator jest odłączany, chociaż w specyfikacji jest napisane, że ustala stan wysokiej impedancji po zakończeniu programowania. Wydaje mi się, że nie pracuje generator taktowania procesora. Niestety zmiana źródła taktowania na zewnętrzny kwarc oraz na zewnętrzny generator nie przyniosła efektu.


    P.S..
    W AVR siedzę już kilka lat. Taka sytuacja zdarzyła mi się pierwszy raz. Zrobiłem wszystko o czym wiedziałem, że może zakłócać pracę uP.
  • #5 12559941
    piotrva
    VIP Zasłużony dla elektroda
    djramu napisał:
    Wydaje mi się, że nie pracuje generator taktowania procesora.

    To źle Ci się wydaje - wtedy nie zaprogramowałbyś układu - programator zgłosiłby błąd.
    djramu napisał:
    Objawy dotyczą każdego programowanego przeze mnie procesora.

    Hmm, rozumiem różne modele, na różnych płytkach?

    Pokaż CAŁY schemat swojego podłączenia + zdjęcia układów.
  • #6 12560569
    yokoon
    Poziom 29  
    djramu napisał:
    Witam.

    Kombinuje już dłuższy czas nad problemem martwych AVR. Przeglądałem internet ale nie znalazłem odpowiedzi która by rozwiązała mój problem.

    Procesor programuje się bez żadnych błędów. Weryfikacja przebiega poprawnie.
    Niestety nie działa nawet najprostszy program:

    Kod: text
    Zaloguj się, aby zobaczyć kod


    Objawy dotyczą każdego programowanego przeze mnie procesora. Nie ma różnicy czy procesor jest nowy czy używany.

    Schemat podłączeń zasilania procesora:
    AVR BASCOM - Brak reakcji procesora na wgrany program

    Fusebity:
    AVR BASCOM - Brak reakcji procesora na wgrany program

    Nie mam pojęcia czemu to nie rusza. Będę wdzięczny za każdą sugestię.


    W tym programie ustawiasz stan wysoki na Porta.0 i co dalej ?
    Dopisz jeszcze :

    Wait 1
    Reset porta


    Podłącz diodę LED katodą do tego portu przez rezystor, powinna mrugać.
  • #7 12562598
    tank_driver
    Poziom 17  
    Sprawdź to:

    Kod: text
    Zaloguj się, aby zobaczyć kod


    W ten sposób diodę możesz podłączyć dowolną stroną (porty ATMEGI są przecież trójstanowe), użyj rezystora 470 ohm - 1 kohm aby nie przekroczyć maksymalnego prądu końcówki portu (20mA). Jeśli procesor + programator są sprawne (a tak być powinno skoro "potwierdzają" poprawność wgranego programu) to nie ma opcji żeby nie ruszyło.

    Pozdrawiam!
  • #8 12572047
    djramu
    Poziom 17  
    tank_driver napisał:
    Sprawdź to:

    Kod: text
    Zaloguj się, aby zobaczyć kod


    W ten sposób diodę możesz podłączyć dowolną stroną (porty ATMEGI są przecież trójstanowe), użyj rezystora 470 ohm - 1 kohm aby nie przekroczyć maksymalnego prądu końcówki portu (20mA). Jeśli procesor + programator są sprawne (a tak być powinno skoro "potwierdzają" poprawność wgranego programu) to nie ma opcji żeby nie ruszyło.

    Pozdrawiam!


    Wgranie tego programu nie przyniosło efektu.
    Oto zdjęcia układów w których nie mogę uruchomić procków:
    AVR BASCOM - Brak reakcji procesora na wgrany program AVR BASCOM - Brak reakcji procesora na wgrany program AVR BASCOM - Brak reakcji procesora na wgrany program AVR BASCOM - Brak reakcji procesora na wgrany program

    i schematy:
  • #10 12572343
    PiotrPitucha
    Poziom 34  
    Witam
    Masz błędy na schemacie ! zobacz na innych schematach jak podłączyć AVcc.
    Jeśli rzeczywiście masz podpięte całe zasilanie przez cewkę i na dodatek nie jest ono odsprzężone kondesatorami to wcale się nie dziwię że to nie działa, piszesz że długo siedzisz nad AVRami a to błąd podstawowy.
    Piotr
  • #11 12572441
    djramu
    Poziom 17  
    Po zmianie sposobu zasilania na:

    AVR BASCOM - Brak reakcji procesora na wgrany program

    i ponownym zaprogramowaniu procesora nie zmieniło się nic. Dalej dioda nie miga.
  • #12 12572459
    tank_driver
    Poziom 17  
    A mnie się te płytki nie podobają - jakoś to wszystko brzydko poklejone. Założę się że schemat swoje a płytki swoje - załóż jedną z tych ATMEG w stykówkę, zestaw startowy czy niedrogie MMDuino Uno i spróbuj raz jeszce. Gwarantuję że ruszy.
  • #13 12572729
    djramu
    Poziom 17  
    Niestety po stworzeniu układu na płytce stykowej dalej nie działa. Nie działa też na PORTB.
  • #14 12572739
    tank_driver
    Poziom 17  
    A piny MOSI, MISO, SCK niezbędne do zaprogramowania uP znajdują się właśnie na tym porcie. Posiadasz inny, pewny uP aby sprawdzić programator na płytce stykowej?
  • #15 12572778
    djramu
    Poziom 17  
    Na innych procesorach to samo. Do tej pory używałem USBASP i działały wszystkie procki po zaprogramowaniu. Po dłuższej przerwie potrzebowałem zaprogramować atmegę. Pierwszy upload programu, i test działania diod led był ok. Po napisaniu części programu postanowiłem że wgram go i przetestuję działanie na procku. Program się wgrał, a procek martwy. Inny procek, dalej martwy. Inny uklad dalej procek martwy. Inny programator to samo. Inny program obsługujący programator to samo. inny port usb w komputerze to samo. Instalacja Bascoma od nowa i dalej to samo. zastosowanie się do rad z forum, dalej nie działa.
  • #16 12572796
    tank_driver
    Poziom 17  
    Czarna magia! Nowy, świeży uP + nowy, świeży program + żadnego dotykania Fusebitów -> jeśli nie ruszy to naprawdę nie wiadomo o co chodzi...
  • #17 12572866
    djramu
    Poziom 17  
    Nowy procesor, nowy program... Nie działa... Może to być wina komputera?
  • #18 12572878
    tank_driver
    Poziom 17  
    Kod: text
    Zaloguj się, aby zobaczyć kod


    Celowo zadeklarowałem inny niż zastosowany w uładzie procesor.
    Zaprogramuje bez błędów?
  • #19 12572892
    djramu
    Poziom 17  
    The target chip: ATMEGA32 does not match the detected chip: ATmega16A
  • #20 12572902
    tank_driver
    Poziom 17  
    Kod: text
    Zaloguj się, aby zobaczyć kod


    A teraz?
  • #21 12572917
    djramu
    Poziom 17  
    Tak próbowałem. Programuje bez problemów. ale program nie działa.
  • Pomocny post
    #22 12572929
    tank_driver
    Poziom 17  
    Wyłapałem że wcześniej deklarowałeś $regfile = "m16def.dat" zamiast $regfile = "m16adef.dat" (mimo że procesory różnią się jedynie poborem prądu i rezystancją podciągania pinu RESET to warto było sprawdzić ten trop), jeśli dioda LED podłączona jest poprawnie do PORTA.0 to niestety nic więcej (poza samym komputerem) nie przychodzi mi do głowy...

    Ostatni już raz:
    Kod: text
    Zaloguj się, aby zobaczyć kod


    Dioda pod dowolny z pinów PORTC...
  • #23 12572954
    djramu
    Poziom 17  
    Dzięki za pomoc. Muszę sprawdzić czy inne procesory też tak się zachowują (attiny)
  • #24 12573037
    tank_driver
    Poziom 17  
    Nie ma problemu. Daj znać jak coś nowego ustalisz, naprawdę jestem ciekaw co może być przyczyną takiego zachowania.

    Pozdrawiam!
  • #25 12573475
    piotrva
    VIP Zasłużony dla elektroda
    W razie dalszych problemów z miłą chęcią przyjmę jeden z tych tajemniczych procesorów na badania na HVPP i pewnym sprzęcie -> kontakt na PW.
  • #26 12581552
    djramu
    Poziom 17  
    Witam ponownie.

    Rozwiązałem problem.

    Okazuje się, że kompilator bascoma szwankuje. Po zainstalowaniu programu atmel studio i napisaniu prostego programu w C diodki zaczęły radośnie migać.

    Taki stan procesora (martwy) występował przy nowej (2.X.X.X) jak i przy starszej (1.11.9.5).
  • #27 12581622
    piotrva
    VIP Zasłużony dla elektroda
    Hmm, a jakie to były programy?
    Sprawdzę u siebie i ewentualnie zgłoszę Markowi Albertsowi do poprawki.
  • #28 12581704
    djramu
    Poziom 17  
    Kod: text
    Zaloguj się, aby zobaczyć kod


    to nie działało ani żadna jego pochodna.

    Natomiast zadziałało to:

    Kod: C / C++
    Zaloguj się, aby zobaczyć kod
  • #29 12582029
    piotrva
    VIP Zasłużony dla elektroda
    Mamma mia! Co to jest ten program w C?
    Nigdy tak nie rób, zastosuj pętle while...
    Co do programu w Bascom - powinien wystawić na pin PA0 stan wysoki i jak rozumiem tak się nie działo?
REKLAMA