www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR Studio + Simulation


Autor: Neuling (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

mal kurz eine andere Frage!

wie kann ich es beinflußen, dass ich bei der Simulation mein in C
geschriebenes Programm sehe und nicht assembler, welcher von C in
Assembler von Compiler übersetzt wurde?

Es ist so, dass bei manchen Projekten wenn ich auf Compelieren und Run 
drücke, kommt ein C-Programm in Simuklation. Bei anderen Projekten kommt 
dann Assembler für die Simulation. Was muss ich einstellen damit immer 
nur C-Programm in Simulation erscheint.

Gruß und Danke

Autor: Neuling (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo bin ich etwa der Enzige mit diesem Problem?

Autor: Gregor B. (gregor54321)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
guckst Du Anhang...

Autor: Neuling (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
ja so sollte es sein,

aber bei mir sieht es anders aus!

siehe Anhang

Autor: PP (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ausgabeformat des linkers richtig?
(muss irgendwas mit d für debuig sein, kann grad nicht nachschauen. Hex 
geht nicht)

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Neuling wrote:
> ja so sollte es sein,
>
> aber bei mir sieht es anders aus!
Du hast Dir Gregors Posting nicht genau genug angeschaut! Du sollst auf 
"Toggle Disassembler Window" klicken, damit das Disassembler-Fenster 
verschwindet. Du kannst aber auch ganz einfach zwischen dem 
Disassembler-Window und der .c-Datei wechseln, indem Du einfach auf den 
entsprechenden Tab unten klickst...

Autor: Neuling (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
meinst du das hier? Siehe Anhang!

Bin irgend wie überfragt!!

Autor: Neuling (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich habe Gregors Posting schon verstanden aber, wenn ich dort TAB 
umschalte dann kommt bei mir nur das C-Programm mehr nicht und wenn ich 
im C-Programm auf z.B. Step Into drücke, dann passiert nichts!!!

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da ist bei Dir aber auch irgendwas schiefgelaufen. Schau mal in Dein 
Message Window (Posting von 13:05): Da steht "The object file does not 
contain source code information". Wie sieht es denn bei den Projekten, 
mit denen es nicht klappt, überhaupt mit Fehler- bzw. Warnmeldungen aus 
(Build-Fenster)?

Autor: Neuling (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
oh genau so!
Aber das verstehe ich nicht was kann da Schief gelaufen sein?

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Neuling wrote:
> oh genau so!
Genau so wie was?

Autor: Neuling (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
genau die gleiche Fehlermeldungen meine ich

Autor: Neuling (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
was bedeutet dieser Fehler:
Coordinator: The object file does not contain source code information.


Ich meine ich verstehe den Satz aber, keine Ahnung warum es so ist?!

Kann mir jemand helfen?

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Neuling wrote:
> was bedeutet dieser Fehler:
> Coordinator: The object file does not contain source code information.
Das bedeutet, dass die Objekt-Datei keine Source-Code-Informationen 
enthält...

Du hast mich oben aber anscheinend nicht richtig verstanden (bzw. mein 
Posting nicht komplett gelesen): Ich habe extra geschrieben, Du sollst 
erzählen, ob (und wenn ja, welche) Fehler- bzw. Warnmeldungen im 
Build-Fenster auftauchen. Das was Du da schreibst, steht im 
Message-Fenster und das kann ich in Deinem Bildchen selber lesen...

Autor: Neuling (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oh Sorry,

Das kommt beim compilieren heraus!

Build started 26.11.2007 at 16:42:31
-------- begin --------
avr-gcc (GCC) 4.1.2 (WinAVR 20070525)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is 
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR 
PURPOSE.

Compiling: 1Versuch.c
rsuch.o

Linking: 1Versuch.elf
1Versuch.elf -Wl,-Map=1Versuch.map,--cref    -lm

Creating load file for Flash: 1Versuch.hex
avr-objcopy -Oihex -R .eeprom 1Versuch.elf 1Versuch.hex
avr-objcopy: 1Versuch.hex: Invalid bfd target
make: *** [1Versuch.hex] Error 1
Build succeeded with 0 Warnings...



das ist das Programm:

#include <avr/io.h>


int main(void)
{
    /* Setzt das Richtungsregister des Ports A auf 0xff
       (alle Pins als Ausgang): */
    DDRB = 0xff;

    /* Setzt PortA auf 0x03, Bit 0 und 1 "high", restliche "low": */
    PORTB = 0x00;

}

Gruß und Danke

Autor: Neuling (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das ist auch ein komischer Fehler habe ich bisher nicht gehabt:
make: *** [1Versuch.hex] Error 1

Autor: Neuling (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann sein dass ich zum compelieren Administratorenrechte brauche?
Bin kapput!

Help!!

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So, da bin ich wieder...

Das oben sieht nach einem Linker-Fehler aus. Da stimmt vermutlich 
irgendwas in Deinem Code nicht!

> das ist auch ein komischer Fehler habe ich bisher nicht gehabt:
> make: *** [1Versuch.hex] Error 1
Den hast Du wahrscheinlich schon gehabt, nur übersehen... Bist aber 
nicht der erste, dem das passiert. Genau deswegen hatte ich nämlich 
gefragt, was im Build-Fenster steht.

EDIT:
OK, an dem bisschen Code wirds wohl nicht liegen. Aber möglicherweise an 
den Projekt-Einstellungen. Ist die korrekte Ziel-CPU in den 
Configuration Options eingestellt?

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Neuling wrote:
> Kann sein dass ich zum compelieren Administratorenrechte brauche?
> Bin kapput!
Normalerweise nicht...

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaaah, versuchs mal bitte mit einem Dateinamen, der nicht mit einer 
Ziffer beginnt! Das dürfte die Ursache für das "invalid target" sein. 
Gewöhn Dir auch besser gleich wieder ab (auch wenn WINDOOF es zulässt), 
irgendwelche Bezeichner zu benutzen, die mit einer Ziffer beginnen. 
Normalerweise sollten Namen immer mit einem Buchstaben oder einem 
Underscore ("_") beginnen.

Autor: Neuling (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Sorry das ich mich so lange nicht gemeldet habe. War leider verhindert.

@Johannes M.
Danke für dein Tipp mit Zahlen am Anfang. Also es hat funktioniert.

Ein kleines Projekt hat bei mir funktioniert, jetzt versuche ich dieses 
Projekt, siehe Anhang, zu simulieren, leider genau das gleiche Problemm.

Irgendwie verstehe ich das nicht ganz.

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tja, bei .rar hört meine Kooperationsbereitschaft leider auf...

Autor: Neuling (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Bei ZIP vielleicht

oder

Autor: Neuling (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
oder .c

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Neuling wrote:
> oder .c
Warum nicht gleich so? Aber die (Fehler-)Meldungen aus dem Build-Fenster 
solltest Du noch schicken...

Abgesehen davon sind einige Sachen in dem Code veraltet und werden nur 
noch mit viel gutem Willen von aktuellen WINAVR-Versionen unterstützt. 
Dazu gehört die nicht mehr existente signal.h und das Makro "SIGNAL", 
sowie die delay.h, die mittlerweile im Verzeichnis "util" schlummert und 
nicht mehr in "avr"...

Autor: Neuling (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Oh ok, nicht gut! Muss irgendwie umschreiben! Ohee!

NAch Compelieren und Run steht folgendes!

Build started 27.11.2007 at 08:52:32
-------- begin --------
avr-gcc (GCC) 4.1.2 (WinAVR 20070525)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is 
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR 
PURPOSE.


Size before:
AVR_SPS.elf  :
section    size      addr
.text      2644         0
.bss         21   8388704
.stab      3252         0
.stabstr   2492         0
Total      8409



Creating load file for EEPROM: AVR_SPS.eep
avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" \
    --change-section-lma .eeprom=0 -O ihex AVR_SPS.elf AVR_SPS.eep
c:\WinAVR-20070525\bin\avr-objcopy.exe: there are no sections to be 
copied!
c:\WinAVR-20070525\bin\avr-objcopy.exe: --change-section-lma 
.eeprom=0x00000000 never used
make: [AVR_SPS.eep] Error 1 (ignored)

Size after:
AVR_SPS.elf  :
section    size      addr
.text      2644         0
.bss         21   8388704
.stab      3252         0
.stabstr   2492         0
Total      8409



-------- end --------
Build succeeded with 0 Warnings...



Das Fenster was danach erscheint Siehe oben!

Danke für deine Mühe!!!

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> make: [AVR_SPS.eep] Error 1 (ignored)
Auch wenn da steht, dass der Fehler ignoriert wird, so ist er doch 
fatal. Es wurde nämlich keine Objektdatei erzeugt, und dementsprechend 
gibts auch nix zu simulieren...

Autor: Neuling (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das heist das ich diesen Code überarbeiten muss um es simulieren zu 
können? Denke ich das jetzt richtig!

Oh man ich wollte eigetlich über diesen Code ganz vertshen wie es 
funktioniert!

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Neuling wrote:
> das heist das ich diesen Code überarbeiten muss um es simulieren zu
> können?
Zumindest die o.g. Kleinigkeiten sollten schon geändert werden. Hab grad 
keine Zeit, mir den kompletten Code en détail anzusehen, aber wenigstens 
die signal.h rauswerfen, "SIGNAL" durch "ISR" ersetzen (die Vektornamen 
sind zwar auch veraltet, werden aber noch unterstützt) und den Pfad von 
"avr/delay.h" nach "util/delay.h" ändern. Dann sollte es zumindest keine 
Kompatibilitätsprobleme mehr geben. Ob's dann läuft, weiß ich aber auch 
nicht...

Autor: Neuling (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok danke für den Tipp

Autor: Neuling (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also ich habe jetzt den Code so geändert, wie du es mir gesagt hast. Das 
oben genannte Problemm ist nicht mehr da. Der Simulationsfenster ist 
immer noch der gleiche, aber jetzt schreibt der Compiler folgendes hin!!

Was kann das bedeuten? Sorry das ich nerve.


Build started 27.11.2007 at 10:25:13

-------- begin --------
avr-gcc (GCC) 4.1.2 (WinAVR 20070525)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is 
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR 
PURPOSE.


Size before:
AVR Memory Usage
----------------
Device: atmega8

Program:     652 bytes (8.0% Full)
(.text + .data + .bootloader)

Data:         21 bytes (2.1% Full)
(.data + .bss + .noinit)




Creating load file for EEPROM: AVR_SPS.eep
avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" \
    --change-section-lma .eeprom=0 --no-change-warnings -O ihex 
AVR_SPS.elf AVR_SPS.eep || exit 0
c:\WinAVR-20070525\bin\avr-objcopy.exe: there are no sections to be 
copied!

Size after:
AVR Memory Usage
----------------
Device: atmega8

Program:     652 bytes (8.0% Full)
(.text + .data + .bootloader)

Data:         21 bytes (2.1% Full)
(.data + .bss + .noinit)



-------- end --------

Build succeeded with 0 Warnings...

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nun, das Projekt ist offensichtlich für einen AT90S2313 geschrieben 
(steht zumindest im Kopf des Programmtextes). Wenn Du das Projekt 
komplett übernommen hast (ohne irgendwas an Projektdatei oder Makefile 
zu ändern), dann ist es auch für den 90S2313 compiliert worden. Dann 
kannst Du aber auch nicht erwarten, dass das beim Simulieren mit einem 
ATMega8 funktioniert. Der ist schließlich ganz was anderes...

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.