Forum: Compiler & IDEs AVR-Studio 4 will nicht so wie ich


von Sören T. (stimmy)


Lesenswert?

Hallo,
ich bin ganz neu, was µC. und den Kram angeht.
Programmiererfahrungen habe ich bis jetzt nur in Basic(für DOS).

Jetzt wolle ich anfangen ASM zu lernen.
Einige Vorurteile über Assembler sind schon verflogen.
ASM ist auch nicht mein Problem.

Ich habe AVR-Studio 4.18 SP1 drauf.
Wenn ich jetzt folgendes Programm abtippe und auf BUILD drücke, kommt 
immer eine Fehlermeldung, das irgendeine *.hex Datei(das waren doch die, 
die Pony auf den Chip zieht, oder?) nicht schreiben konnte.

Programm:
1
.include "tn2313def.inc"
2
3
ldi r16, 0xFF
4
out DDRB, r16
5
ldi r16, 0b00000001 
6
ldi r17, 0b00000010
7
add r16,r17
8
out PORTB, r16
9
10
ende:    rjmp ende
Das Programm soll einfach den ganzen PortB auf Ausgang schalten, dann 
r16 den Wert 1 und r17 den Wert 2 zuweisen. Dann werden diese Beiden 
addiert und über den PortB ausgegeben(2LEDs).


Fehlermeldung:
1
FATAL ERROR: Cannot open output file F:\Dokumente und Einstellungen\S÷ren Timm\Eigene Dateien\ÁController-Programme\proj2313.hex: No such file or directory




Wahrscheinlich ist es ne Kleinigkeit, aber da ich noch gar keine 
Erfahrung habe, und es mein erster Anlauf ist, hoffe ich, dass mir einer 
Helfen kann.

Danke im Voraus!

von Jean P. (fubu1000)


Lesenswert?

Bei mir compilierst ohne Probleme.
Liegt wahrscheinlich am Verzeichniss Pfad. Lege mal dein Projekt unter 
z.B
F:\Test an und probiers nochmal.

Und gewöhne dir gleich von vorne herein an den Stackpointer zu 
initialisieren. Wird bei dem Programm nit gebraucht. Aber sobald jumps 
und dergleichen dazu komen brauchst du diesen.
1
   
2
   ldi r16, LOW(RAMEND)      ; LOW-Byte der obersten RAM-Adresse
3
   out SPL, r16
4
   ldi r16, HIGH(RAMEND)     ; HIGH-Byte der obersten RAM-Adresse
5
   out SPH, r16

Bzw. für deinen Attinity 2313 reicht:
1
   ldi r16, LOW(RAMEND)      ; LOW-Byte der obersten RAM-Adresse
2
   out SPL, r16


Gruß

von Sören T. (stimmy)


Lesenswert?

Jetzt geht es!
Ich glaube das ging nicht, da ich in dem Ordner-namen ein µ drin war.

In dem Verzeichnis geht es:
1
F:\CP\Licht2313


Danke für deine Hilfe!


MfG

Sören Timm

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.