Visual Studio Code : Pas de gestion d'erreurs ?

Bonjour , comme vous pouvez voir dans le titre de ce topic , j'utilise depuis peu Visual Studio Code et j'apprécie énormément toutes ses fonctionnalités mais ...

Prenons un exemple :

Je supprime un ";" j'ai donc créé une erreur pour le compilateur mais il me retourne "exit status 1"

sans me pointer la ligne d'erreur ...

en gros je dois partir debuger mon code sur l'ide arduino ce qui est un peu ridicule du coup ...

je précise que la carte est une MEGA2560 ,

je n'ai aucun mal a téléverser le code directement depuis Visual Studio ...

Si quelqu'un d'avisé sur la chose passe dans le coin ... je le remercie d'avance s'il m'aide un peu :slight_smile:

C'est une éditeur ouvert que l'on peut customiser avec des plugins, comme Eclipse d'ailleurs.
Mais sans plugins cela reste un simple éditeur.

PlatformIO est basé sur VsCode et comporte toutes les extensions pour travailler avec ARDUINO, ESP, STM32, etc.

Voir ici : https://platformio.org/

Merci !

installé ...

il faut convertir les fichier en .cpp et .h c'est cela ?

Oui.
.ino est inconnu de PlatformIO.

Et PlatformIO, ça poutre par rapport à l'IDE Arduino?

Je suis retombé plusieurs fois de suite dessus dans mes recherches sur le bluetooth avec nRF52.

ça poutre

Quézaco ? ? ?

Ça poutre. ::slight_smile:

Essaie, tu verras bien.

Perso j'utilise VSCode tous les jours au boulot donc le choix s'est imposé de lui-même.
C'est un très bon editeur, et PlatformIO permet de compiler/televerser/gerer les bibliothèques sans probleme.

Il devient particulierement puissant si tu utilise aussi Git (mon cas), il gere lui-meme les branches et te permet aussi de visualiser graphiquement les differences de version (surtout avec un plugin comme GitLense).

Donc selon moi oui ça poutre :smiley:

Juste une precision par contre, le terminal serie de VSCode est vraiment très rudimentaire. Je l'ai completé avec CoolTerm. Si tu es en 32bits, ils ont une version 32bits à telecharger sur leur site.

Perso j'utilise VSCode tous les jours au boulot donc le choix s'est imposé de lui-même.

Idem pour du C/C++ et PYTHON.

Excellent, mais je vais nuancer un peu.

Quand on part de zéro il vaut mieux choisir dès le départ l'outil qui convient le mieux et s'y tenir ensuite, car les librairies ne seront pas partageables, tout du moins pas sans difficultés.

Il y a certaines petites différences parmi lesquelles l'absence de fichier .ino

Avec l'IDE ARDUINO il est possible de lier plusieurs .ino ensemble pour générer un exécutable.
L'IDE se débrouille pour générer le fichier .h nécessaire pour que l'ensemble se compile.
Cela permet aux débutants de mieux appréhender un projet comportant des fichiers multiples, sans avoir à se préoccuper de déclarations externes.

Avec PlatformIO cette possibilité n'existe pas.
Le projet est forcément composé de fichiers .cpp et .h

PlatformIO me semble moins à la portée des débutants, mais d'un autre côté comme c'est un outil plus standard, il oblige à se former au découpage d'un projet en fichiers .cpp et .h - et surtout quoi mettre dans chaque fichier - ce que les débutants ont beaucoup de mal à comprendre en général.

D'autre part PlatformIO est un outil peu répandu dans le monde des bidouilleurs, ce qui fait que si l'on distribue gracieusement son travail - comme je le fais souvent - le projet IDE ARDUINO aura plus de chances d'être adopté.

Merci pour vos réponse.

Je suis débutant en Arduino. J'ai réellement commencé à programmer avec l'IDE arduino ce week-end. Par contre, je ne suis pas débutant en programmation. D'habitude, j'aime bien découper mes projets en plusieurs fichiers pour séparer les parties graphiques, les calculs et autres fonctionnalités. La gestion de Git sous PlatformIO me semble intéressante aussi. Par contre, à l'opposé, sur mes projets actuels, qui sont de l'instrumentation, je veux partager avec la communauté intéressée par cette instrumentation, ce qui va plus dans le sens de l'IDE arduino. Je vais continuer à cogiter :grin: .

Bonjour

Voie intermédiaire ?

Un nouvel IDE Arduino dit 'Pro' est en préparation
https://www.arduino.cc/pro/arduino-pro-ide

j'utilise en ce moment la version expérimentale 0.0.4 alpha pour tester l'interactivité entre une carte ESP32-CAM et Telegram
Je le trouve assez efficace, et ne déplore qu'un seul plantage pour l'instant sur une semaine d'utilisation (testé sous Linux et sous Windows 10)
Il partage les librairies et plateformes additionnelles de l'IDE classique.

Par contre, je ne suis pas débutant en programmation. D'habitude, j'aime bien découper mes projets en plusieurs fichiers pour séparer les parties graphiques, les calculs et autres fonctionnalités.

C'est tout à fait possible avec l'IDE Arduino.

Il existe deux gestions multi fichiers avec cette IDE.

  1. multi fichiers tous en extension ino
    On peut créer autant de fichiers ino que l'on veut. Il devront se trouver dans le même répertoire que le fichier ino principal.
    L'IDE se contentera de faire une concaténation bête et méchante pour ne faire qu'un seul fichier qui sera traité comme n'importe quel fichier ino.
    Ce n'est pas vraiment du multi-fichiers, c'est plutôt pour éviter de travailler avec des fichiers de plusieurs centaines de lignes.

2)Multi fichiers cpp et h
Il est possible de créer ces fichiers qui devront, eux aussi, se trouver dans le même répertoire que le fichier ino.
C'est plus facile de créer des fichiers vides avec un simple éditeur de texte et d'ouvrir ensuite l'IDE pour qu'elle les prennent en compte.
Ces fichiers seront écrits comme du C/C++ classique, il n'y aura pas l'aide de l'IDE pour écrire les instructions préprocesseur et les variables globales devront être signalées comme extern au compilateur.
Il ne faudra pas non plus oublier d'inclure le fichier Arduino.h qui contient les déclarations des fonctions "arduino".

Si pour une raison ou une autre on ne veut pas placer une bibliothèque (fichier cpp et son compagnon h ) dans le répertoire imposé par l'IDE Arduino, il suffit de les placer dans le même répertoire que le fichier ino et cela fonctionnera.

Bonjour,

Ici une introduction à VS code/platformio en français.

Quelqu'un a déjà essayé ceci : arduino_debugging_unit_testing ? ? ?
Il faut un OCD : debugging-tool-olimex-arm-usb-ocd

kamill:
Ici une introduction à VS code/platformio en français.

J’ai regardé la vidéo avec intérêt. Ça fait envie. Je crois que je vais tenter de m’y mettre. Entre autre, les propositions de code dans l’éditeur, c’est un point que j’apprécie. Quand on ne code pas super souvent, on retrouve plus facilement les fonctions qu’on veut.

Bonjour,

Sublime Text et platformio c'est un duo super qui fait le même boulot que l'IDE arduino, j'utilise depuis pas mal de temps l'un et l'autre, il gère les fichiers multiples et reconnait toutes les cartes que j'utilise (arduino esp8266, esp32, etc) j'ai du mal de faire mon choix...

j'ai ouvert un topic "PlatformIO et multi fichiers" mais je vois que celui ci dérive vers ce sujet donc je reprend ici ...

j'ai commencé a vouloir re-écrire mon projet dans le format .cpp et .h mais ... cela fait un certain temps que je dev dessus et il doit y avoir env 8 pages de codes ... et je suis confronté a beaucoup d'erreurs a gérer en même temps donc difficile de comprendre ...

j'ai souvent des bugs lié au fait que , la semaine je code sur mon pc de bureau ... le week end quand je bouge je continu sur mon pc portable le tout via dropbox ...

Seulement voila , les librairies dans le PATH me retournent souvent :

"Fichier d'inclusion introuvable dans browse.path."

J'ai bien saisie que cela venais d'un soucis de librairie (pointage) mais je ne comprend pas pourquoi ça se remet a buguer alors que je n'avais pas de soucis sur un pc ... puis sur l'autre le soucis se présente !
J'ai voulu mettre mes librairies utiles directement dans le lib du project mais ... pas mieux ...

pourrait ont m'aider sur ce point là , et éventuellement une liste des plugin qui vont bien , là j'ai parfois un message de conflit entre intellisense et platformIO ... bref , difficile a appréhender l'usine a gaz ^^

en tout cas merci à tout ceux qui jusque là partage leur savoir, c'est une chouette école !

Finalement, ce week-end, je me suis lancé dans PlatformIO. J'ai craqué avec Arduino IDE sur la gestion des bibliothèques externes. J'avais une librairie et son fork installés. Arduino IDE ne prenait pas la bonne version et pas possible de lui dire laquelle prendre pour un projet donné. (La solution serait de copier la bonne librairie dans le dossier du projet). Donc, je suis allé voir PlatformIO. J'ai regardé la vidéo du gars avec l'accent suisse. J'ai installé. J'ai migré un projet. Ça va pas mal. Le temps d'apprentissage n'est pas trop long. Je trouve l’environnement bien plus agréable pour programmer. Au revoir Arduino IDE. :grin: