Forum: Compiler & IDEs Welche IDE für AVR Programmierung


von Hercules (hercules)


Lesenswert?

Moin moin,

ich habe da mal ’ne frage aus Interesse. Mit welcher IDE habt Ihr bisher 
so am besten Erfahrungen gemacht? Speziell jetzt für AVR. Ich bin dabei 
Programmierung für ESP32 oder auch ATtinys zu lernen und stehe zwischen 
Visual Studio Code und Atmel Studio. Was würdet Ihr empfehlen? Zieht 
bitte auch in Betracht, dass ich sowas gerne im Lebenslauf erwähnen 
würde. Was kommt besonders gut an, abgesehen von den Skills, die ich 
besitze.

Passend dazu noch eine weitere Frage: Welche IDE benutzt man eigentlich 
vorwiegend in der Industrie bzw. in der freien Marktwirtschaft? Ist das 
eher so das man da wie Wahl hat, Hauptsache das Gerät funktioniert, oder 
gibt es da eher einen Favoriten?

Bin gespannt auf euere Geschichten!

LG

von J. S. (jojos)


Lesenswert?

weder ESP noch AVR, trotz schlechter Verfügbarkeit weiterhin STM32, und 
da dann die STM32CubeIDE.

von Wilhelm M. (wimalopaan)


Lesenswert?

vi

von Walter T. (nicolas)


Lesenswert?

Hercules H. schrieb:
> Zieht
> bitte auch in Betracht, dass ich sowas gerne im Lebenslauf erwähnen
> würde

Resumé Driven Development. Dann kommst Du um nicht umhin, alle zu 
nutzen.

von Mark S. (voltwide)


Lesenswert?

Standard-IDE scheint immer noch Eclipse zu sein. Ziemlich sperrig imho. 
Habe ich anfangs benutzt für AVR-Programmierung. Dann Codeblocks. Alles 
Overkill. Jetzt benutze ich einen beliebigen Texteditor und ein kleines 
Script für Übersetzung und anschließendes flashen.

von Wilhelm M. (wimalopaan)


Lesenswert?

Hercules H. schrieb:
> Was kommt besonders gut an, abgesehen von den Skills, die ich
> besitze.

Welche super sexy Skills hast Du denn noch?

von Frank K. (fchk)


Lesenswert?

Hercules H. schrieb:

> ich habe da mal ’ne frage aus Interesse. Mit welcher IDE habt Ihr bisher
> so am besten Erfahrungen gemacht? Speziell jetzt für AVR. Ich bin dabei
> Programmierung für ESP32 oder auch ATtinys zu lernen und stehe zwischen
> Visual Studio Code und Atmel Studio.

Microchip hat zwei im Angebot:
- Microchip (Atmel) Studio. VS Studio basiert, Windows Only, kommt von 
Atmel, nur für Atmel Prozessoren
- MPLABX, von Microchip, für alles was Microchip macht: PICs, AVRs, 
ARMs,... geht unter Windows, MacOS, Linux

Das Microchip Studio ist langfristig eine Sackgasse. Microchip wird 
wahrscheinlich auf Dauer nicht zwei IDEs pflegen. MPLABX ist das, wird 
überleben wird, auch wenn es der Mehrheit der AVR-User, die auf 
Microchip Studio eingerastet sind, eher nicht gefallen wird.

> Was würdet Ihr empfehlen? Zieht
> bitte auch in Betracht, dass ich sowas gerne im Lebenslauf erwähnen
> würde. Was kommt besonders gut an, abgesehen von den Skills, die ich
> besitze.

Das ist egal und spielt keine Rolle. Eclipse ist recht verbreitet, VS 
Code inzwischen auch, und Netbeans ist der dritte (darauf basiert 
MPLABX). Viel wichtiger ist, dass Du überhaupt solide Erfahrungen 
außerhalb des Arduino-Umfelds hast.

> Passend dazu noch eine weitere Frage: Welche IDE benutzt man eigentlich
> vorwiegend in der Industrie bzw. in der freien Marktwirtschaft? Ist das
> eher so das man da wie Wahl hat, Hauptsache das Gerät funktioniert, oder
> gibt es da eher einen Favoriten?

Da gibt es mehrere Strategien:
- nehmen, was der Hersteller anbietet
- nehmen, was branchenüblich ist (z.B. IAR für Automotive wegen 
MISRA-Zertifizierung)
- nehmen, was beim Betriebssystem (Linux, MacOS, irgendwelche 
RTOS-Systeme) dabei ist.

fchk

von Zeno (Gast)


Lesenswert?

Wilhelm M. schrieb:
> Welche super sexy Skills hast Du denn noch?
Das wird wohl nicht so dolle sein.
Für den TO ist es doch völlig uninteressant ob man mit dem Werkzeug ein 
ordentliches Ergebnis erziehlt, der will einfach nur damit glänzen das 
er ein spezielles Werkzeug benutzt.
Wer's fachlich drauf hat schaut sich die in Frage kommenden Werkzeuge 
an, probiert eine kleine Auswahl aus und entscheidet sich dann für ein 
Werkzeug von dem er meint, daß er damit am Besten seine Projekte 
umsetzen kann. Das kann am Ende ein einfacher Texteditor sein  aber auch 
eine umfängliche IDE. Und ja Delphi- oder C#-Projekte, nur mal so als 
Beispiel, wird wohl kaum einer ohne die passende IDE erstellen. Bei 
Projekten in Assembler oder C reicht oftmals ein einfacher Editor. Die 
Konstrukteure in der Firma in der ich angestellt bin, haben für C oder 
Assembler gern Notepad++ unter Win oder auch den vi unter HP-UX benutzt. 
Für GUI Projekte eben die passende IDE derzeit meist Visual Studio. Am 
Ende ist das Ergebnis entscheident und wie man dahin kommt ist ist 
meinem Arbeitgeber relativ egal. ES gibt zwar auch ein paar Chefs die 
meinen jedes SW-Projekt müsse mit .NET und VS gemacht werden, aber das 
sind allesamt keine Fachleute.

von Michael F. (Firma: IAR Systems) (michael_iar)


Lesenswert?

Mark S. schrieb:
> Jetzt benutze ich einen beliebigen Texteditor und ein kleines
> Script für Übersetzung und anschließendes flashen.

Moin,

rein aus Interesse: nutzt Du bei diesem Workflow auch einen Debugger?

Gruß,
Michael

von Fachkenner (Gast)


Lesenswert?

Profientwickler und vor allem, die, die sich für einen halten, brauchen 
keine Debugger. Die haben die Programmstruktur klar im Kopf, und müssen 
vielleicht nur mal an einem Pin wackeln, und halten ein Oszilloskop 
dran, das reicht dann aber auch. Meinen jedenfalls die Profientwickler 
hier im Forum.

von Rolf M. (rmagnus)


Lesenswert?

Hercules H. schrieb:
> Zieht
> bitte auch in Betracht, dass ich sowas gerne im Lebenslauf erwähnen
> würde. Was kommt besonders gut an, abgesehen von den Skills, die ich
> besitze.

Also bei mir käme es besonders gut an, wenn man unabhängig von einer 
spezifischen IDE ist und auch so weiß, wie Compiler und Build-System 
funktionieren.

von Nachdenklicher (Gast)


Lesenswert?

Da Microchip Studio bei mir daheim nicht in Frage kommt (gibt es ja 
nicht für Linux), arbeite ich mit VS Code als Editor, das ich mir so 
zurechtgeschraubt habe, daß per make auf Tastendruck nicht nur 
kompiliert, sondern auch geflasht wird (wahlweise über 
Arduino-Bootloader, wenn ich deren Boards nutze oder über AVRISP wenn 
ich eigene Boards habe). Debuggen geht darüber natürlich nicht - was 
aber nur ein theoretisches Limit ist, denn weder der Arduino-Bootloader 
noch der AVRISP Mk II haben irgendeine Debug-Anbindung an den 
Controller. Mehr als "Blinkepins" und serielle Ausgabe könnte ich also 
so oder so nicht machen.

Beruflich habe ich mit AVR nichts zu tun, aber Kollegen, die früher 
welche eingesetzt haben, haben IAR genutzt.

von Kiffer (Gast)


Lesenswert?

Rolf M. schrieb:
> Also bei mir käme es besonders gut an, wenn man unabhängig von einer
> spezifischen IDE ist und auch so weiß, wie Compiler und Build-System
> funktionieren.

Das sehe ich ähnlich, und deshalb finde ich die Frage nach "welche IDE" 
auch immer so traurig. Ein guter Entwickler kann auch mit einem guten 
Texteditor, der Kommandozeile und einem idealerweise generischen 
Buildsystem (make, bjam, you get the idea) zurecht kommen, so daß sich 
auch Versionsverwaltung, Unittests und, je nachdem, ggf auch CI und / 
oder CD schick integrieren und automatisieren lassen.

Im Mikrocontrollerumfeld mit seinen meist begrenzten Ressourcen und 
Datenmengen einer-, und seinen kaum bis gar nicht vorhandenen Optionen 
für Ausgaben und /oder Logging kann ein Debugger zwar sinnvoll sein, muß 
dabei aber auch nicht unbedingt ins Entwicklungswerkzeug integriert 
sein. In anderen Bereichen sind die Datenmengen hingegen häufig schon so 
umfangreich, daß ein klassisches Debugging entweder nur mit riesigem 
Aufwand, oder zum Teil sogar gar nicht mehr möglich ist. Da muß man dann 
ohnehin flexibel sein und sich etwas Klügeres einfallen lassen, und das 
läßt sich mit voelen IDEs kaum oder gar nicht realisieren. Daher würde 
ich ohnehin keinen Entwickler einstellen, der sein Werkzeug nach dem 
Grad der Debuggerintegration auswählt...

von DerEgon (Gast)


Lesenswert?

Nachdenklicher schrieb:
> Debuggen geht darüber natürlich nicht - was
> aber nur ein theoretisches Limit ist, denn weder der Arduino-Bootloader
> noch der AVRISP Mk II haben irgendeine Debug-Anbindung an den
> Controller. Mehr als "Blinkepins" und serielle Ausgabe könnte ich also
> so oder so nicht machen.

Wenn man darauf beharrt, sich nicht weiterzuentwickeln, dann muss man 
stehenbleiben.

Alternativ könnte man sich auch einen Mplab Snap besorgen. Das ist ein 
Universalprogrammier- und Debugadapter, der AVRs via ISP, Debugwire, 
JTAG oder PDI ansteuern kann, und zusätzlich auch PICs und (wenigstens 
einige) Atmel-ARMe ebenso versorgen kann.

von Zeno (Gast)


Lesenswert?

Fachkenner schrieb:
> Profientwickler und vor allem, die, die sich für einen halten, brauchen
> keine Debugger. Die haben die Programmstruktur klar im Kopf, und müssen
> vielleicht nur mal an einem Pin wackeln, und halten ein Oszilloskop
> dran, das reicht dann aber auch.
Genau! Die die sich nicht nur dafür halten, sondern wirklich welche 
sind,  können das auch.

Rolf M. schrieb:
> ... auch so weiß, wie Compiler und Build-System
> funktionieren.
Genau das ist der Punkt.

von Nachdenklicher (Gast)


Lesenswert?

DerEgon schrieb:
> Wenn man darauf beharrt, sich nicht weiterzuentwickeln, dann muss man
> stehenbleiben.

"Wenn man einfach keinen Bock hat, mehr Geld für ein bissi 
Hobbybastelei, für die man eh höchstens drei Tage im Jahr Zeit hat, 
auszugeben, dann nutzt man das, was man hat."

Hab das mal für dich korrigiert.
Gern geschehen.

Ob das Ding auch PIC kann, ist mir egal, mit denen bastele ich nicht, 
und ARM hab ich auf der Arbeit genug, die sind mir nicht 
bastelfreundlich genug. (Bastelfreundlich = bedrahtet und 5V) Das sind 
andere Kriterien als für irgendwas professionell entwickeltes, das 
verstehen leider manche nicht. Ich behaupte nicht, daß man das, was ich 
mit den AVRs mache, nicht auch mit ARM machen könnte - aber warum, wenn 
die "grobe Technik" mal eben schnell auf Lochraster zusammengebraten und 
direkt am USB versorgt werden kann? Wenn ich anfange, erst irgendwelche 
Platinen zu layouten, sind die erst da, wenn ich eh wieder ein halbes 
Jahr keine Zeit habe, mich drum zu kümmern.

von Hannes (Gast)


Lesenswert?

Mark S. schrieb:
> Jetzt benutze ich einen beliebigen Texteditor und ein kleines
> Script für Übersetzung und anschließendes flashen.

Ersetze script durch makefile.

von Christoph M. (mchris)


Lesenswert?

>- MPLABX, von Microchip, für alles was Microchip macht: PICs, AVRs,
>ARMs,... geht unter Windows, MacOS, Linux

Ist MPLABX Freeware oder kostenpflichtig?

von Rolf M. (rmagnus)


Lesenswert?

Hannes schrieb:
> Mark S. schrieb:
>> Jetzt benutze ich einen beliebigen Texteditor und ein kleines
>> Script für Übersetzung und anschließendes flashen.
>
> Ersetze script durch makefile.

Oder besser noch durch CMakeLists.txt.

