Expérience de première main avec Linux AVR IDE


8

Je cherche des informations pour obtenir un bon environnement de développement intégré pour la programmation AVR sous Linux (Assembly et C).

Mes études m'ont donné une expérience pratique limitée avec les AVR, mais je crains de devenir un peu rouillé, alors je veux m'occuper de certains projets mais je veux également persister à effectuer tous les développements sous Linux.

J'utilise USBtinyISP de Ladyada et j'ai programmé mes puces en utilisant AVRdude mais je n'ai pas encore trouvé d'IDE qui fonctionne comme j'aime sous Linux, donc j'ai compilé et construit via mon lappie Windows et AVRstudio. (C'est pourquoi j'aime Arduino, un bon IDE et fonctionne tout de suite!)

Alors, quelqu'un a-t-il une expérience de première main en utilisant un IDE avec Linux pour avoir réussi à développer ses projets AVR du début à la fin?

Réponses:


8

La chose à propos des développeurs basés sur Linux est qu'ils ont généralement leur propre flux de travail unique (vim vs emacs, etc.). À mon avis, Linux est un grand IDE auquel vous ajoutez vos propres parties. Dans cet esprit:

Si vous utilisez une distribution basée sur Debian, exécutez-la dans votre ligne de commande: sudo apt-get install build-essential avr-gcc avrdude

Ensuite, trouvez un éditeur de texte que vous aimez (Google est votre ami, mais en voici quelques-uns: vim / gvim, emacs, geany, kate, jedit) et écrivez du C. Lorsque vous êtes prêt à compiler, passez à avrfreaks et jetez un œil à d'autres peuples font des fichiers . Vous pouvez probablement simplement voler un makefile du projet de quelqu'un d'autre et modifier le périphérique cible, la fréquence XTAL et les noms de fichiers source. Après avoir exécuté make et avoir un fichier .hex, utilisez avrdude pour programmer votre puce.

Entrer dans les détails prendrait beaucoup plus de place que moi, mais c'est le processus de base. Lorsque vous êtes à l'aise avec le processus, vous pouvez faire des trucs super sympas dans le makefile comme avoir une seule commande qui compile et télécharge votre code. Certains éditeurs de texte (comme geany) vous permettent de définir des commandes de création personnalisées pour les options du menu GUI afin que vous puissiez avoir un bouton de compilation + téléchargement comme je le fais.

En outre, la chose fantastique à propos de ce processus est qu'il est à peu près la même chose que vous construisiez pour ARM, AVR, x86, SPARC, peu importe. Une fois que vous avez makefiles et gcc down, le reste du développement linux est un jeu d'enfant!


HEHE, si simple. J'ai été inutilement intimidé par cette approche. Jusqu'à ce que cela soit expliqué, je ne savais tout simplement pas comment créer le makefile. Merci pour la direction :)
BrianMcK

C'est ce que je fais aussi. EMACS et un Makefile. Vous pouvez également compiler des trucs Arduino de cette façon aussi. (* jcl *)
jluciani

Vous pouvez également utiliser Eclipse comme IDE / éditeur et utiliser le makefile pour la compilation et le téléchargement. Avec OpenOCD et ARM, il est même possible de déboguer via JTAG (je ne sais pas si cela fonctionne avec AVR).
starblue

3

Il y a un module Eclipse pour l'AVR, mais je l'ai utilisé et il semblait être beaucoup plus difficile qu'il n'en valait la peine. (Comme la majorité des autres modules Eclipse que j'ai utilisés)


Bravo pour le plomb, mais comme vous ne
semblez

Je voudrais juste ajouter que je dois utiliser eclipse au travail (pas pour les avrs cependant) et je ne le recommande pas. Pour les microcontrôleurs, vous pouvez vous passer de tout ce ballonnement.
jeremy

2

Je n'ai aucune expérience de première main, mais KontrollerLab semble intéressant.


Oui, j'ai essayé de faire fonctionner KontrollerLab auparavant, mais mon PC s'est récemment très mal écrasé et je viens juste de tout reconstituer. Il semble provenir du même équipage qui a fait Ktechlab que j'ai trouvé très utile pour la conception de schémas et de circuits. Merci pour la contribution.
BrianMcK

2

Comme l'approche makefile semble traiter le côté C de ma question, j'ai fait un peu plus d'expérimentation ici (telle qu'elle était) et j'ai trouvé que j'avais les ressources pour construire du code d'assembly également.

En utilisant AVRA , un assembleur en ligne de commande, j'ai testé la construction d'un de mes projets à l'ancienne et j'ai sorti un fichier * .hex identique en le comparant à ma sortie AVRstudio d'origine. Bien que je n'ai pas réellement programmé le micro AVR, sur la base de la sortie seule, je suis heureux de dire que j'ai maintenant de l'expérience xp, bien que limité :)


N'oubliez pas que avr-gcc comprend également un assembleur parfaitement bon. Il a une syntaxe légèrement différente de celle d'AVRA et de l'assembleur d'Atmel, mais il fonctionne tout aussi bien.
Tim

0

ECLIPSE fonctionne bien sur un EeePC avec le patch AVR ... Mais c'est un peu lent.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.