Spisu treści:

Jak skonfigurować środowisko programistyczne AVR w systemie Linux: 5 kroków
Jak skonfigurować środowisko programistyczne AVR w systemie Linux: 5 kroków

Wideo: Jak skonfigurować środowisko programistyczne AVR w systemie Linux: 5 kroków

Wideo: Jak skonfigurować środowisko programistyczne AVR w systemie Linux: 5 kroków
Wideo: Programowanie mikrokontrolerów AVR w MPLAB IDE 2024, Listopad
Anonim
Jak skonfigurować środowisko programistyczne AVR w systemie Linux
Jak skonfigurować środowisko programistyczne AVR w systemie Linux

Jeśli chcesz programować mikrokontrolery AVR na Windowsie, masz Studio, ale na Linuksie wszystko, co mamy, to Koleś.

AVRDUDE to interfejs wiersza poleceń do programowania układów AVR, na początku może być trochę trudny do skonfigurowania. W tej instrukcji będę konfigurować AVRDUDE, a także tworzyć środowisko programistyczne AVR dla terminala Linux.

Najpierw zainstaluję wszystkie AVRDUDE i wszystkie wymagane zależności, a następnie stworzę skrypt BASH, który pomoże w programowaniu

Krok 1: Zdobycie kompilatora i innych narzędzi

W innych do programowania układów AVR potrzebny jest specjalny kompilator znany jako gcc-avr i inne narzędzia, takie jak binutils-avr, avr-libc, gdb-avr last, ale nie najmniejsza avrdude.

sudo apt-get zainstaluj gcc-avr binutils-avr avr-libc gdb-avr avrdude

Krok 2: Tworzenie szablonu

Tworzenie szablonu
Tworzenie szablonu

Jeśli otworzysz nowy szkic w arduino, otrzymasz szablon kodu, który zawiera dwie funkcje, oszczędza to dużo czasu.

AVRDUDE używa C i może być trochę denerwujące, aby zawsze tworzyć główną metodę za każdym razem, gdy chcesz kodować, więc stworzę szablon AVR.

dotknij ~/Szablony/AVR.c

Użyj polecenia dotykowego, aby utworzyć pusty plik w folderze Szablony.

vi ~/Szablony/AVR.c

otwórz plik w swoim ulubionym edytorze tekstu, używam vi.

#zdefiniuj F_CPU 16000000L

#include #include int main(){ while(){ } return 0; }

Wpisz powyższy kod i zapisz plik. Ten kod będzie służył jako nasz szablon.

Uwaga: ustawiłem częstotliwość zegara na 16000000, możesz ustawić swoją jako dowolną inną, może 8000000.

Krok 3: Utwórz nowy plik

Teraz mamy szablon dla naszych kodów AVR, wystarczy, że stworzymy nowy plik. Będę tworzyć polecenie bash, które przyjmie jeden argument (nazwę pliku), a następnie utworzę ten plik z szablonem AVR.

stwórzmy pusty plik o nazwie "create"

dotknij tworzyć

zmień uprawnienia do pliku, ponieważ będzie to skrypt BASH

chmod 755 utwórz

Otwórz "utwórz" za pomocą edytora tekstu. Teraz edytujmy "utwórz", dodajmy następujące polecenia wiersz po wierszu.

#!/kosz/bash

To jest ścieżka do interpretera dla "tworzenia", którym jest bash.

cp ~/Szablony/AVR.c /home/$USER

To kopiuje nasz plik szablonu do katalogu domowego użytkowników.

mv ~/AVR.c $1

Pamiętaj, że powiedziałem, że "create" przyjmuje jeden argument, $1 oznacza pierwszy argument naszego polecenia, ten argument jest zamierzoną nazwą pliku, ostatnią rzeczą, jakiej chcemy, jest wiele plików o tej samej nazwie. Polecenie zmienia nazwę pliku na nasz argument.

vi $1

Jest to opcjonalne, ale fajnie będzie otworzyć nasz plik zaraz po jego utworzeniu.

Skończyliśmy z edycją utwórz, zapisz i zamknij.

Oto przykład tworzenia w akcji.

./utwórz blink.c

Tworzy to plik znany jako blink.c, ten plik powinien mieć szablon AVR.c.

Krok 4: Biegnijmy

Musimy stworzyć kolejny skrypt bash znany jako "run", ten skrypt będzie pobierał 3 argumenty (używany przez nas mikrokontroler avr, nazwa pliku i programator)

Weźmy to linijka po linijce.

#!/kosz/bash

nasz seks

avr-gcc -Ściana -g -0s -mmcu=$1 -o $2.bin $2.c

Powyższe polecenie kompiluje nasz kod, '$1' jest naszym pierwszym argumentem, którym jest programowany mikrokontroler. $2 to nasz drugi argument, którym jest nazwa pliku.

avr-objcopy -j.text -j.data -O ihex $2.bin $2.hex

To konwertuje nasz skompilowany plik na szesnastkowy.

avrdude -p $1 -c $3 -U flash:w:$2.hex -P usb

Teraz avrdude wypala kod w chipie AVR. 3 $ to nasz trzeci argument, którym jest programista, którego używamy.

Zapisz plik "uruchom"

daj mu uprawnienia do wykonywania

chmod 755 run

Teraz przetestujmy to. Powiedzmy, że chcemy wgrać blink.c i używamy bezpośrednio płyty arduino, używamy też programatora usbasp. W ten sposób używamy skryptu "run".

./run atmega328p miga USBasp

Płytka arduino ma układ atmega328p, możesz użyć dowolnego wybranego mikrokontrolera AVR.

Drugim argumentem jest nazwa pliku, ale tym razem nie dodawaj rozszerzenia pliku obsługiwanego przez skrypt.

Następnie mamy trzeci argument, którym jest programator, którego używasz, używam programatora USBasp.

Krok 5: Wniosek

Jest to świetny sposób na zautomatyzowanie twojego programowania avr, możesz przenieść pliki bash "create" i "run" do "~/.local/bin", dzięki czemu możesz używać skryptów z dowolnego wybranego katalogu plików.

Zalecana: