Cum se configurează mediul de programare AVR pe Linux: 5 pași
Cum se configurează mediul de programare AVR pe Linux: 5 pași
Anonim
Cum se configurează mediul de programare AVR pe Linux
Cum se configurează mediul de programare AVR pe Linux

Dacă doriți să programați microcontrolere AVR pe Windows aveți un Studio, dar pe Linux tot ce avem este un tip.

AVRDUDE este interfața liniei de comandă pentru programarea cipurilor AVR, poate fi un pic dificil de configurat la început. În acest instructabil, voi configura AVRDUDE și voi crea și un mediu de programare AVR pentru terminalul Linux.

Mai întâi voi instala toate AVRDUDE și toate dependențele necesare, apoi voi crea un script BASH care vă va ajuta în programare

Pasul 1: Obținerea compilatorului și a altor instrumente

În altele pentru a programa cipuri AVR, aveți nevoie de un compilator special cunoscut sub numele de gcc-avr și alte instrumente precum binutils-avr, avr-libc, gdb-avr, dar nu în ultimul rând avrdude.

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

Pasul 2: Crearea unui șablon

Crearea unui șablon
Crearea unui șablon

Dacă deschideți o schiță nouă în arduino, veți obține un șablon de cod care conține două funcții, astfel veți economisi mult timp.

AVRDUDE folosește C și poate fi puțin deranjant să creezi întotdeauna o metodă principală de fiecare dată când vrei să codezi, așa că voi crea un șablon AVR.

atingeți ~ / Șabloane / AVR.c

Utilizați comanda tactilă pentru a crea un fișier gol în folderul Șabloane.

vi ~ / Șabloane / AVR.c

deschideți fișierul cu editorul de text preferat, folosesc vi.

#define F_CPU 16000000L

#include #include int main () {while () {} returnează 0; }

Tastați codul de mai sus și salvați fișierul. Acest cod va servi drept șablon.

Notă: mi-am setat frecvența ceasului ca fiind 16000000, puteți seta ca orice altă frecvență poate 8000000.

Pasul 3: Creați un fișier nou

Acum avem un șablon pentru codurile noastre AVR, tot ce trebuie să facem este să creăm un fișier nou. Voi crea o comandă bash care va include un argument (numele fișierului), apoi voi crea acel fișier având șablonul AVR.

să facem un fișier gol numit „creați”

atingeți creați

modificați permisiunea fișierului, deoarece acesta va fi un script BASH

chmod 755 create

Deschideți „creați” cu editorul de text. Acum să edităm „creați”, adăugați următoarele comenzi linie cu linie.

#! / bin / bash

Aceasta este calea către interpretul pentru „creați”, care este bash.

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

Aceasta copiază fișierul nostru șablon în directorul principal al utilizatorilor.

mv ~ / AVR.c $ 1

Amintiți-vă că am spus că „creați” acceptă un argument, $ 1 înseamnă primul argument al comenzii noastre, acest argument este numele fișierului intenționat, ultimul lucru pe care îl dorim este mai multe fișiere cu același nume de fișier. Comanda redenumește numele fișierului în argumentul nostru.

vi $ 1

Acest lucru este opțional, dar va fi bine să ne deschidem fișierul, imediat după ce l-am creat.

Am terminat cu editarea creați, salvați-o și închideți-o.

Iată un exemplu de creare în acțiune.

./ creați clipirea.c

Acest lucru creează un fișier cunoscut sub numele de blink.c, acest fișier ar trebui să aibă șablonul AVR.c.

Pasul 4: Hai să alergăm

Trebuie să creăm un alt script bash cunoscut sub numele de "rulați", acest script va lua 3 argumente (microcontrolerul avr pe care îl folosim, numele fișierului și programatorul)

Să o luăm rând cu rând.

#! / bin / bash

shebang-ul nostru

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

Comanda de mai sus ne completează codul, „$ 1” este primul nostru argument, care este microcontrolerul pe care îl programăm. $ 2 este al doilea argument al nostru, care este numele fișierului.

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

Acest lucru convertește fișierul nostru conform în hex.

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

Acum avrdude arde codul în cipul AVR. 3 $ este al treilea argument al nostru, care este programatorul pe care îl folosim.

Salvați fișierul „rulați”

dă-i permisiunea de executare

chmod 755 run

Acum să-l testăm. Să presupunem că vrem să încărcăm blink.c și folosim direct o placă arduino, folosim și un programator usbasp. Acesta este modul în care folosim scriptul „run”.

./run atmega328p clipește USBasp

Placa arduino are un cip atmega328p, puteți utiliza orice microcontroler AVR la alegere.

Al doilea argument este numele fișierului dvs., dar de această dată nu adăugați extensia de fișier pe care scriptul o gestionează.

Apoi avem al treilea argument, care este programatorul pe care îl utilizați, eu folosesc un programator USBasp.

Pasul 5: Concluzie

Aceasta este o modalitate excelentă de a vă automatiza experiența de programare avr, puteți muta fișierele bash „creați” și „rulați” în „~ /.local / bin”, astfel încât să puteți utiliza scripturile din orice director de fișiere la alegere.

Recomandat: