1. Wgrywamy ArduinoISP na Arduino
2. Szukamy w katalogu Arduino plików avrdude.exe i avrdude.conf następnie kopiujemy je np. do folderu na pulpicie
3. Uruchamiamy wiersz poleceń cmd i komendą "cd" przechodzimy do folderu do którego skopiowaliśmy pliki z poprzedniego punktu. U mnie to polecenie wygląda tak: "cd C:\Users\Ja\Desktop\avrdude"
4. Wpisujemy "avrdude -c avrisp" i z listy, która się pokaże wybieramy nazwę uC najbardziej zbliżoną do naszego, u mnie "atmega168p"
5. Wpisujemy "avrdude -p atmega168p -c AVRisp -P com3 -b 19200 -U lfuse:r:-:h -U hfuse:r:-:h"
(pamiętajcie zmienić w poleceniu nazwę uC i numer portu com). Wynikiem tego polecenia powinno być coś takiego:
Kod: Zaznacz cały
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.07s
avrdude: Device signature = 0x1e940b
avrdude: reading lfuse memory:
Reading | ################################################## | 100% 0.02s
avrdude: writing output file "<stdout>"
0xff
avrdude: reading hfuse memory:
Reading | ################################################## | 100% 0.02s
avrdude: writing output file "<stdout>"
0xdf
avrdude: safemode: Fuses OK
avrdude done. Thank you.
Kod: Zaznacz cały
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.09s
avrdude: Device signature = 0x1e940b
avrdude: Expected signature for ATMEGA168 is 1E 94 06
Double check chip, or use -F to override this check.
avrdude done. Thank you.
7. Teraz możemy już wgrać plik hex, który najlepiej umieścić obok pliku avrdude.exe, unikniemy wtedy wpisywania całej ścieżki do tego pliku, wystarczy sama nazwa, "avrdude -p atmega168p -c AVRisp -P com3 -b 19200 -U flash:w:Blink.hex"
Arduino IDE jest tak naprawdę nakładką na program avrdude, kod który piszemy jest kompilowany i zapisywany na dysku w formie pliku hex i w tej formie wysyłany do uC. Jeśli chcecie przetestować ten tutorial polecam zaopatrzyć się w plik Blink.cpp.hex. Aby go stworzyć należy uruchomić Arduino IDE, wczytać program Blink, wybrać z listy uC który będziemy programować i kliknąć Verify. Po kompilacji wystarczy poszukać na dysku pliku Blink.cpp.hex i przenieść do folderu z avrdude.
Jeśli ktoś już ma programator USBasp to powyższe komendy dla tego programatora będą wyglądać tak:
avrdude -p atmega168p -c usbasp -U lfuse:r:-:h -U hfuse:r:-:h
avrdude -p atmega168p -c usbasp -U lfuse:w:0x62:m -U hfuse:w:0xdf:m
avrdude -p atmega168p -c usbasp -U flash:w:Blink.hex