von Frank K. (fchk)


Lesenswert?

Christoph M. schrieb:
>>- MPLABX, von Microchip, für alles was Microchip macht: PICs, AVRs,
>>ARMs,... geht unter Windows, MacOS, Linux
>
> Ist MPLABX Freeware oder kostenpflichtig?

kostenlos benutzbar.

fchk

von Christoph M. (mchris)


Lesenswert?

>kostenlos benutzbar.

Ah, danke. Ich habe noch einen Atmel-ICE, ein paar AVRs und ein paar 
SAMDs.
Ich hoffe, mit dem Setup kann ich die programmieren.

von Erwin (Gast)


Lesenswert?

Profis arbeiten heute eigentlich nur noch mit der Arduino IDE. Alles 
andere sind halt Leuten mit veraltetem Wissensstand, die verzweifelt 
versuchen, ihr Schulwissen zu verkaufen.

von ack (Gast)


Lesenswert?

Erwin schrieb:
> Profis arbeiten heute eigentlich nur noch mit der Arduino IDE.

Arduino IDE rulez!

von J. S. (jojos)


Lesenswert?

Die Arduino IDE wohl kaum, PlattformIO macht da schon einiges besser. 
Alleine das man git nutzen kann (integriert und nicht über externe 
Tools) und das Management der Abhängigkeiten ist da um Welten besser 
gelöst. Arduino setzt da leider auf den Rohrkrepierer Eclipse Theia.

von ack (Gast)


Lesenswert?

J. S. schrieb:
> Die Arduino IDE wohl kaum

Klar dass du mit deinen Techniker-Scheuklappen nicht verstanden
hast was gemeint war.

von J. S. (jojos)


Lesenswert?

ack schrieb:
> J. S. schrieb:
>
>> Die Arduino IDE wohl kaum
>
> Klar dass du mit deinen Techniker-Scheuklappen nicht verstanden
> hast was gemeint war.

Arduino IDE ist sehr eindeutig du Vollhonk.

von ack (Gast)


Lesenswert?

J. S. schrieb:
> Arduino IDE ist sehr eindeutig

Nicht in Verbindung mit dem zweiten Satz der Aussage, du
Scheuklappenträger mit eingeschränktem Horizont.

von J. S. (jojos)


Lesenswert?

Ferien sind zu Ende, die Arduino Kiddies sind aus der Stadtrandbetreuung 
zurück. Das anonyme Trollen nimmt schlagartig zu.

von Heizer (Gast)


Lesenswert?

Hercules H. schrieb:
> Passend dazu noch eine weitere Frage: Welche IDE benutzt man eigentlich
> vorwiegend in der Industrie bzw. in der freien Marktwirtschaft? Ist das
> eher so das man da wie Wahl hat, Hauptsache das Gerät funktioniert, oder
> gibt es da eher einen Favoriten?

Wir (Industrie-Mittelstand) verwenden für ARM und AVR den IAR. Die sind 
aber in der kostenlosen (Kick-Start) Version größenbeschränkt (ich 
glaube 4k kompilierter Code bei AVR und 32k bei ARM), was aber für viele 
Projekte locker reicht.

Ich glaub für den Lebenslauf ist die Erfahrung mit einer speziellen IDE 
nicht sonderlich relevant. Schon eher Kenntnisse einer Architektur wie 
AVR oder ARM.

von Georg M. (g_m)


Angehängte Dateien:

Lesenswert?

Microchip Studio ist sehr praktisch.

von W.S. (Gast)


Lesenswert?

Georg M. schrieb:
> Microchip Studio ist sehr praktisch.

Und die Brötchen von unserem Bäcker schmecken gut.

Har das etwas mit diesem Thread zu tun? Eher nicht.

W.S.

von Ron T. (rontem)


Lesenswert?

W.S. schrieb:
> Har das etwas mit diesem Thread zu tun? Eher nicht.

Na aber sicher doch.
Schließlich ist Microchip-Studio funktionell wohl die geeignetste IDE. 
Schon dank ihrer Atmel- Vergangenheit.
Der Rechner sollte allerdings genügend Power mitbringen.

von DerEgon (Gast)


Lesenswert?

W.S. schrieb:
> Har das etwas mit diesem Thread zu tun? Eher nicht.

Microchip Studio hieß früher Atmel Studio. Und das ist die ernstgemeinte 
IDE von Microchip für 8- und 32-Bit-µCs von Atmel (alle AVRs und die 
SAMD-ARMe).

