Outils pour utilisateurs

Outils du site


computing:embedded:creation_d_un_projet_c_pour_les_avr

Différences

Cette page vous affiche les différences entre la révision choisie et la version actuelle de la page.

Lien vers cette vue comparative

computing:embedded:creation_d_un_projet_c_pour_les_avr [2014/10/29 14:01]
ldo
computing:embedded:creation_d_un_projet_c_pour_les_avr [2014/10/30 10:29] (Version actuelle)
ldo [Programmation AVR]
Ligne 1: Ligne 1:
 Cet article va présenter comment créer un projet C pour les AVR sous Eclipse. Cet article va présenter comment créer un projet C pour les AVR sous Eclipse.
  
-=== Création du projet ===+==== Création du projet ​====
 Pour commencer, nous allons créer un projet C. Pour commencer, nous allons créer un projet C.
 File -> New -> C Project File -> New -> C Project
Ligne 21: Ligne 21:
 Cliquer sur Finish et le projet est créé. Cliquer sur Finish et le projet est créé.
  
-=== Création de répertoires ===+==== Création de répertoires ​====
  
-== Création du répertoire source ==+=== Création du répertoire source ​===
 Pour plus de clarté, nous allons créer un répertoire src qui va contenir tous les fichiers .c du projet. Pour plus de clarté, nous allons créer un répertoire src qui va contenir tous les fichiers .c du projet.
 \\ File -> New -> Source Folder (ou clic gauche sur le projet puis New -> Source Folder) \\ File -> New -> Source Folder (ou clic gauche sur le projet puis New -> Source Folder)
Ligne 31: Ligne 31:
 \\ New -> Source File \\ New -> Source File
  
-== Création du répertoire include ==+=== Création du répertoire include ​===
 Nous allons maintenant créer un répertoire include qui va contenir tous les fichiers .h du projet. Nous allons maintenant créer un répertoire include qui va contenir tous les fichiers .h du projet.
 \\ File -> New -> Folder \\ File -> New -> Folder
Ligne 39: Ligne 39:
 \\ New -> Header File \\ New -> Header File
  
-== Variable d’environnement Path ==+=== Variable d’environnement Path ===
 Il faut maintenant indiquer au projet où aller chercher les fichiers .c et .h. Pour les fichiers .c, cela est fait automatiquement à la création du répertoire source. Pour le répertoire include, il faut l'​ajouter à la variable d'​environnement Path : Il faut maintenant indiquer au projet où aller chercher les fichiers .c et .h. Pour les fichiers .c, cela est fait automatiquement à la création du répertoire source. Pour le répertoire include, il faut l'​ajouter à la variable d'​environnement Path :
 \\ Properties -> C/C++ General -> Paths and Symbols \\ Properties -> C/C++ General -> Paths and Symbols
Ligne 61: Ligne 61:
 \\ Cliquer sur Finish et la librairie est créée. \\ Cliquer sur Finish et la librairie est créée.
  
 +==== Inclusion d'une librairie dans un projet ====
 +Nous allons maintenant expliquer comment inclure une librairie dans un projet.
 +
 +=== Exemple ===
 +Nous avons créer une librairie test_library avec deux fichiers lib_a.c et lib_a.h. ​
 +
 +<code c>
 +/*
 + * lib_a.c
 + */
 +
 +void
 +function_lib_a(void)
 +{
 +
 +}
 +</​code>​
 +
 +<code c>
 +/*
 + * lib_a.h
 + */
 +
 +#ifndef LIB_A_H_
 +#define LIB_A_H_
 +
 +void
 +function_lib_a(void);​
 +
 +#endif /* LIB_A_H_ */
 +</​code>​
 +
 +Notre projet test a besoin de cette librairie, il faut donc inclure lib_a.h :
 +<code c>
 +/*
 + * main.c
 + */
 +
 +#include <​lib_a.h>​
 +
 +int
 +main (void)
 +{
 +  function_lib_a ();
 +
 +  return 1;
 +}
 +</​code>​
 +
 +=== Ajout de la librairie ===
 +Pour que le makefile trouve cette librairie lors de la compilation,​ il faut :
 +  * ajouter le répertoire contenant header dans la variable d'​environnement Path :
 +\\ Properties -> C/C++ General -> Paths and Symbols
 +\\ Dans l'​onglet Includes : Cliquer sur Add... puis sur Workspace
 +\\ Sélectionner test_library -> include
 +\\ et valider.
 +
 +{{:​computing:​embedded:​path_library.png?​400|}}
 +
 +  * indiquer le nom de la librairie
 +\\ Properties -> C/C++ Build -> Setting
 +\\ Dans l'​onglet Tools settings : AVR C Linker -> Libraries
 +\\ Dans la zone Libraries (-l) : Cliquer sur Add et entrer test_library
 +
 +  * indiquer le chemin où trouver la librairie
 +\\ Dans la zone Libraries Path (-L) : Cliquer sur Add... puis sur Workspace
 +\\ Sélectionner test_library -> Debug (ou Release)
 +\\ et valider.
 +
 +{{:​computing:​embedded:​setting_lib.png?​400|}}
 +
 +==== Compilation ====
 +Pour compiler
 +clic droit sur le projet : Build configurations -> Set Active
 +\\ sélectionner Release
 +
 +==== Programmation AVR ====
 +clic droit sur le projet : Properties
 +=== Sélection du microcontrôleur ===
 +Normalement,​ lors de la création du projet, nous avons déjà sélectionner le microcontrôleur et la fréquence de l'​horloge. En cas de modification : AVR -> Target Hardware : Sélectionner le microcontrôleur et la fréquence de l'​horloge.
 +
 +=== Sélection du programmateur ===
 +Dans le cas des ARDUINO, le microcontrolleur intègre un bootloader qui permet de les programmer directement (sans programmateur externe).
 +\\ AVR -> AVRDude. Dans l'​onglet Programmer, cliquer sur New dans la zone Programmer configuration.
 +  * Donner un nom à la configuration
 +  * Sélectionner le type de programmateur : programmer Hardware (-c)
 +  * Sélectionner le port USB : Override Default Port (-P)
 +  * Sélectionner la vitesse de programmation : Override Default baudrate (-b)
 +  * Sélectionner les autres options : Other options
 +== ARDUINO MEGA ==
 +  * nom : ARDUINO MEGA
 +  * programmer Hardware : Atmel STK500 V2.x firmware
 +  * Override Default Port : /​dev/​ttyACM0
 +  * Override Default baudrate : 115200
 +  * Other options : -D
 +
 +{{:​computing:​embedded:​conf_mega.png?​400|}}
 +
 +== ARDUINO UNO ==
 +  * nom : ARDUINO UNO
 +  * programmer Hardware : Arduino
 +  * Override Default Port : /​dev/​ttyACM0
 +  * Override Default baudrate : 115200
 +
 +== ARDUINO ROMEO ou LEONARDO ==
 +  * nom : ARDUINO ROMEO
 +  * programmer Hardware : Atmel AppNote AVR109 Bootloader
 +  * Override Default Port : /​dev/​ttyACM0
 +  * Override Default baudrate : 57600
 +
 +=== Programmation ===
 +Clic droit AVR -> Upload Project to Target Device
 +\\ La programmation prend quelques secondes en fonction de la taille du programme à télécharger.
 +Un message indique dans la console que la programmation s'est bien déroulée.
computing/embedded/creation_d_un_projet_c_pour_les_avr.1414587697.txt.gz · Dernière modification: 2014/10/29 14:01 par ldo