Step 7 SCL DINT addieren

Globi10

Level-1
Beiträge
2
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,
ich habe vor kurzen mit SCL zu programmieren begonnen, und bin gleich auf Problem gestossen.
Ich will DINT-Werte addieren.
Code lautet:
DB120.DBD:= DB101.DBD222 + 1500;
bekomme eine Fehlermeldung: Unzulässige Operandentypen.
Die Werte in den Datenbausteinen sind mit DINT deklariert.
Wenn ich + 1500 entferne, wird fehlerfrei übersetzt.
Wo ist das Problem?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Absoluter Zugriff auf Speicherbereiche liefert immer den Datentyp BOOL/BYTE/WORD/DWORD entsprechend der angegebenen Speichergröße, unabhängig davon, wie die Variable an der angegebenen Adresse deklariert ist.
Adressiere symbolisch, dann wird der deklarierte Datentyp verwendet.

Code:
//Absolut adressiert:
DB120.DD0 := DINT_TO_DWORD(DWORD_TO_DINT(DB101.DD222) + 1500);

//Symbolisch adressiert:
"DB120".DIntVar2 := "DB101".DIntVar1 + 1500;

L#1500 gibt es nicht in SCL. DINT#1500 wäre möglich, ist aber nicht notwendig.

siehe
Hilfe zu SCL > Index > Absoluter Zugriff
Hilfe zu SCL > Index > Konstanten > Ganzzahl-Konstante

Harald
 
Zurück
Oben