Outils pour utilisateurs

Outils du site


dev:arduino:nouveau-projet-eclipse

Nouveau projet Arduino

Création d'un nouveau projet Arduino sous l'IDE Eclipse.

  • Menu File → new → C++ Project
  • Dans la section Project Type Sélectionner AVR Cross Target Application et Empty. Nommer le projet. Ici nous l'appelons helloWorld.
  • Désélectionner l'option debug et cliquer sur next.
  • Renseigner les paramètres de la cible AVR. (voir configurer-eclipse) et cliquer sur finish.

Clic droit sur la racine du projet, option Properties.
Déployer la feuille C/C++ Build→Setup.
Dans les sections AVR Compiler→Directories et AVR C++→Directories renseigner les mêmes chemins que dans le projet bibliothèque ArduinoUnoCore et ajouter le chemin du projet lui même (la variable ${workspace_loc:/${ProjName}} peut être utilisée.

Dans la section AVR C++ Linker modifier la ligne de commande avec la valeur suivante:

${COMMAND} --cref -s -Os ${OUTPUT_FLAG}${OUTPUT_PREFIX}${OUTPUT} ${INPUTS} -lm ${FLAGS}

Feuille AVR C++ Linker→libraries Dans la section Libraries Path, renseigner le chemin vers le dossier Release de la bibliothèque ArduinoUnoCore ou utiliser la variable ${workspace_loc:/ArduinoUnoCore/Release}

Dans la section Libraries ajouter une entrée: ArduinoUnoCore

Dans le panneau gauche, feuille Project References sélectionner ArduinoUnoCore. Ainsi la bibliothèque ArduinoUnoCore sera automatiquement compilée/recompilée si nécessaire lors de la compilation du projet courant.

Créer le fichier main.cpp. Clic droit sur la racine du projet helloWorld New → Source File

Lancer la compilation Project → Build Project

Déploiement

Une fois le binaire généré, l'outil AVRDude se charge de l'écrire sur la cible. L'outil AVRDude doit etre configuré pour communiquer avec la plateforme Arduino. Ici nous alons reutiliser la configuration de l'IDE Arduino. Nous aurons besoin de connaitre le nom du port utilisé par Arduino.

Pour le déterminer, brancher l'Arduino au port Usb de la machine et observer les modifications dans les logs

yoann@hermes$ tail -f /var/log/messages
Apr 29 01:50:19 localhost kernel: [21128.601094] usb 5-1: new full speed USB device using uhci_hcd and address 2
Apr 29 01:50:19 localhost kernel: [21128.797298] usb 5-1: configuration #1 chosen from 1 choice

Apr 29 01:50:19 localhost kernel: [21129.191907] cdc_acm 5-1:1.0: ttyACM0: USB ACM device

Pour ma part c'est ttyACM0

Sous Eclipse: Menu Windows → Preferences

  • Dans le panneau gauche déployer la feuille AVR → AVRDude.
  • Cocher l'option Use custom configuration file for AVRDude et sélectionner le fichier de configuration de l'IDE Arduino (/usr/share/arduino/hardware/tools/avrdude.conf). valider avec Apply et OK.

Créer une nouvelle configuration pour le programmeur avrdude:

  • Clic droit sur le projet option Properties.
  • Déployer AVR → AVRDude
  • Sur l'onglet Programmer, dans la section Programmer configuration cliquer sur le bouton New.
  • Dans la fenêtre Edit AVRDude Programmer Configuration:
Configuration name Arduino
Description Configuration AVRDude pour plateforme Arduino.
Programmer hardware (-c) Dans la liste selectionner Arduino
Override default baudrate 115200
Override default port saisir le port déterminé précédemment, ici /dev/ttyACM0

Remarque: Attention à la valeur du paramètre Override default baudrate, une valeur trop faible (57600) rend impossible la programmation du microcontrolleur. Le message d'erreur suivant s'affichait:

avrdude: stk500_recv(): programmer is not responding

Une fois la configuration créée, afficher l'onglet Advanced et dans la section Device Signature Check activer l'option Disable device signature check.

Références

dev/arduino/nouveau-projet-eclipse.txt · Dernière modification : 2021/02/01 21:51 de 127.0.0.1