Table des matières:

Comment configurer l'environnement de programmation AVR sur Linux : 5 étapes
Comment configurer l'environnement de programmation AVR sur Linux : 5 étapes

Vidéo: Comment configurer l'environnement de programmation AVR sur Linux : 5 étapes

Vidéo: Comment configurer l'environnement de programmation AVR sur Linux : 5 étapes
Vidéo: Les BASES de Linux : tuto débutant en français [ présentation avec Ubuntu ] 2024, Novembre
Anonim
Comment configurer l'environnement de programmation AVR sur Linux
Comment configurer l'environnement de programmation AVR sur Linux

Si vous voulez programmer des microcontrôleurs AVR sur Windows, vous avez un Studio, mais sur Linux, tout ce que nous avons est un Dude.

AVRDUDE est l'interface de ligne de commande pour programmer les puces AVR, il peut être un peu difficile à configurer au début. Dans ce Instructable, je vais configurer AVRDUDE et créer également un environnement de programmation AVR pour le terminal Linux.

Tout d'abord, je vais installer tous les AVRDUDE et toutes les dépendances requises, puis je vais créer un script BASH qui aidera à la programmation

Étape 1: Obtenir votre compilateur et d'autres outils

Dans d'autres, pour programmer les puces AVR, vous avez besoin d'un compilateur spécial appelé gcc-avr et d'autres outils comme binutils-avr, avr-libc, gdb-avr last but not least avrdude.

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

Étape 2: Création d'un modèle

Création d'un modèle
Création d'un modèle

Si vous ouvrez une nouvelle esquisse dans arduino, vous obtenez un modèle de code qui contient deux fonctions, cela vous fait gagner beaucoup de temps.

AVRDUDE utilise C et il peut être un peu ennuyeux de toujours créer une méthode principale à chaque fois que vous souhaitez coder, je vais donc créer un modèle AVR.

touchez ~/Modèles/AVR.c

Utilisez la commande tactile pour créer un fichier vide dans le dossier Modèles.

vi ~/Modèles/AVR.c

ouvrez le fichier avec votre éditeur de texte préféré, j'utilise vi.

#define F_CPU 16000000L

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

Tapez le code ci-dessus et enregistrez le fichier. Ce code servira de modèle.

Remarque: j'ai défini ma fréquence d'horloge sur 16000000, vous pouvez définir la vôtre comme n'importe quelle autre fréquence, peut-être à 8000000.

Étape 3: Créez un nouveau fichier

Maintenant que nous avons un modèle pour nos codes AVR, il ne nous reste plus qu'à créer un nouveau fichier. Je vais créer une commande bash qui prendra un argument (le nom du fichier), puis créerai ce fichier avec le modèle AVR.

créons un fichier vide appelé "créer"

toucher créer

modifier l'autorisation du fichier car ce sera un script BASH

chmod 755 créer

Ouvrez "créer" avec votre éditeur de texte. Maintenant, éditons "créer", ajoutons les commandes suivantes ligne par ligne.

#!/bin/bash

C'est le chemin vers l'interpréteur pour "create" qui est bash.

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

Cela copie notre fichier modèle dans le répertoire de base des utilisateurs.

mv ~/AVR.c $1

Rappelez-vous que j'ai dit que "create" prend un argument, $1 signifie que le premier argument de notre commande cet argument est le nom de fichier prévu, la dernière chose que nous voulons, ce sont plusieurs fichiers ayant le même nom de fichier. La commande renomme le nom de fichier en notre argument.

1 $

C'est facultatif mais ce sera bien d'ouvrir notre fichier, immédiatement après l'avoir créé.

Nous avons terminé avec l'édition, créez-le, enregistrez-le et fermez-le.

Voici un exemple de création en action.

./create blink.c

Cela crée un fichier appelé blink.c, ce fichier doit avoir le modèle AVR.c.

Étape 4: Courons

Nous devons créer un autre script bash appelé "run", ce script prendra 3 arguments (le microcontrôleur avr que nous utilisons, le nom de fichier et le programmeur)

Prenons-le ligne par ligne.

#!/bin/bash

notre shebang

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

La commande ci-dessus compile notre code, '$1' est notre premier argument qui est le microcontrôleur que nous programmons. $2 est notre deuxième argument qui est le nom du fichier.

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

Cela convertit notre fichier conforme en hexadécimal.

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

Maintenant, avrdude grave le code dans la puce AVR. $3 est notre 3ème argument qui est le programmeur que nous utilisons.

Enregistrez le fichier "exécuter"

donnez-lui l'autorisation d'exécution

chmod 755 exécuter

Maintenant, testons-le. Disons que nous voulons télécharger blink.c et que nous utilisons directement une carte arduino, nous utilisons également un programmeur usbasp. C'est ainsi que nous utilisons le script "run".

./run atmega328p clignoter USBasp

La carte arduino a une puce atmega328p, vous pouvez utiliser n'importe quel microcontrôleur AVR de votre choix.

Le deuxième argument est votre nom de fichier, mais cette fois, n'ajoutez pas l'extension de fichier que le script gère.

Ensuite, nous avons le troisième argument qui est le programmeur que vous utilisez, j'utilise un programmeur USBasp.

Étape 5: Conclusion

C'est un excellent moyen d'automatiser votre expérience de programmation avr, vous pouvez déplacer les fichiers bash "create" et "run" vers "~/.local/bin" afin que vous puissiez utiliser les scripts de n'importe quel répertoire de fichiers de votre choix.

Conseillé: