www.mikrocontroller.net

Forum: Compiler & IDEs bessere IDE für AVR Studio oder Alternativen


Autor: Anfänger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo alle zusammen,

ich habe AVR Studio als konfortables Tool kennen gelernt weil man alles 
mit einem Programm coden, brennen und in cirquit debuggen kann. Wie es 
1000 Beiträge im Forum bereits zeigen ist die IDE vom AVR Studio halt 
recht dünn ausgestattet... gibt es Plugins oder Alternativen, die das 
Coden noch konfortabler machen?

Ich will zunächst mal bei Assembler bleiben...
Ich verwende STK500, STK600 und JTAGICE MK2...

Was schon mal gut funktioniert, und was ich nicht opfern will:

A)Das gecodete kann mit schnellem Tastendruck gleich in den Flash des 
Prozessors geschrieben werden. Erst abspeichern, Programm wechseln, 
Dateien neu einladen usw. finde ich lästig, würde ich aber in kauf 
nehmen, wenn anderen Funktionen dadurch konfortabler werden.

B)Bei in circuit debugging breakpoints will ich gleich sehen können, in 
welcher Zeile (und in welcher Datei) des Codes oder der include Dateien 
der Prozessor stehen geblieben ist und welche Werte die Register, Ports 
usw. haben.



Was bei AVR Studio nicht funktioniert, und ich nach einer Lösung suche:

C) selbstdefinierte Deklarationen, Variablen, Sprungbefehle und Macros 
sollten farbig dargestellt werden (ohne sie vorher in der 
AvrStudio_asm.ini eingeben zu müssen und das Programm neu starten 
müssen)

D) selbstdefinierte Deklarationen, Variablen, Sprungbefehle und Macros 
sollten sofort währen der Eingabe vorgeschlagen werden, damit ich diese 
nicht bis zum Ende abtippen muss oder selbst nochmal in andern Dateien 
nachschauen muss, wie die nochmal genau hiessen...

E) Subroutinen und Macros sollten ausblendbar werden

F) Wenn ich im AVR Studio das Projekt wechsle, bleibt die ausgewählte 
HEX Datei immer noch im AVR Programmer Menü. Oft brenne ich eine andere 
Hex Datei, als die, die das aktuelle Projekt erzeugt hat. Kann man dem 
AVR Programmer nicht irgendwie beibringen die aktuelle Datei des 
Projekts zu brennen? (und auch die EEPROM Datei)

G) Ich will im Projekt bestimmen können welche Fuse Bits beim brennen 
gesetzt werden sollen. Wenn ich das Projekt wechsle, sind immer noch die 
alten Einstellungen des letzten Projekts im AVR Programmer. Oft brenne 
ich falsche Clock Einstellungen oder noch die HEX Datei des letzten 
Projekts, wie unter Punkt F beschrieben.

Ich weiss, es sind alles Wünsche, die sich mit mehr Aufmerksamkeit und 
mehr Fleiß erübrigen würden. Aber ich denke genau das macht eine 
"Komfort" Funktion aus und unter C gibt es ja schon die ein oder andere 
komfortable Lösung. Aber nicht für den Assembler, oder habe ich was 
übersehen?

Ist das alles bereits unter C möglich? Wenn ja, wäre ich auch bereit 
mich neu in die Programmiersprache einzuarbeiten.

Mit was arbeitet Ihr und welche Funktionen habt Ihr lieb gewonnen?


Danke schon mal in Voraus

Christian Beckmann

Autor: Johann L. (gjlayde) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
A) Benutzer-definierte Shortcuts beherrscht sogar schon Textpad...
C) Syntax-Highlight per regex. Kenn ich vom emacs
D) Code-Completion: Code::Blocks
E) Code-Folding: Code::Blocks
F) Wie soll der Programmer denn wissen, welche andere Datei du gerade 
brennen willst? Üblicherweise ist das abhäbgig vom Projekt. C::B kann 
auch mehrere Projekte verwalten.
G) In C::B kann man vieles einstellen: post-build Regeln, etc. Falls das 
alles nicht reicht, kann man sich zB per Python reinhängen.

> Ist das alles bereits unter C möglich?

Mit C ist alles möglich, sogar das versehentliche Auslösen des 3. 
Weltkrieges ;-)

Ich arbeite mit Programmer's Notepad. Super schlank, ich mag die ganzen 
fetten und überlagenen GUIs net.
Wer nicht weiß was er tut, dem hülft auch dein Käferjäger.

Einfach mal antesten, kost ja nix. Ebenso wie die zig PlugIns für C::B

http://www.codeblocks.org/features
http://forums.codeblocks.org/index.php/board,22.0.html

Autor: Anfänger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke schon mal für den Anfang, ich werde mir die Tools gleich mal im 
Laufe des Tages anschauen.

zu F:
der AVR programmer scheint es zu wissen, es gäbe ja auch die Einstellung 
"Use current Simulator/Emulator Flash Memory". Diese ist jedoch 
ausgegraut, solange ich nicht simuliere. Jedes mal neu zu simulieren 
wäre jedoch noch umständlicher, als die Datei bei Projektwechsel neu 
einzustellen.

>Wer nicht weiß was er tut...
naja, es geht schon, man kommt zurecht. Aber ich sehne mich mit meinen 
40 Jahren nach "Komfort"funktionen, Alternativen suchen kostet ja nichts 
;)

Autor: Anfänger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also zum coden ist C::B spitzenmäßig, nur ich habe nicht das Gefühl, daß 
man sich mit C::B beim in circuit debugging noch die Register den Port 
Status anschauen kann. Oder kann man sich da irgendein Plugin für den 
JTAGICE MK2 einbinden oder ins AVR Studio einbinden?

Autor: Anfänger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe gerade entdeckt, daß man im AVR Studio die Dateien "reloaden" 
kann, und daß er sogar selbst erkennt, ob sich Dateien geändert haben. 
Wenn man also mit einem externen Programm, wie PN oder C::B schreiben 
würde, könnte man mit wenigen klicks ganz schnell im AVR Studio weiter 
machen.

Nur:
Es gibt keinen Befehl: Reload "all" files. Pro Projekt sind es doch 
einige. Würde es da einen Trick geben, ohne daß man das ganze Projekt 
neu aufmachen müsste?

Autor: Klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich Code doch tatsächlich mit MS Visual Studio :) Zum Kompilieren, 
Flashen und Debuggen dann wieder AVR Studio, was nebenbei offen ist. Das 
erkennt, wenn sich die Quelldateien geändert haben und mit einem klick 
sind die neu geladen.

Autor: Anfänger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit welchem "einem" Click löst Du das neu laden aus? Oder verwendest Du 
nur eine große Datei ohne include Dateien?

Autor: Michael K. (kichi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klaus wrote:
> Ich Code doch tatsächlich mit MS Visual Studio :) Zum Kompilieren,
> Flashen und Debuggen dann wieder AVR Studio, was nebenbei offen ist. Das
> erkennt, wenn sich die Quelldateien geändert haben und mit einem klick
> sind die neu geladen.

Das geht mit dem Programmer's Notepad genauso.

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab da eine Frage :
CodeBlocks (V8.02) besitzt z.B. einen Projekt Wizard für den WinAVR. 
Gibt´s irgendwo eine Anleitung im Netz wie ich den WinAVR auf anhieb 
richtig in CodeBlocks integrieren kann, was muss ich tun bzw. beachten, 
damit es genauso reibungslos verläuft wie mit dem AVR-Studio ?

Autor: Olli R. (xenusion)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Emacs, Makefiles, avrdude, fertig.

Olli

Autor: A. N. (netbandit)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, C::B ist schon ne schöne IDE... leider bin ich damals daran 
verzweifelt den Debugger zum laufen zu bringen. Auch hab ich es 
irgendwie nicht geschafft ein Programm zum Flashen so zu Konfigurieren, 
dass man mit einem "Klick" von der C::B Oberfläche aus das Programm in 
den AVR schreiben kann.

Ich werde mich in den kommenden Semesterferien noch einmal genauer damit 
beschäftigen, denn CodeBlocks wäre meine Wunsch IDE zum Entwickeln von 
AVR Programmen...

Autor: tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Codewright ist auch nicht verkehrt hinsichtlich C-coding 
(autovervollständigen usw.).
Ich habe avrstudio parallel dann zum debuggen offen auf nem zweiten 
monitor...

Eclipse kommt so langsam mit dem CDT-plugin auch in diese Regionen.

gruss, tom.

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich empfehle Eclipse mit CDT und dem AVR Eclipse Plugin von Thomas 
Holland. Kann alles und auch nichts. Alles einstellbar.

http://avr-eclipse.sourceforge.net/wiki/index.php/...

Autor: I. E. (anfaenger69)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So wie es aussieht läuft alles auf C hinaus. Gibt es sowas tolles auch 
für den Assembler? Macht noch jemand mit Assembler herum?

Autor: YS-500 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, ab und zu, aber immer weniger.
Dieses Jahr nur einmal.

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ebenfalls ganz nett: Codelite
http://www.codelite.org/

Autor: Name (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Netbeans. Nuff said.

--> Keine Kinderkrankheiten wie bei Eclipse, keine 
Superspezial-Eigenheiten wie bei den allermeissten anderen IDE's, 
Compiler frei wählbar (!!), 64Bit-fähig, plattformunabhängig weil Java 
(ich muss immer wieder lachen wenn C++-Programmierer das selbe behaupten 
-- wohl noch nie eine .exe oder .dll auf Linux ausprobiert, wa ;-) ) und 
spgar recht stabil (weil: Java).

Einziges Manko: avr-gcc muss selbst eingeknotet werden ... is aber kein 
Ding, wenn der Compiler eingestellt und die Makefile ausgewählt is zeigt 
dir NB sogar Makros und #defines an die nichtmal das ach-so-tolle 
Eclipse kennt ;-), zudem wird praktisch alles über Tooltips und Popups 
ergänzt (bei Mircoz0ft heisst das "Intellisense", Eclipse kennt das 
scheinbar garnicht oder nur sehr bruchteilig)

Autor: 900ss D. (900ss)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Name wrote:

> Ding, wenn der Compiler eingestellt und die Makefile ausgewählt is zeigt
> dir NB sogar Makros und #defines an die nichtmal das ach-so-tolle
> Eclipse kennt ;-), zudem wird praktisch alles über Tooltips und Popups
> ergänzt (bei Mircoz0ft heisst das "Intellisense", Eclipse kennt das
> scheinbar garnicht oder nur sehr bruchteilig)

Schade, dass du dich bei Eclipse so wenig informiert hast und dann dein 
Halbwissen hier verbreitest. Es stimmt nicht, was du schreibst. Ich will 
nicht sagen, dass bei Eclipse alles SOO toll ist, aber alles was du 
aufführst funktioniert auch bei Eclipse (z.B. die erwähnten #defines und 
Makros). Ach ja, Eclipse ist auch Plattformunahängig durch Java. Hab die 
Windows und Linux version schon intensiv genutzt. Gehen beide gut.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.