mikrocontroller.net

Forum: Compiler & IDEs Neue AVR-Studio mit AVR-GCC Integration


Autor: Peter Fleury (pfleury)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ateml hat eine neue Version von AVR Studio veröffentlicht, die AVR-GCC
(WinAVR) voll integriert, d.h. editieren, compilieren und debuggen sind
unter der AVR Studio Oberfläche direkt möglich, ohne einen externen
Editor zu verwenden. Einzig WinAVR muss separat installiert werden.

Ist zwar eine Vorab-Version (RC1) funktioniert aber gut.

http://www.atmel.com/dyn/products/tools_card.asp?t...
-> AVR Studio 4.12 RC1 (build 452) (45 MB, updated 10/05)

Autor: Joline (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klasse, endlich eine IDE, mit der man auch debuggen kann.
Muss ich gleich mal probieren.

P.S. an die Besserwisser: Ja, ich habe von Insight gehört.

Autor: OldBug (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
...gibt ja auch noch emacs flame ;-)

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein Debugger, mit dem man sogar editieren kann. ;-)

Autor: (geloescht) (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
(Dieser Beitrag wurde geloescht)

Autor: Antigamberos (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

hab mit grosser Freude diesen Thread gelesen, das Update aufgespielt
und nun leider festgestellt dass nix mehr geht. Folgende Fehlermeldung
beim starten der Debugging Session: "Could not connect to JTAGICE
mkII." Equipment: USB-Kabel, MCU = AT90Can128

Laut Help->Release Notes and known Issues->known Issues kann es
vorkommen, dass: "Some users can not select any devices for debugging,
and/or the debug session will never start." Dies sei aufgrund
fehlerhafter DLL's und man sollte den neuesten MSXML Parser
installieren. Gesagt getan, nix passiert. Hat jemand das gleiche
Problem und eine Lösung?

Autor: Jens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe mir die neue Version installiert und gestartet. Das Fenster
lies sich nicht automatisch maximieren, es blieb oben ein Streifen
übrig. Nur manuell durch ziehen des Fensters konnte man es maximieren.
Bei Aktivierung des LCD-Panels stürzte die ganze Anwendung ab ->
vollständige Deinstallation, kein Bock auf so Software. Habt ihr
ähnliche Erfahrungen damit gemacht?

Jens

P.S.: Benutze WinXP SP2

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bitte diskutiert das mal außerhalb des GCC-Forums weiter (am
besten mit Atmel Norwegen selbst).

Autor: Jens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tschuldigung Herr Lehrer.

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da ich den avrgcc als Compiler im AVR Studio verwende kann ich ja hier
schreiben, dass in Zusammenarbeit mit dem avrisp von Atmel keinerlei
Probleme auftauchen. Alles lässt sich prima compilieren und das Flashen
der Controller klappt auch. Musste nur die Datenrate nach einem Update
der Firmware wieder hochstellen, da es sonst quälend langsam ging.
Endlich hat nun auch das Rumgemehre mit Makefiles ein Ende, diese
Arbeit nimmt einem das Studio ab.
Was ich noch nicht gefunden habe ist das Compiler Flag (CSTANDARD).
Genutzt wird glaube ich der C99 Mode, zumindest gibt die Fehlermeldung
vom avrgcc das so an, wenn ich folgendes Konstrukt nutzen möchte:

for (int i=0; i<2; i++);

So definiere ich mir die Laufvariablen halt außerhalb, auch kein
Beinbruch. Ich hoffe, dass er eher gnu99 nutzt, da der oben genannte
Mode zumindest laut makefile nicht komplett implementiert sein soll.

Dem Compileraufruf kann ich diese Info nicht direkt entnehmen:

avr-gcc  -mmcu=at90can128 -Wall -gdwarf-2 -O0 -funsigned-char -
funsigned-bitfields -fpack-struct -fshort-enums -Wp,-M,-MP,-MT,can.o,-
MF,dep/can.o.d  -c   ../can.c -o can.o

Die Option Export-Makefile erzeugt ein Makefile, dass diesen Eintrag
nicht enthält.

Positiv ist, dass das AVR Studio als Editor wesentlich besser geeignet
ist als das PN.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Genutzt wird glaube ich der C99 Mode, zumindest gibt die
> Fehlermeldung vom avrgcc das so an, wenn ich folgendes Konstrukt
> nutzen möchte:

Er wird eben gerade nicht genutzt, daher eine Fehlermeldung dafür.
Im C99-Modus würde ein derartiger Konstrukt akzeptiert.

Autor: Roland Schmidt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einfach zu den Custom-Options -std=gnu99 hinzufügen, dann wird auch
obiger Konstrukt akzeptiert.

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Besten Dank :)

Autor: remo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe heute die beiden aktuellsten Versionen
AVR Studio 4.12.452 und
WINAVR 20050214 auf meinem neuen "blanken" XP-Rechner installiert.
C-Demoprograemmchen klappt auf anhieb, aber

beim Sourcecode Debuggen mit dem Simulator in der IDE kann ich die
Vaiablen nicht ansehen, er behaupet immer "out of Scope".

Wollte jetzt nicht in der neuen sauberen Installation rumfummeln.
Kennt einer die Lösung für mein Problem?
Hat das noch immer mit den .coff files zu tun. Mich wundert, daß dieses
Thema nicht automatisch mit dem neuen AVR Studio gelöst ist.

P.S.: hab mich bislang beim AVR mit Assembler rumgeschlagen und wollte
nun die gelegenheit ergreifen....

Danke für eure Hilfe
Remo

Autor: OldBug (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"out of scope" sind meistens Wegoptimierte Variablen. Möglicherweise
hat der Compiler erkannt, daß er die Variable in einem Register halten
kann...

Autor: Unbekannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zum Debuggen unbedingt alle Optimierungen ausschalten. Sonst ist
debugging praktisch unmöglich, da das Kompilat praktisch nichts mehr
mit dem ursprünglichen Source-Code zu tun hat.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danach dann komplett nochmal debuggen, weil der fertige Code
mit dem nichtoptimierten praktisch nix mehr zu tun hat...

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zumindest Logikfehler bekommt man so aus dem Code. Fehler des Compilers
bzw. syntaktische Fehler des Anwenders (dieses Gerammel mit volatile &
Co) kann man so halt nicht debuggen. Auf jeden Fall ist man so schon
mal auf dem halben Weg zum lauffähigen Programm.

Autor: Remo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also zunächst werd ich mal ohne Optimizer compilieren, um überhaupt mal
die Logigfehler raus zu bekommen. Daß dann vor allem Timing Probleme
übrigbleiben, weil der Code nach dem Optimizer wieder ganz anders
aussieht ist mir klar.

Gibt es in der IDE irgendwie einen Switch für DEbug oder OPtimize, oder
muß man immer in den Compileroptionen in den Flags rumfummeln.
Da gibts doch bestimmt irgendwo einen Targetswitch, nur wo?

Danke und ciso
Remo

Autor: Ithamar Garbe (antimon)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auf den Tag hab ich seit Ewigkeiten gewartet - endlich mit dem AVR
Studio in C Programmieren - ausgezeichnet!

Gibts eine Möglichkeit, jetzt auch mit dem AVR Studio über einen
selbstgebauten ISP-Programmer den IC zu beschreiben? Oder muss das
immer noch umständlich per PonyProg gemacht werden?
WinAVR ist ja in AVR Studio eingebunden, kann man das dann auch zum
Programmieren nehmen?

Sorry, die Frage ist vielleicht ein bisserl blöd, aber ich bin mit den
ganzen Programmiermöglichkeiten noch nicht so durchgestiegen.

Übrigens: AVR Studio kann einen Chip aber nicht in Echtzeit simulieren
oder? Wenn ich z.B. einen Ausgang mit 1 Hz an-/ausschalte (z.B. für
eine blinkende Lampe), wird das nicht als "Blinken" bei den Ports
dargestellt - eine Zustandsänderung wird nur angezeigt, wenn ich die
Simulation pausiere. Ist das normal so, oder liegt es an meinen
Einstellungen? Bei anderen µC-Umgebungen bin ich es gewohnt, das Ganze
in "Echtzeit" angezeigt zu bekommen...

Autor: mthomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
AVR-Studio unterstuetzt nicht direkt Selbstbaudongels, man kann aber
relativ einfach Aufrufe von avrdude in das "Tools-Menue" einbinden
und diese an "Keyboard-Shortcuts" binden. Ist dann auch recht bequem.
Hatte das in den "vor STK500-Zeiten" so gemacht. Beispiele vgl.
cmd-Dateien im Sourcecode-Archiv zu "Eversmith":
http://www.siwawi.arubi.uni-kl.de/avr_projects/eve...

Soweit erinnert, kann man Zustaende loggen (bisher selbst aber nicht
genutzt). Eine so schicke Darstellung wie sie Keil in uVision bietet,
habe ich bisher auch nicht gefunden. Wenn es ums "ausmessen" von ein
paar Laufzeiten geht: Es gibt eine Stopuhr. Breakpoints setzen und
verstrichende Zeit an der Stopuhr ablesen. Simulatortakt so einstellen
wie bei Zielhardware nicht vergessen. Simulation ist nicht
"Echtzeit", aber der Zeitberechnung liegt die Taktrate und Anzahl der
Zyklen/Befehl des "realen" Systems zugrunde.

Autor: Ithamar Garbe (antimon)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ah okay... weil grad das Stichwort µVision fällt - mit dem programmiere
ich nämlich gerade an einem C164 für ein Praktikum - dort kann man ja
eigene Testroutinen schreiben, z.B. simuliert man einen an die serielle
Schnittstelle angeschlossenen PC, der gewisse Daten sendet. Geht das mit
AVR-Studio auch irgendwie?

Zum Debuggen wäre das nicht praktisch, z.B. zu sagen ich drück nen
Taster für 1s, dann schalte ich nach 5s einen Schalter ein, ... so wie
wenn ich das Programm über reale Schalter steuern würde...

Autor: edvdoctor (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier kann man noch eine etwas neuere Version herunterladen.

http://www.atmel.no/beta_ware/

Autor: Florian Schwertnitzer (schwerflo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im AvrStudio lassen sich Plugins einbinden (z.B. für das STK und LCD)
Ich würde gern selbst was dafür schreiben. Kennt jemand die API, gibt
es darüber Informationen? Wenn ja, wo finde ich das, hat ATMEL das
veröffentlicht?

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Kennt jemand die API, gibt
> es darüber Informationen?

Frage am besten bei avr at atmel.com nach.

Autor: pebisoft (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo, wie wird denn die make erstellt mit dem neuen avrstudio.
mfg pebisoft

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich habe mir gerade das neue AVR Studio installiert. Es funktioniert
alles klasse. compilieren in gcc..usw.

kann ich irgendwo nach dem compilieren sehen wie viel speicher im Flash
belegt wird? so wie das bei assembler ist?
oder muss ich jedes mal erst ins Hex file gucken

Gruß Matthias

Autor: Peter Fleury (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"kann ich irgendwo nach dem compilieren sehen wie viel speicher im
Flash
belegt wird?"

In der neuesten AVR Studio Version Build 456 funktioniert das:
http://www.atmel.no/beta_ware/

Autor: Patrick Dohmen (oldbug) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einrücken kann das Studio aber nicht...

Autor: Peter Fleury (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Einrücken kann das Studio aber nicht..."

TAB rückt ein, <shift>TAB nach links

Text markieren + TAB -> markierter Text eingerückt.

Ueber Tools -> Options -> Editor  kann man einstellen wieviel ein TAB
einrücken soll und ob TABs durch Space ersetzt werden sollen.

Autor: Patrick Dohmen (oldbug) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das bestätigt ja nur meine Aussage: das Studio kann nicht einrücken.
Wenn ich auf die Tabulatortaste drücke, dann mache ich das ja, und ich
bestimme auch, wie weit eingerückt wird (1 x Tab, 2 x Tab?)...

Autor: Alexander (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielleicht hat er automatisches einrücken gemeint, das sollte jeder gute
Editor können ...

Autor: Helmut Scholz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Programm-Crash bei Debugging im Simulator von AVR-Studio bei
gcc-Projekten.

Zugegeben ich bin relativ neu hier. Habe das problem, daß mein
AVRStudio crashed mit einem Speicherfehler, wenn ich versuche WinAVR
(gcc)-Projekte zu deubggen.

Kann da jemand helfen?

Vielen Dank und viele Grüße

Autor: mthomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Irgend eine Fehlermeldung?
dwarf-2 oder coff?
Simulator und gcc-Parameter auf Controller eingestellt?

Autor: halmut (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich denke ich habe alles richtig eingestellt,

D. Watson meldet: Dr. Watson konnte keine Verbindung mit dem Prozess
herstellen. Möglicherweise wurde der Prozess beendet
Von Windows2000 zurückgegebener Fehlercode=87
Falsche Parameter

Ich verwende dwarf-2

Vielen Dank

Autor: markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lässt sich mit der neuen Software auch der AT91SAM7S64 programmieren?

Autor: 123 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich denke nicht. ist kein avr sonder amr7

Autor: Markus Rudolf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Weiß jemand ob bei der 4.12er final (Build 460) eine neue Firmware für
den JTAG ICE mit bei ist ? In den Release Notes steht nur was vom JTAG
ICE MKII, ich hab so ein geclontes JTAG ICE und muss zum Updaten
jedesmal löten. Ich hab aktuell die Firmware 0x7E auf dem ICE. Das
Studio jammert aber die sei veraltet.

Hat jemand schon upgedated und kann mal gucken welche Revision da jetzt
aktuell mit bei ist ? Würde mir evtl. Löterei sparen.

Danke

Markus

Autor: Asterix-007 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo
@Markus: bei mir scheint die 0x7f drauf zu sein.

wieso must du löten? Bei meinem OLIMEX ging das a) automatisch und b)
ohne löten!!!

Schau mal in die Hilfe, unter diesem Punkt "JTAG ICE Manual Firmware
Upgrade" werden sie geholfen..

Viel Glück!!

Asterix-007

Autor: Markus Rudolf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Asterix-007: Danke fürs Nachsehen. Ich hab eine noch ältere Version als
den Olimex, und da ist noch kein geänderter Bootloader drin. Updates
muss ich da immer in 2 Schritten machen und dazu temporär den JTAG
Anschluss in einen STK200 Anschluss umlöten damit ich den Mega16 vom
ICE neu proggen kann. Ich bastel dann mal...

Markus

Autor: Markus Rudolf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit dem geupdateten JTAG ICE geht's dann auch.

Danke nochmal

Markus

Autor: mgiaco (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann man beim neuen AVR-Studio auch irgendwie das Ponyprog als
Programmer einbauen? oder geht das auch irgendwie anders? Ich habe halt
diese Parallel-Kabel.

Ich kenne bis jetzt nur Ponyprog.

mfg mathias

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.