Sommario:

Come configurare l'ambiente di programmazione AVR su Linux: 5 passaggi
Come configurare l'ambiente di programmazione AVR su Linux: 5 passaggi

Video: Come configurare l'ambiente di programmazione AVR su Linux: 5 passaggi

Video: Come configurare l'ambiente di programmazione AVR su Linux: 5 passaggi
Video: CREARE un SERVER WEB con GNU/LINUX (Apache/MySQL/PHP) 2024, Novembre
Anonim
Come configurare l'ambiente di programmazione AVR su Linux
Come configurare l'ambiente di programmazione AVR su Linux

Se vuoi programmare microcontrollori AVR su Windows hai uno Studio ma su Linux abbiamo solo un Dude.

AVRDUDE è l'interfaccia della riga di comando per programmare i chip AVR, all'inizio può essere un po' difficile da configurare. In questo Instructable, configurerò AVRDUDE e creerò anche un ambiente di programmazione AVR per il terminale Linux.

Per prima cosa installerò tutto AVRDUDE e tutte le dipendenze richieste, quindi creerò uno script BASH che aiuterà nella programmazione

Passaggio 1: ottenere il compilatore e altri strumenti

In altri per programmare i chip AVR è necessario un compilatore speciale noto come gcc-avr e altri strumenti come binutils-avr, avr-libc, gdb-avr ultimo ma non meno importante avrdude.

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

Passaggio 2: creazione di un modello

Creazione di un modello
Creazione di un modello

Se apri un nuovo schizzo in arduino ottieni un modello di codice che contiene due funzioni, questo ti fa risparmiare molto tempo.

AVRDUDE utilizza C e può essere un po' fastidioso creare sempre un metodo principale ogni volta che si desidera codificare, quindi creerò un modello AVR.

tocca ~/Modelli/AVR.c

Utilizzare il comando touch per creare un file vuoto nella cartella Modelli.

vi ~/Templates/AVR.c

apri il file con il tuo editor di testo preferito, sto usando vi.

#define F_CPU 16000000L

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

Digita il codice sopra e salva il file. Questo codice servirà come nostro modello.

Nota: ho impostato la mia frequenza di clock come 16000000, puoi impostare la tua come qualsiasi altra frequenza forse 8000000.

Passaggio 3: crea un nuovo file

Ora abbiamo un modello per i nostri codici AVR, tutto ciò che dobbiamo fare è creare un nuovo file. Creerò un comando bash che prenderà un argomento (il nome del file), quindi creerò quel file con il modello AVR.

creiamo un file vuoto chiamato "crea"

toccare creare

cambia il permesso del file perché questo sarà uno script BASH

chmod 755 crea

Apri "crea" con il tuo editor di testo. Ora modifichiamo "crea", aggiungiamo i seguenti comandi riga per riga.

#!/bin/bash

Questo è il percorso per l'interprete per "creare" che è bash.

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

Questo copia il nostro file modello nella directory home degli utenti.

mv ~/AVR.c $1

Ricorda che ho detto che "crea" accetta un argomento, $ 1 significa che il primo argomento del nostro comando questo argomento è il nome del file previsto, l'ultima cosa che vogliamo sono più file con lo stesso nome file. Il comando rinomina il nome del file con il nostro argomento.

vi $1

Questo è facoltativo ma sarà bello aprire il nostro file, subito dopo averlo creato.

Abbiamo finito con la modifica, crealo, salvalo e chiudilo.

Ecco un esempio di creazione in azione.

./crea lampeggio.c

Questo crea un file noto come blink.c, questo file dovrebbe avere il modello di AVR.c.

Passaggio 4: corriamo

Dobbiamo creare un altro script bash noto come "run", questo script prenderà 3 argomenti (il microcontrollore avr che stiamo usando, il nome del file e il programmatore)

Prendiamolo riga per riga.

#!/bin/bash

il nostro shebang

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

Il comando sopra compila il nostro codice, '$1' è il nostro primo argomento che è il microcontrollore che stiamo programmando. $2 è il nostro secondo argomento che è il nome del file.

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

Questo converte il nostro file compilato in esadecimale.

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

Ora Avrdude masterizza il codice nel chip AVR. $3 è il nostro terzo argomento che è il programmatore che stiamo usando.

Salva il file "esegui"

dagli il permesso di esecuzione

chmod 755 eseguito

Ora proviamolo. Diciamo che vogliamo caricare blink.c e stiamo usando direttamente una scheda arduino, stiamo anche usando un programmatore usbasp. Questo è il modo in cui usiamo lo script "run".

./run atmega328p lampeggio USBasp

La scheda arduino ha un chip atmega328p, puoi usare qualsiasi microcontrollore AVR di tua scelta.

Il secondo argomento è il nome del file, ma questa volta non aggiungere l'estensione del file gestita dallo script.

Quindi abbiamo il terzo argomento che è il programmatore che stai utilizzando, sto usando un programmatore USBasp.

Passaggio 5: conclusione

Questo è un ottimo modo per automatizzare la tua esperienza di programmazione avr, puoi spostare i file bash "crea" ed "esegui" su "~/.local/bin" in modo da poter utilizzare gli script da qualsiasi directory di file di tua scelta.

Consigliato: