Możemy jednak zaprogramować Atmegę 1284P poprzez programator USB USBasp.
Kosz zakupu nie jest zbyt wielki, można go kupić za około 10 zł.
Programator jest według projektu Thomasa Fischla i opis oraz sterowniki jest dostępny na stronie -> Link

Programator posiada zworki JP1, gdzie ustawiamy napięcie pracy, ustawiamy na 5V oraz JP2, która po zwarciu pozwala zaprogramować układ w samym programatorze.
Czasem po zakupie programator nie jest poprawnie wykrywany w systemie Windows i musimy mu wgrać firmware czyli oprogramowanie Thomasa Fischla.
Możemy do tego celu użyć Arduino Uno.
Ściągamy plik usbasp.2011-05-28.tar.gz ze strony Thomasa Fischla -> Link
Po rozpakowaniu w folderze bin będzie firmware i sterowniki pod Windowsa.
Najpierw wgramy firmware do programatora.
Ściągamy program Arduino i instalujemy -> Link
Sygnały w gnieździe programatora USBasp są jak na zdjęciu niżej, dla mojego egzemplarza ustaliłem, że masa jest na pinie numer 8.

Łączymy piny USBasp według schematu:
VCC - 5V Arduino
GND - GND Arduino
RST - 10 Arduino
MOSI - 11 Arduino
MISO - 12 Arduino
SCK - 13 Arduino
Łączymy piny JP2 zworką, jeżeli nie ma goldpinów, to musimy je dolutować.
Tak przygotowane Arduino Uno podłączamy do komputera.
Uruchamiamy program Arduino wybieramy Uno i odpowiedni port Com

Teraz w Plik -> Przykłady wybieramy ArduinoISP

Programujemy Arduino klikając w strzałkę u góry po lewej stronie.
Zamykamy program Arduino.
We wcześniejszym wpisie -> Link podałem link do programu WinAVR, jeżeli go mamy nie musimy go ściągać. Folder z programem to Winavr.
Wcześniej programowałem na komputerze z Windowsem XP i portem LPT, teraz robię to na Windows 10.
Uruchamiamy wiersz poleceń -> prawy klawisz myszy na okienku po prawej w Windows 10 i wybieramy Uruchom i wpisujemy cmd i klikamy OK.
W wierszu poleceń wpisujemy:
cd C:\winavr\bin
Teraz z wcześniej ściągniętego pliku ze strony Thomasa Fischla kopiujemy plik usbasp.atmega8.2011-05-28.hex z bin\firmware na dysk C do winavr\bin
W wierszu poleceń wpisujemy:
avrdude –C avrdude.conf –c avrisp –P COM9 –b 19200 –p m8 –v
COM9 - jest port na jakim pracuje Arduino UNO.
Jeżeli wszystko będzie dobrze to zobaczymy.

Teraz programujemy Atmegę8 w programatorze poleceniem:
avrdude –C avrdude.conf –c avrisp –P COM9 –b 19200 –p m8 –U flash:w:usbasp.atmega8.2011-05-28.hex

Na końcu zobaczymy.

Odłączamy Arduino Uno, rozłączamy przewody i ściągamy zworkę z JP2.
Teraz możemy programator USBasp podłaczyć do komputera.
Programator powinien zostać wykryty jako USBasp.
Wchodzimy w menadżer urządzeń -> prawy klawisz myszy na okienku na dole po lewej stronie.
Zobaczymy na liście USBasp.

Klikamy prawym klawiszem i wybieramy Aktualizuj sterownik.
Wybieramy Przeglądaj mój komputer...

Podajemy ścieżkę do folderu z wcześniej ściągniętego pliku do bin/win-driver/libusb_0.1.12.1

Klikamy OK i Dalej.
Pojawi się błąd, że brak jest podpisu cyfrowego sterownika.
Na stronie Thomasa Fischla jest link do programu Zadig -> Link
Ściągamy go i uruchamiamy
Wybieramy jak niżej

Klikamy Install driver.
Teraz sterownik powinien być poprawnie zainstalowany.
Ściągamy program SinaProg -> Link
Odłaczamy programator USBasp z komputera.
Podłączamy Atmegę1284P do odpowiednich pinów programatora USBasp, opisane jest we wcześniejszym poście na blogu, czyli MOSI do MOSI itd..
Atmega1284P musi mieć wlutowany kwarc i kondensatory.

Uruchamiamy program Sinaprog, wybieramy Atmega1284P i klikamy Search, strzałką w prawo rozwijamy okienko.

Jak widać wszystko jest dobrze.
Najpierw programujemy FUSE bity, przy Fuses klikamy Advanced.
Ustawiamy jak niżej.

Klikamy write i close.
Teraz programujemy Atmegę 1284P plikiem sd2iec.hex do pobrania tu -> Link
Wybieramy plik i przy Flash klikamy Program.
Rozpocznie się programowanie.

Po zakończeniu odłączamy USBasp i przewody od SD2IEC i mamy gotowy zaprogramowany moduł do Commodore 64.
Brak komentarzy:
Prześlij komentarz