Taula de continguts:

Com configurar l'entorn de programació AVR a Linux: 5 passos
Com configurar l'entorn de programació AVR a Linux: 5 passos

Vídeo: Com configurar l'entorn de programació AVR a Linux: 5 passos

Vídeo: Com configurar l'entorn de programació AVR a Linux: 5 passos
Vídeo: Marlin Firmware 2.0.x Explained 2024, De novembre
Anonim
Com configurar l'entorn de programació AVR a Linux
Com configurar l'entorn de programació AVR a Linux

Si voleu programar microcontroladors AVR al Windows, teniu un Studio, però a Linux tot el que tenim és un amic.

AVRDUDE és la interfície de línia d’ordres per programar xips AVR, al principi pot ser una mica difícil de configurar. En aquest manual, configuraré AVRDUDE i també crearé un entorn de programació AVR per al terminal Linux.

Primer instal·laré totes les AVRDUDE i totes les dependències necessàries i després crearé un script BASH que us ajudarà a programar

Pas 1: Obtenir el compilador i altres eines

En altres programes de xips AVR, necessiteu un compilador especial conegut com gcc-avr i altres eines com binutils-avr, avr-libc, gdb-avr, però no menys important, avrdude.

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

Pas 2: crear una plantilla

Creació d’una plantilla
Creació d’una plantilla

Si obriu un nou esbós a arduino, obteniu una plantilla de codi que conté dues funcions, cosa que us estalvia molt de temps.

AVRDUDE utilitza C i pot ser una mica molest crear sempre un mètode principal cada vegada que vulgueu codificar, així que crearé una plantilla AVR.

toca ~ / Plantilles / AVR.c

Utilitzeu l'ordre tàctil per crear un fitxer buit a la carpeta Plantilles.

vi ~ / Templates / AVR.c

obriu el fitxer amb el vostre editor de text preferit, estic fent servir vi.

#define F_CPU 16000000L

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

Escriviu el codi anterior i deseu el fitxer. Aquest codi servirà com a plantilla.

Nota: He establert la meva freqüència de rellotge com a 16000000, podeu definir la vostra com qualsevol altra freqüència potser 8000000.

Pas 3: creeu un fitxer nou

Ara tenim una plantilla per als nostres codis AVR, tot el que hem de fer és crear un fitxer nou. Crearé una ordre bash que inclourà un argument (el nom del fitxer) i després crearé aquest fitxer amb la plantilla AVR.

fem un fitxer buit anomenat "crear"

tocar crear

canvieu el permís del fitxer perquè serà un script BASH

chmod 755 create

Obriu "crea" amb l'editor de text. Ara editem "create", afegim les ordres següents línia per línia.

#! / bin / bash

Aquest és el camí cap a l'intèrpret de "create" que és bash.

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

Això copia el nostre fitxer de plantilla al directori inicial dels usuaris.

mv ~ / AVR.c $ 1

Recordeu que he dit que "crear" inclou un argument, $ 1 significa que el primer argument de la nostra comanda és que el nom del fitxer és l'últim que volem: diversos fitxers que tinguin el mateix nom de fitxer. L’ordre canvia el nom del fitxer pel nostre argument.

vi $ 1

Això és opcional, però estarà bé obrir el nostre fitxer immediatament després de crear-lo.

Hem acabat amb l’edició de crear, desar-la i tancar-la.

Aquí teniu un exemple de creació en acció.

./creeu parpelleig.c

Això crea un fitxer conegut com blink.c, que hauria de tenir la plantilla de AVR.c.

Pas 4: anem a córrer

Hem de crear un altre script bash conegut com a "executar", aquest script agafarà 3 arguments (el microcontrolador avr que estem utilitzant, el nom del fitxer i el programador)

Prenem-ho línia per línia.

#! / bin / bash

el nostre shebang

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

L'ordre anterior compleix el nostre codi, '$ 1' és el nostre primer argument que és el microcontrolador que estem programant. $ 2 és el nostre segon argument que és el nom del fitxer.

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

Això converteix el nostre fitxer complert en hexadecimal.

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

Ara avrdude crema el codi al xip AVR. $ 3 és el nostre tercer argument, que és el programador que estem utilitzant.

Deseu el fitxer "executa"

donar-li permís d'execució

chmod 755 run

Ara ho provem. Diguem que volem carregar blink.c i que fem servir una placa arduino directament, també fem servir un programador usbasp. Així fem servir l'script "executar".

./executar atmega328p parpelleja USBasp

La placa arduino té un xip atmega328p, podeu utilitzar qualsevol microcontrolador AVR que trieu.

El segon argument és el vostre nom de fitxer, però aquesta vegada no afegiu l'extensió de fitxer que gestiona l'script.

Aleshores tenim el tercer argument que és el programador que utilitzeu, estic fent servir un programador USBasp.

Pas 5: Conclusió

Aquesta és una gran manera d’automatitzar la vostra experiència de programació avr, podeu moure els fitxers bash "create" i "run" a "~ /.local / bin" perquè pugueu utilitzar els scripts de qualsevol directori de fitxers que trieu.

Recomanat: