Forum: Mikrocontroller und Digitale Elektronik Brauche Hilfe für MCS-51 compiler 2051


von chris (Gast)


Angehängte Dateien:

Lesenswert?

Hi an alle!
könnt ihr mir bitte helfen,ich brauche für die datei sihe unten ein 
compiler oder so.ich habe schon viele ausprobiert leider ohne erfolg.
Im voraus danke chris

von Sebastian Eckert (Gast)


Lesenswert?

Kein Problem.

Der Assembler von dieser Seite:
http://www.metaice.com/ASM51/ASM51.htm

(asm51.zip, ganz oben)
sollte das können. Läuft unter DOS, wahrscheinlich aber auch in einem 
DOS-Fenster unter Windows.

von Thomas B. (detritus)


Lesenswert?

Den MCS-51-Assembler gibts hier:

http://www.sixca.com/tool/download/mcs51_V4.html

Läuft unter Windows.

von chris (Gast)


Lesenswert?

hi danke an alle.
Aber die gehen alle nicht, kann das sein das
im text was nicht stimt.
Gruß chris

von Gast (Gast)


Lesenswert?

Hallo Chris,
ich benutze gerne die freie Software Reads51 von RigelCorp.
Ein erster Versuch mit dem beigefügten Assembler-Code
zeigt mir, dass da noch eine Menge Fehler drin stecken.
In dieser Form wird das kein Compiler/Assembler ohne
Nachbesserungen mögen.

von chris (Gast)


Lesenswert?

hi ich habe MCS-51 Family Macro Assembler ASEM-51 V1.3 und der sagt mir


MCS-51 Family Macro Assembler ASEM-51 V1.3

C:\DC Motor control.txt(38): illegal statement syntax
C:\DC Motor control.txt(41): symbol not defined
C:\DC Motor control.txt(43): illegal statement syntax
C:\DC Motor control.txt(45): symbol not defined
C:\DC Motor control.txt(46): operand expected
C:\DC Motor control.txt(52): segment type mismatch
C:\DC Motor control.txt(53): illegal statement syntax
C:\DC Motor control.txt(62): symbol not defined
C:\DC Motor control.txt(81): symbol not defined
C:\DC Motor control.txt(94): symbol not defined
C:\DC Motor control.txt(127): symbol not defined
C:\DC Motor control.txt(131): symbol not defined
C:\DC Motor control.txt(140): symbol not defined
C:\DC Motor control.txt(150): symbol not defined
C:\DC Motor control.txt(189): symbol not defined
C:\DC Motor control.txt(231): illegal statement syntax
C:\DC Motor control.txt(239): illegal statement syntax
C:\DC Motor control.txt(253): illegal operand
C:\DC Motor control.txt(254): symbol not defined
C:\DC Motor control.txt(258): symbol not defined
C:\DC Motor control.txt(259): symbol not defined
C:\DC Motor control.txt(266): illegal constant
C:\DC Motor control.txt(268): symbol not defined
C:\DC Motor control.txt(269): symbol not defined
C:\DC Motor control.txt(272): symbol not defined
C:\DC Motor control.txt(273): illegal constant
C:\DC Motor control.txt(274): symbol not defined

27 errors detected

Was soll ich machen ich brauche das unbedingt!!!
Gruss chris











27 errors detected

von Peter D. (peda)


Lesenswert?

chris wrote:

> C:\DC Motor control.txt(38): illegal statement syntax

> Was soll ich machen ich brauche das unbedingt!!!

Guckst Du in Zeile 38.
Was könnte da falsch sein?
Welcher der 3 Ausdrücke existiert nicht?


Peter

von chris (Gast)


Lesenswert?

hi lieder weiss ich es nicht bien ein totaler anfänger.
bin für jeden tip dankbar!!
chris

von Pieter (Gast)


Lesenswert?

moin moin,

such doch mal selber in Deinem(?) Code.

Einem Label folgt ein :
Das ; ist etwas anderes.
Du benutzt TRO, gibt es nicht, also sieh nach, es gibt ein TR0.
MOVE gibt es nicht ...
Verwende erstmal die von Dir definierten Zuweisungen.

