poniedziałek, 20 grudnia 2021

Atmega328p - Programowanie z Atmel Studio 7 z USBAsp Windows 10

Chciałbym tutaj opisać sposób programowania mikrokontrolera Atmega328p z programu Atmel Studio 7 z wykorzystaniem programatora USBAsp.

[Źródło: https://kamami.pl/programatory-avr/562188-usbasp-programator-isp-dla-mikrokontrolerow-avr.html]

Na samym początku należy zainstalować odpowiednie sterowniki dla programatora. Tutaj najprostszym sposobem jest wykorzystanie programu Zadig.


Należy zainstalować sterownik o nazwie libusbK. W systemie po poprawnej instalacji programator będzie widoczny w następujący sposób:


Dalej należy pobrać avrdude i umieścić go np. na dysku C. 


Podłączenie należy wykonać zgodnie z tym rysunkiem:


Teraz przejdę już do konfiguracji programatora w programie Atmel Studio 7. Tutaj należy dodać zewnętrzny programator w zakładce Tools -> External Tools:


Podajemy następujące parametry:

  • Title - dowolna nazwa dołączanego narzędzia,
  • Command - ścieżkę do programatora avrdude, który został wypakowany w domyślnej lokalizacji,
  • Arguments - komendę dla programatora:
 -c usbasp -p m328p -P usb -U flash:w:"$(OutDir)Debug\$(TargetName).hex"
  • Initial directory - Lokalizacja plików z projektem w którym znajduje się folder debug oraz plik hex.

Warto zaznaczyć opcję Use Output Window w celu obserwacji czy nie pojawią się żadne błędny podczas wgrywania.

Argumenty dla programatora avrdude są następujące:

  • -c usbasp - który programator będzie używany,
  • -p m328p - nazwa mikrokontrolera który będzie obsługiwany z tego narzędzia. Listę mikrokontrolerów można pobrać z dokumentacji. 
  • -P usb - podłączone do portu USB
  • -U - flash:w: "$(OutDir)Debug\$(TargetName).hex" - zapis danych do pamięci flash. Lokalizacja pliku hex z wygenerowanym projektem (TargetName). Pierwszym argumentem jest folder Debug z lokalizacją pliku.

Dokładne informacje o avrdude można pobrać pod tym linkiem z z pliku PDF. 

Po kliknięciu na dodane narzędzie nastąpi wgranie programu do urządzenia:


Dodatkowe: