Skocz do zawartości

Problem z zaprogramowaniem mikrokontrolera.


Pomocna odpowiedź

Napisano

Witam. Ostatnio zakupiłem mikrokontroler ATmega328P z wgranym już bootloaderem Arduino (ten sam typ mikrokontrolera był wykorzystany w Arduino Uno) Po wgraniu programu przez kliknięcie opcji załaduj przez programator.

 void setup() 
{

 pinMode(13, OUTPUT);
}


void loop()
{
 digitalWrite(13, HIGH);  
 delay(1000);              
 digitalWrite(13, LOW);   
 delay(1000);              
}

w kompilatorze (kompilator ze strony Arduino) wyświetla się dziwny błąd, ale dioda na programatorze mignęła więc program chyba został wgrany.

avrdude: error: programm enable: target doesn't answer. 1

avrdude: initialization failed, rc=-1

Double check connections and try again, or use -F to override

this check.

Po podłączeniu mikrokontrolera, na pinie 13 nie ma żadnego sygnału. Problem w tym ze w nocie katalogowej pin 13 nazywa się PD7, ale gdy zmieniam to w programie kompilator pokazuje błąd o źle zdefiniowanym pinie.

O co chodzi? Proszę o pomoc.

__________

Komentarz dodany przez: Treker

Kody programów należy umieszczać w tagach ! Tym razem już poprawiłem, pamiętaj na przyszłość 😉

Mikrokontroler na pewno jest dobrze podłączony, sprawdzałem z 10 razy, a co do tego drugiego to musisz niestety kolego wyjaśnić mi o co chodzi bo nie rozumiem. Co to digital* tion?

Niestety nie mogę wysłać żadnego obrazka, wyskakuje mi takie coś: Nie udało się wysłać pliku na serwer.

Musisz mi też wyjaśnić wszystko łopatologicznie. Jak w programie w takim razie zdefiniować pin? Podłączone mam wszystko tak jak na tym filmie:

w minucie 26:18 z tą różnicą ze AVCC podłączyłem jeszcze przez dławik, mikrokontroler zasilam stabilizatorem z kondensatorami między jego nóżkami. Czym są te RX i TX? Sory jeśli chodzi o podłączanie mikrokontrolera bez platformy takiej jak Arduino to jestem zielony. A i na programatorze http://botland.com.pl/programatory/2014-programator-avr-zgodny-usbasp-isp-tasma-idc-rozne-kolory.html mam zworkę POWER do zasilania mikrokontrolera bezpośrednio z programatora. Czy ona powinna być zwarta podczas programowania? Gdy zwarłem ją na początku USB i programator strasznie się rozgrzały. (mikrokontroler wpinam w płytkę którą sobie zrobiłem do programowania żeby za każdym razem kabli osobno nie podłączać, nie zasilam tej płytki z niczego)

Treker, nie zrozumiałeś mnie, ja nie mam arduino uno (na arduino Leonardo uczyłem się programować) mam sam mikrokontroler, bez platformy. A tak apropo czemu nie mogę wysyłać obrazków? cały czas mi wyskakuje Nie udało się wysłać pliku na serwer.

Ostatnio zakupiłem mikrokontroler ATmega328P z wgranym już bootloaderem Arduino (ten sam typ mikrokontrolera był wykorzystany w Arduino Uno) Po wgraniu programu przez kliknięcie opcji załaduj przez programator.

Z tego, co zrozumiałe kupiłeś mikrokontroler z ATmegą, która wyposażona jest w bootloader Arduino, podłączyłeś go do programatora, a teraz próbujesz zaprogramować go przez IDE Arduino klikając Załaduj. Zgadza się?

Zobaczę, co ze zdjęciem - wyślij spakowane w zip do mnie na PW w formie załącznika 😉 U mnie normalnie dodawanie działa.

Tak zgadza się, z tą różnicą że nie klikałem załaduj bo wtedy wyskakiwał mi błąd że nie umie zaleźć portu czy coś, klikałem załaduj przez programator, wtedy wszystko niby fajnie działało, dioda na programatorze mignęła ale wyskoczył ten błąd error: programm enable: target doesn't answer. 1 Może dlatego nie odpowiada bo nie zwarłem zworki POWER? Z niczego innego mikrokontrolera nie zasilałem.

Zygzak, Twoje zdjęcie:

Rozmiar zdjęcia 1.07MB, przy wysyłaniu zdjęć jest informacja - maksymalny rozmiar plików 1MB 😉 Wystarczyło zmniejszyć.

Jednak i tak nie pomaga ono zbyt wiele, ponieważ nie widać podłączenia programatora. Jeśli, tak jak mówisz, nie zasilasz w żaden sposób układu, to masz odpowiedź 😉 Zasil układ z baterii, skoro wszystko masz już gotowe. Pamiętaj o połączeniu masy programatora z masą układu.

Okej sprawdzę to zasilanie. Chumanista, możesz mi wytłumaczyć czym jest UART? chodzi o ten sposób podłączania mikrokontrolera do programatora? MISO MOSI itp.?

Dlatego kupiłem z bootloaderem arduino bo je znam i w nim uczyłem się programować mikrokontrolery, jak patrzałem na Eclipse to miałem zawroty głowy. Treker, nie rozumiem czego nie rozumiesz 😃 , coś nie halo w moim pomyśle? JAk dobrze wszystko podłączę to chyba powinno działać czy tak?

Zygzak, czyli to jednak Ty nie rozumiesz. Dobra jeszcze raz:

-> chcesz programować prosto z Arduino BEZ programatora, wykorzystujesz ATmegę z bootloaderem

-> chcesz programować mikrokontroler przez programator, to NIE potrzebujesz bootloadera

Poczytaj o hasłach ISP, UART i bootloader, to będzie Ci łatwiej.

W tej chwili masz dwie opcje:

- podłączyć programator zgodnie z ISP, włączyć zasilanie układu i wgrać program, nie ważne czy ta ATmega ma bootloader, czy go nie ma

- podłączyć mikrokontroler z bootloaderem przez konwerter UART do komputera i wtedy możesz go programować prosto z IDE Arduino, jak normalne Arduino

W całej sytuacji nie rozumiem, po co ci ATmega z bootloaderem skoro używasz zwykłego programatora ISP. Jednak zaryzykuję tezę, że to jednak Ty nie rozróżniasz tych rzeczy i stąd nieporozumienia 😉

Więc ponawiam:

poczytaj o hasłach ISP, UART i bootloader, to będzie Ci łatwiej.

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...