Das ist natürlich gleich mehrfach böse, weil es a) unter Windows läuft 
und b) auch sonst Technik von Microsoft verwendet und obendrein c) auch 
Debuginterfaces unterstützt, so daß man nicht wie die richtigen 
Profi-Cracks Fehlersuche mit ein paar Debugtextausgaben oder dem 
Blinkenlassen einer LEDs betreiben muss, sondern sich dazu verleiten 
lassen kann, so etwas wie Breakpoints zu verwenden.

von Oliver S. (oliverso)


Lesenswert?

Hercules H. schrieb:
> Zieht
> bitte auch in Betracht, dass ich sowas gerne im Lebenslauf erwähnen
> würde.

Ich würde von jedem Bewerber, der sich ernsthaft in einem passenden 
Umfeld bewirbt, erwarten, daß der sich innerhalb kürzester Zeit in jede 
IDE einarbeiten kann, und sei die noch so abstrus.

https://youtu.be/YZ5tOe7y9x4

Oliver

von c-hater (Gast)


Lesenswert?

Oliver S. schrieb:

> Ich würde von jedem Bewerber, der sich ernsthaft in einem passenden
> Umfeld bewirbt, erwarten, daß der sich innerhalb kürzester Zeit in jede
> IDE einarbeiten kann, und sei die noch so abstrus.

Grob einarbeiten für erste Schritte: mag sein. Aber bis zur wirklichen 
Beherrschung werden wohl unweigerlich einige Wochen oder gar Monate ins 
Land gehen. Das ist so bei jeder komplexen IDE.

von Mark S. (voltwide)


Lesenswert?

Michael F. schrieb:
> Mark S. schrieb:
>> Jetzt benutze ich einen beliebigen Texteditor und ein kleines
>> Script für Übersetzung und anschließendes flashen.
>
> Moin,
>
> rein aus Interesse: nutzt Du bei diesem Workflow auch einen Debugger?
>
> Gruß,
> Michael
Tatsächlich habe ich noch nie einen debugger benutzt - andernfalls käme 
ich um eine richtige IDE wohl kaum herum.

von Franz (Gast)


Lesenswert?

Oliver S. (oliverso)
>Ich würde von jedem Bewerber, der sich ernsthaft in einem passenden
>Umfeld bewirbt, erwarten, daß der sich innerhalb kürzester Zeit in jede
>IDE einarbeiten kann, und sei die noch so abstrus.

>https://youtu.be/YZ5tOe7y9x4

Das Video ist wirklich super und bringt das Installationsproblem und das 
Nicht-funktionieren von Programmen gut auf den Punkt.

Wobei man allerdings sagen muss, dass diese Phänomen der 
Informationstechnologie inhärent ist:
https://www.youtube.com/watch?v=k0jpLJ-S9N8

von EiTler (Gast)


Lesenswert?

Franz schrieb:
> Oliver S. (oliverso)
>>Ich würde von jedem Bewerber, der sich ernsthaft in einem passenden
>>Umfeld bewirbt, erwarten, daß der sich innerhalb kürzester Zeit in jede
>>IDE einarbeiten kann, und sei die noch so abstrus.
>
>>https://youtu.be/YZ5tOe7y9x4
>


So ist es aber real Du solltest neben Regelungs- und 
Elektro(nik)technik, fünf Sprachen und 5 IDE's drauf haben.
Und das alles mal eben aus dem Hut zaubern.
Wenn Du das nicht sofort anbietest, meint man Dir zu erklären, dass Du 
dafür 3 Jahre brauchst.

Und ein Fachidiot ääähm Informatiker kann nebenbei E/R-Technik in 3 
Tagen.
Finde den Fehler...

von Oliver S. (oliverso)


Lesenswert?

c-hater schrieb:
> Aber bis zur wirklichen
> Beherrschung werden wohl unweigerlich einige Wochen oder gar Monate ins
> Land gehen. Das ist so bei jeder komplexen IDE.

Bei der ersten ist das so. Bei er zweiten gehts schneller, und danach 
wiederholt sich doch das meiste.

Die IDE ist ja eh nur ein winziger Teil des eigentlichen Ökosystems.

Oliver

Beitrag #7163466 wurde vom Autor gelöscht.
von Ron T. (rontem)


Lesenswert?

Oliver S. schrieb:
> Die IDE ist ja eh nur ein winziger Teil des eigentlichen Ökosystems.

Für 8-Bit AVRs und einer darauf spezialisierten IDE wie dem Microchip 
Studio ist es zum Glück das einzige Teil.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.