Einfach mal die Meldungen von Assembler auswerten.


mfg
Pieter

von chris (Gast)


Lesenswert?

hi ich weiss leider nicht mehr weiter, ich habe jetz nur noch 24 fehler.
und da bleibe ich hengen.

START:  MOV  R4,PWM
Z1:  LCALL  CONVERT
  LCALL  DISPLAY
  LCALL  PWM_MODE
Z2:  JB  PWM_DOWN,Z3
  LCALL  MODE_PWM_DOWN
Z3:  JB  PWM_UP,Z1
  LCALL  MODE_PWM_UP
Z4:  JB  SW_LR,Z1
  SJMP

von Thomas B. (detritus)


Lesenswert?

SJMP ist ein Sprungbefehl. Du musst aber festlegen, wo er hinspringen 
soll.

So ähnlich:

SJMP Label_1
.
.
.
.
.
.
.

Label_1:


Ich denk mal, dass er am Ende des Main wieder an das Label "START" 
springen soll. Dann heisst die unterste Zeile aus deinem Ausschnitt 
"SJMP START".

von chris (Gast)


Lesenswert?

hi tut mir leid aber ich check das ganze noch nicht bin ja ein anfänger.
Gruss chris

von Thomas B. (detritus)


Lesenswert?

1
START:  MOV  R4,PWM
2
Z1:  LCALL  CONVERT
3
  LCALL  DISPLAY
4
  LCALL  PWM_MODE
5
Z2:  JB  PWM_DOWN,Z3
6
  LCALL  MODE_PWM_DOWN
7
Z3:  JB  PWM_UP,Z1
8
  LCALL  MODE_PWM_UP
9
Z4:  JB  SW_LR,Z1
10
  SJMP

Daraus soll werden:
1
START:  MOV  R4,PWM
2
Z1:  LCALL  CONVERT
3
  LCALL  DISPLAY
4
  LCALL  PWM_MODE
5
Z2:  JB  PWM_DOWN,Z3
6
  LCALL  MODE_PWM_DOWN
7
Z3:  JB  PWM_UP,Z1
8
  LCALL  MODE_PWM_UP
9
Z4:  JB  SW_LR,Z1
10
  SJMP START

Also nur die unterste Zeile geändert.

von chris (Gast)


Lesenswert?

Hi danke für dein mühe aber das blöde programm lauft immer noch nicht.
Aber 1 fehler weniger.



MCS-51 Family Macro Assembler ASEM-51 V1.3

C:\DC Motor control.txt(39): symbol not defined
C:\DC Motor control.txt(41): symbol not defined
C:\DC Motor control.txt(51): segment type mismatch
C:\DC Motor control.txt(61): symbol not defined
C:\DC Motor control.txt(80): symbol not defined
C:\DC Motor control.txt(93): symbol not defined
C:\DC Motor control.txt(114): illegal operand
C:\DC Motor control.txt(119): illegal operand
C:\DC Motor control.txt(126): symbol not defined
C:\DC Motor control.txt(130): symbol not defined
C:\DC Motor control.txt(139): symbol not defined
C:\DC Motor control.txt(149): symbol not defined
C:\DC Motor control.txt(188): symbol not defined
C:\DC Motor control.txt(230): illegal statement syntax
C:\DC Motor control.txt(238): illegal statement syntax
C:\DC Motor control.txt(252): illegal operand
C:\DC Motor control.txt(253): symbol not defined
C:\DC Motor control.txt(257): symbol not defined
C:\DC Motor control.txt(265): illegal constant
C:\DC Motor control.txt(267): symbol not defined
C:\DC Motor control.txt(268): symbol not defined
C:\DC Motor control.txt(271): symbol not defined
C:\DC Motor control.txt(272): illegal constant

             23 errors detected

von ospite da lontano (Gast)


Lesenswert?

...im Progforum warst du ,glaube ich, schon bei <5 Fehler ;-)...

von Pieter (Gast)


Lesenswert?

..und auch bei 0 Assemblerfehlern wird das Prog nichts tun...
weil: SP auf 7 gesetzt, 1.Variable auf 9..geht also bis zum 2.Call ...

und tschüss!

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.