Forum: Mikrocontroller und Digitale Elektronik Keil Assembler und 80C51CC01


von Sebastian (blutengel1986)


Lesenswert?

Hallo,

ich bin mal wieder ein bischen am ruum probieren mit dem Atmel 
80C51CC01.
An sich läuft das Teil auch wunderbar, aber der Keil Assembler macht mir 
Probleme. Ich kann die ganzen SFR´s nur über ihre Adressen ansprechen. 
Genauer gesagt geht es um das Register AUXR. Will ich z.B. das Register 
mit
1
MOV A,AUXR
2
MOV P1,A
auslesen und auf eine HEX Anzeige anzegen laseen kommt die Fehlermeldung

 error A45: UNDEFINED SYMBOL (PASS-2).

Wenn ich dann die t89c51cc01.inc einfügen will mit
1
$INCLUDE (t89c51cc01.inc)
dann kommt die Fehlermeldung

t89c51cc01.inc(126): error A10: ATTEMPT TO DEFINE AN ALREADY DEFINED 
SYMBOL


Ich bin etwas am verzweifeln. Früher mit dem 80C517 un der reg517.inc 
hat das auch immer funktioniert. Habe ich vielleicht etwas übersehen?

Jetzt schon einmal Danke

VG

Sebastian

von Bernd N. (_bn_)


Lesenswert?


von Sebastian (blutengel1986)


Angehängte Dateien:

Lesenswert?

Hi,

Danke erstmal. Das ging auch genau in die richtige Richtung.
Allerdings musste im Keil nur ein Haken entfernt werden(siehe Bild), mit 
dem $NOMOD51 selber funktionierte nicht. Da muss man erstmal drauf 
kommen.
Ich denke wenn der Haken gesetzt ist kan man nur die Standardt SFR`s 
eines 8051 ansprechen. Deshalb dann auch die Fehlermeldung

error A10: ATTEMPT TO DEFINE AN ALREADY DEFINED
SYMBOL

von Bernd N. (_bn_)


Lesenswert?

Sebastian schrieb:
> Ich denke wenn der Haken gesetzt ist kan man nur die Standardt SFR`s
> eines 8051 ansprechen. Deshalb dann auch die Fehlermeldung

So ist es.
Ich habe mich an $NOMOD51 erinnert, den Keil ASM habe ich vor 30 Jahren 
das letzte Mal unter DOS verwendet, lange her.

Bei dem https://plit.de/asem-51/ ist es auch so.

von Thomas Z. (usbman)


Lesenswert?

Sebastian schrieb:
> Allerdings musste im Keil nur ein Haken entfernt werden(siehe Bild), mit
> dem $NOMOD51 selber funktionierte nicht. Da muss man erstmal drauf
> kommen.

$NOMOD51 muss nur an den am Anfang vor dem $include kommen dann funkt 
das auch. Der Haken macht letztendlich nichts anderes nur wir dann 
NOMOD51 beim Aufruf des Assemblers in der Kommandozeile mitgegeben. 
Siehe auch die Zeile mit dem Assembler Control String

von Bernd N. (_bn_)


Lesenswert?

Thomas Z. schrieb:
> $NOMOD51 muss nur an den am Anfang vor dem $include kommen dann funkt
> das auch.

Ist in dem gegebenen Link auch so gezeigt.

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.