Skocz do zawartości

Atmega64A i problem z wykonywaniem kodu.


Kuma

Pomocna odpowiedź

Witam

Koledzy i koleżanki, mam problem i proszę Was o pomoc.

Potrzebuję na Atmega64 uruchomić najprostszego blinka, chociażby tego ze skiców ArduinoIDE.
Ogólnie, to kod się kompiluje, exportuje go a dysk, wgrywam przy pomocy usbasp, i nawet nie wywala błędów.
Nie wiem co jest grane, ale program nie chce działać. LED nie miga, a napięcie na pinach jest mniej więcej 2.8V.

Namieszałem też przy fusebitach, a nie zapisałem sobie jakie powinny być domyślne fabrycznie.

Nie wiem (nie potrafię), jak wgrać bootloader, jak próbuje przez ArduinoIDE to wyskakuje mi problem z programatorem STK500...... A wybrany jest inny. 

Nie mam pewności czy Atmega jest 100% sprawna, bo sam ją lutowałem. 😉 Połączenia są ok.

Nie wiem, w którym momencie popełniam błąd/czegoś nie robię a powinienem.

MightyCore zainstalowany, ustawione zgodnie z tym, co znalazłem w internetach.

Czy ktoś jest w stanie pomóc mi rozwiązać problem? Prawie miesiąc próbuje rozgryźć tę łamigłówkę.

Z góry dziękuje 🙂 

Link do komentarza
Share on other sites

(edytowany)
Dnia 30.08.2022 o 00:38, farmaceuta napisał:

Wrzuć porządne zdjęcie na początek..

 

Na początek, to nie wiem od czego zacząć. Połączenia PC <--> Atmega jest ok, bo soft niby się wgrywa, bo avrdude nie pokazuje błędów.
Może powiedz, jakie zdjęcia i czego konkretniej/screeny Cię najbardziej interesują/były by najlepsze na na początek.

 

Dnia 30.08.2022 o 00:38, farmaceuta napisał:

Ty potrzebujesz Megacore, a nie Mightycore

Próbowałem to i to, efekt ten sam.

Ustawienia są takie:
1188472904_Zrzutekranu_20220831202712.thumb.png.19713d7b4ff9df6036e93e745f33fb40.png

kod programu to zwykły blink z przykładów:

 

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}


void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);                       // wait for a second
}

Piny już ustawiałem różne, efekt taki sam.

Powiedz mi proszę, czy bootloader jest wymagany czy nie? Wg. mnie jest, bo jak robiłem aplikacje na Atmega32 to był wgrywany i wszystko działało.

Edytowano przez Kuma
Na prośbę moderatora.
Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

46 minut temu, farmaceuta napisał:

połączenia na pewno Ok? Kondensatory na kwarc są?

Tak, połączenia są ok, ponieważ AVRDUDE nie pokazuje żadnych błędów, nawet weryfikacja jest ok i wykrywanie procka działa prawidłowo i pokazuje (a raczej zanim zamieszałem z fuse) poprawnego 🙂

Kondki na kwarcu są. Chociaż przy ustawieniu na 1MHz Int nie są wymagane a efekt koncowy jest taki sam jak przy 1MHz Ext. Preferowałbym jednak zewnętrzny kwarc.

Wgrywam przez USBASP. 

Link do komentarza
Share on other sites

Nie wiem co się stało, nic nie ruszałem i po takim długim czasie zaczęło SAMO działać. Czary mary jakieś.

Dziękuje wszystkim za pomoc.

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.