PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Hilfe AVR Studio Problem



Syken
12.08.2005, 14:59
Hallo Leute ich habe hier folgende Fehlermeldung und bin am verzweifelt da ich das Prob nicht finde warun AVR studio immer auf einen nicht existierenden Ordner zugreifen will:

Building project...
FATAL ERROR: Cannot open output file c:\dokumente und einstellungen\michael bu¯\test.hex: No such file or directory


Das rote Zeichen müßte ein ß sein.

LameM
12.08.2005, 22:14
du darfst keine umlaute oder sonderzeichen im pfad/dateinamen verwenden, sonst schneidet der assembler das ab und kann die datei nicht finden (hab mich auch mal tot gesucht, weil ich nen ä in dem dateinamen drinne hatte und der das nicht haben wollte)
bzw. wenn deine projekteinstellungen etwas verworren sind und du dort nur den richtigen pfad einträgst?

LameM

Syken
13.08.2005, 13:35
Problem gelöst und gleich das nächste Prob, nach den Assemblieren sagt mir das Prob kein Fehler gefunden wenn ich dann die Simulation starte, bekomme ich die Meldung "Unknown Opcode on this device", dabei wollte ich AVR Studio doch nur mit nem einfachen LED ein LED aus Prog testen :mad: Hier mein Testprog:

stop:
in r16,$16
cpi r16,1
breq Shift
jmp stop

Shift:
ldi r17,1
out $12,r17
in r16,$16
cpi r16,2
breq stop
cpi r16,3
breq stop
jmp Shift

Vermerk es sind zwei Taster angeschloßen an Port B, der Baustein is nen AT90S8515

mattmiksys
13.08.2005, 19:18
Hi Syken,
ich nähere mich gerade den AVRs, so finde ich alle Fragen rundum interessant.
Ist der JMP Befehl nicht Teil der Erweiterung der ATMEGA-Prozessoren? Bei AT90S8515 finde ich nur RJMP oder IJMP.
Grüße,
Matthias

Peter Dannegger
13.08.2005, 20:00
bekomme ich die Meldung "Unknown Opcode on this device"



Das stimmt nicht !

Da ist nämlich noch ne Zeilennummer mit bei.

Fehlermeldungen immer komplett posten !

Oder mal ins Listfile gucken.

Ich hab jedenfalls keine Lust zu raten, wo die Fehlermeldung hingehört.


Peter

Syken
14.08.2005, 14:22
So hab mal das gesamte Fenster Kopiert, leider zeigt mir AVR Studio keine Zeile an:

Loaded plugin STK500
Loaded partfile: C:\Programme\Atmel\AVR Tools\PartDescriptionFiles\AT90S8515.xml
AVR Simulator Please wait while configuring simulator...
AVR Simulator AT90S8515 Configured OK
Loaded objectfile: c:\prog\test.obj
AVR Simulator Unknown opcode on this device

Zusätzlich nochmal die Build Messages:

Building project...
AVRASM: AVR macro assembler 2.0.31 (build 58 Apr 21 2005 14:17:40)
Copyright (C) 1995-2005 ATMEL Corporation
Memory use summary [bytes]:
Segment Begin End Code Data Used Size Use%
---------------------------------------------------------------
[.cseg] 0x000000 0x00001c 28 0 28 unknown -
[.dseg] 0x000060 0x000060 0 0 0 unknown -
[.eseg] 0x000000 0x000000 0 0 0 unknown -
Assembly complete, 0 errors. 0 warnings

Syken
14.08.2005, 14:37
Fehler gerade noch gefunden Scheiß At90S8515, der unterstützt tatsächlich keinen JMP Befehl, hab jetzt nen MEGA32 genommen darauf läuft das Prog wunderbar und fehlerfrei.
Hab mal schnell nen Lauflich geprogt:

stop:
in r16,$16 ;lade Portaddrese 16 in Reg 16
cpi r16,1 ;prüfe ob Inhalt des Reg 16 = 1
breq Shift ;wenn ja springe zu Marke Shift
jmp stop ;springe zu Marke stop

Shift:
ror r18 ;schiebe Bits im Reg 18 nach recht
out $12,r18 ;schreibe Reg 18 in DataReg PortD
in r16,$16 ;lade Portaddrese 16 in Reg 16
cpi r16,2 ;prüfe ob Inhalt des Reg 16 = 2
breq stop ;wenn ja springe zu Marke stop
cpi r16,3 ;prüfe ob Inhalt des Reg 16 = 3
breq stop ;wenn ja springe zu Marke stop
cpi r18,0 ;prüfe ob Inhalt des Reg18 = 0
breq Load ;wenn ja springe zu Marke Load
jmp LTime ;springe zur Marke LTime

LTime:
ldi r30,0x10 ;lade Wert 0xFF in Reg 30
ldi r31,0x00 ;lade Wert 0xFF in Reg 31

Time:
sbiw r30,1 ;ziehe von Regpaar 31:30 1 ab
cpi r31,0 ;prüfe ob Inhalt des Reg 31 = 0
breq Ver ;wenn ja springe zu Marke Ver
jmp Time ;springe zu Marke Time

Ver:
cpi r30,0 ;prüfe ob Inhalt des Reg 30 = 0
breq shift ;wenn ja springe zu Marke Shift
jmp Time ;springe zu Marke Time

Load:
ldi r18,0x80 ;lade Wert 128 in Reg 18
out $12,r18 ;schreibe Reg 18 in DataReg PortD
jmp LTime ;springe zu Marke LTime