Forum: Compiler & IDEs Hat jemand ein Beispielprojekt für das neuste AVR Studio?


von Assembler und C Code gemischt, mit Debugging (Gast)


Lesenswert?

Hallo zusammen,

ich sitze jetzt schon 2 Stunden vor dem Rechner und hab noch keine Zeile 
Pogrammiert.

Alles was ich will ist ein Beispielprojekt, mit dessen Hilfe ich den GNU 
Assembler Schrittweise Debuggen kann und zwar so, dass das AVR Studiuo 
alle nötigen Kompilereinstellungen vornimmt:

Leider haben meine EInträge der Custom Compilation Options
( im Avr Studio ):
-Wa,-gstabs

und den Eintrag im *.S File:
stabs  "",100,0,0,xmit
.stabs  "suart.s",100,0,0,xmit

nichts gebracht,

bitte um eure Unterstützung

von Peter D. (peda)


Lesenswert?

C und Assembler mischen ist schon die hohe Schule der Programmierung.

Da muß man schon recht fit in den Internas (Parameter passing, 
Registerverwendung) des AVR-GCC sein und in Assembler erst recht.


Ich würde daher erstmal klein anfangen.

Z.B. AVR-Studio mit dem hauseigenen Assembler 2.

Oder pures C mit WINAVR.


Peter

P.S.:
Wenn man dann genügend fit in C ist, daß man es könnte, hat man 
plötzlich gar keine Lust mehr, Assembler und C zu mischen.

von Assembler und C Code gemischt, mit Debugging (Gast)


Lesenswert?

Hallo,

ich hab ja bereits Sourcen vorliegen, und will eben darin Rumsteppen:

http://elm-chan.org/docs/avrlib/avrfft.zip

Alles was ich brauche ist ein geeignetes Makefile oder jemand der Kurz 
ein Beispielprojekt daraus macht

Gruß Stema

von Peter D. (peda)


Lesenswert?

Der Link funktioniert nicht.

Um überhaupt erstmal mit der kompletten Toolchain warm zu werden, eignet 
sich komplexer fremder Code mit Abstand am schlechtesten.

Bring erstmal ein simples "LED an" zum Laufen.


Peter

von Assembler und C Code gemischt, mit Debugging (Gast)


Lesenswert?

Der Link funktioniert,

Einfach in den WWW-Explorer kopieren und NICHT anklicken.
LED hab ich schon tausende zum blinken gebracht. Ist mir vom prinzip her 
auch egal.
Mir reicht auch ein Projekt wo ne LED blink. Ich will eben *.C und *.S 
Files mischen und debuggen.

Alles was ich brauche ist ein Beispiel mit Avr Studio

Gruß Stema

von Peter D. (peda)


Lesenswert?

Assembler und C Code gemischt, mit Debugging wrote:

> LED hab ich schon tausende zum blinken gebracht. Ist mir vom prinzip her
> auch egal.

Sorry, "Beispielprojekt" klingt erstmal nach Greenhorn.


> Mir reicht auch ein Projekt wo ne LED blink. Ich will eben *.C und *.S
> Files mischen und debuggen.

Damit kann ich nicht dienen. Ich hab einmal versucht Inline Assembler zu 
machen und bin damit dermaßen furchtbar auf die Fresse gefallen, nie 
wieder (Irgendwie hatte sich das I2C verhakt und ich hab, weil unter 
Zeitdruck, nen Timeout aufgesetzt, der das I2C reenabled. Psst, nicht 
weitersagen).

Ich mache nun entweder pure Assembler mit voller Kontrolle über alle 
Adressen und Register (z.B. Bootloader) oder pure C mit voller Abgabe 
der Ressourcenverwaltung an den Compiler.


Ich habe gemerkt, daß man mit etwas Nachdenken, d.h. Programmablauf 
umstellen, fast immer die CPU-Last besser verteilen kann, so das 
Assembler garnicht mehr nötig ist.


Peter

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Inline asm ist ja auch was komplett anderes als separate Assembler-
Dateien.  Der Inline-Assembler ist mächtig, aber ziemlich komplex
sich da einzuarbeiten.

Aber ich fürchte, der OP hat mit AVR Studio dafür einfach mal schlechte
Karten.  Ein ,,Beispielprojekt'' dafür gibt's einfach nicht.  Mit
DWARF-2 geht's nicht, weil die binutils da 'ne Meise haben und im
Assembler keine Zeilennummerninformationen geben.  Das müsste mal
jemand reparieren -- vorzugsweise natürlich jemand, der den nötigen
Leidensdruck hat, sowas auch benutzen zu wollen.  Via stabs und COFF
würde es funktionieren, aber erstens muss man dann mit den Macken
des COFF-Formats leben, und zweitens dürfte der primitive Makefile-
Generator von AVR Studio das kaum freiwillig generieren wollen, man
müsste sich also zumindest die Mühe machen, mit Mfile ein eigenes
Makefile aufzusetzen.  Die dritte Variante wäre der GDB, der mit
stabs mit beiden Quellsprachen klar kommt.

Aber normalerweise reagiere ich nicht auf Trolle, die keinen auch
nur ansatzweise vernünftigen Namen eingeben und der Meinung sind,
wenn sie ihr Problem innerhalb von drei Stunden dreimal posten, um
den Leuten nur gehörig auf den Wecker zu gehen, hätten sie bessere
Chancen auf Hilfe.

Peter schrieb:

> Ich habe gemerkt, daß man mit etwas Nachdenken, d.h. Programmablauf
> umstellen, fast immer die CPU-Last besser verteilen kann, so das
> Assembler garnicht mehr nötig ist.

Dem kann ich allerdings zustimmen.

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.