Forum: Mikrocontroller und Digitale Elektronik Assembler Probleme


von Dieter Winter (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

Ich bin gerade dabei ein ganz einfaches Programm zu schreiben (LED soll
blinken). Ich arbeite mit C und zwar in CodeVision.
Mein Problem liegt nun darin, dass ich zwar das Projekt compilieren
kann, ohne Errors und ohne Warnings, jedoch sobald ich das Projekt auch
Assemblieren möchte, bricht er diesen Vorgang ab mit der Meldung
"Error(s) occured during assembly".
Wüsste nun gerne was hier falsch ist, also warum dies nicht
funktioniert.

danke und Gruß.

von johnny.m (Gast)


Lesenswert?

Also ich habs mal in CV eingegeben und läuft problemlos (no errors, no
warnings).

Man sollte sich übrigens entscheiden, ob man direkt die
Device-spezifische Headerdatei oder die allgemeine einfügt. Am besten
nur #include<io.h> und die Parameter unter 'Project / Configure'
korrekt einstellen (v.a. für den Chip). Der Compiler sucht sich über
io.h die jeweils korrekte Device-Header-Datei selber raus. Das
vermeidet Mehrfachdefinitionen. Das #include<90s4433> ist dann
überflüssig. Für die delay-Funktionen ist es übrigens elementar
wichtig, dass unter 'Project / Configure' die Taktfrequenz angegeben
ist.

Gruß

Johnny

von Dieter Winter (Gast)


Lesenswert?

Hallo,
Die Taktfrequenz habe ich unter Configure eingegeben. Bei meinem Fall
2Mhz.
Ich habe nun die Zeile #include <90s4433.h> entfernt, jedoch läufts bei
mir immer noch nicht.
Bei dir johnny.m läuft es problemlos? also wenn ich auf "compile the
Projekt" gehe habe ich auch (no errors, no warnings).
Bei dem Button "Make the Projekt" kommt allerdings die Fehlermeldung
und danach die Übersicht.
--> compiler (no errors, no warnings)
--> assembler: hier steht folgendes drin:

Creating   'led.eep'
Creating   'led.obj'
Creating   'led.lst'

Assembling 'led.asm'
Including  'led.vec'
Including  'led.inc'
led.asm(885) :
Assembly complete with 1 error

Deleting   'led.eep'
Deleting   'led.obj'

von johnny.m (Gast)


Lesenswert?

Also, ich hab's noch mal versucht. Habe ein neues Projekt aufgemacht,
Deinen Code 1:1 in eine neue Source-Datei kopiert, die Einstellungen
angepasst und dann mit 'Make the Project' das ganze durchgejagt.
Funktioniert auch beim zweiten Mal reibungslos. Müsstest dann mal in
der .asm- oder .lst-Datei nachschauen, was das für ein Fehler ist. Am
besten natürlich erst in der .asm-Datei Zeile 885...

Gruß

Johnny

von Dieter Winter (Gast)


Lesenswert?

hmm .asm-Datei Zeile 885 sieht meiner Meinung nach okay aus.
muss ja auch, da es bei dir funktioniert. Entweder ich steh grad voll
aufm Schlauch, oder hier ist irgendwas ganz mysteriös.
In diesem Fall muss ich ja schließlich auch nur die Taktfrequenz und
die  Ports ( In oder Out ) einstellen. Mehr Änderungen der
Standarteinstellungen muss ich ja nicht vornehmen, oder?

Danke und Gruß.

von johnny.m (Gast)


Lesenswert?

Wenn der richtige Chip (AT90S4433) eingestellt ist, sollte eigentlich
nichts schief gehen. Vielleicht mal ein Versuch: Neues (leeres) Projekt
aufmachen (ohne Generation Wizard!), die C-Datei einbinden und die
Einstellungen (Chip, Frequenz) manuell vornehmen. So hats bei mir
jedenfalls funktioniert.

Gruß

Johnny

von Dieter Winter (Gast)


Lesenswert?

Habe soeben ein neues Projekt erstellt, ohne Wizard.
Im projekt Ordner eine .c Datei erstellt. Darin mein Code eingefügt, in
CodeVision diese .c Datei als Source File eingebunden.
--> Wieder gleiche Fehlermeldung.

Als Chip habe ich: AT90S4433 und als Frequenz 2,000000 Mhz
eingestellt(sonst habe ich nichts verändert).

Gruß,

von johnny.m (Gast)


Lesenswert?

Das verstehe ich jetzt aber auch nicht... Ist das ne Vollversion von CV
oder die Eval? Ich hab nämlich die Vollversion. Vielleicht hat die Eval
da irgendwo ne Macke.

Gruß

Johnny

von Dieter Winter (Gast)


Lesenswert?

Das ist eine Registrierte gekaufte Vollversion :(
So ein M***. Ich hab immer so ein Glück ironie das bei mir immer so
leichte Probleme auftauchen.

Gruß

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.