Ausgangswort,Eingangswort,Merkerwort

michaelg

Level-1
Beiträge
19
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,
ich stehe noch am Anfang de SPS Programmierung und habe volgende Frage.
Wenn ich z.B. das EW0 ansprechen möchte, so beinhaltet das auch EB0 und EB1. Somit auch die E0.0 - E1.7?
Ist das soweit richtig?

Bedanke mich voraus
mit grüßen aus dem Münsterland

Michael
 
Hallo zusammen,
ich stehe noch am Anfang de SPS Programmierung und habe volgende Frage.
Wenn ich z.B. das EW0 ansprechen möchte, so beinhaltet das auch EB0 und EB1. Somit auch die E0.0 - E1.7?
Ist das soweit richtig?

Bedanke mich voraus
mit grüßen aus dem Münsterland

Michael

jep

Code:
L EW0
T AW0

entspricht

U E0.0
= A0.0

usw
 
Zuviel Werbung?
-> Hier kostenlos registrieren
So ist das bei Siemens, bei allen Speicherbereichen,
also E, A, DB, M, L ...

ED, AD etc. enthalten dann im Fall von ED0 = EW0, EW2 = EB0-3 = E0.0 - E3.7

Mfg
Manuel
 
Dann bin ich ja schon mal auf dem richtigen Weg.
Jetzt hab ich aber ein Problem etwas zu verstehen.
Wenn ich einen Vorwärtszähler Mit dem Taktmerker M100.7 belege und ich am DUAL Ausgang das Eingangswort 0 (EW0) abfrage, warum setzt er mir nicht E0.0 auf 1 sondern erst E1.0?

Stehe da im Moment auf dem Schlauch und hoffe ihr könnt mir das erklären.

Gruß
Michael
 
Nun ja, du hast nun das entdeckt, was ich bei Siemens geradezu hasse ...

EW0 =
EB1 LowByte (LSB)
EB0 Highbyte (MSB)

Das ist halt so ...

Mfg
Manuel
 
Bei Werten > 255 Dez kommt dann E0.0 - E0.7 ins Spiel ...

Ein Zähler kann ja bis 999 zählen, also wird das sehr wohl benötigt ...

Mfg
Manuel
 
Wenn ich bei MSB ergänzen darf,

im Binärcode schaut das so aus:
Code:
11111111 00000000 // = 255 W#16#FF
// (LSB)     (MSB)
+1
00000000 00000001 // = 256 = W#16#100
// (LSB)     (MSB)
+1
00000001 00000001 // = 257 = W#16#101
// (LSB)     (MSB)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Es geht mal wieder um das klassische Little Endian / Big Endian Problem. Alle die aus der PC-Welt stammen (Intel-CPUs) lieben little endian, hier steht bei der Adressierung das niederwertigste Byte als erstes. Alle aus der (klassischen) Mac-Welt stammenden (Motorola 68k) hängen doch eher dem big endian an - hier steht bei der niedrigsten Adresse das höchstwertige Byte.
Siemens hat sich halt der big endian Fraktion verschrieben, da ist bei vielen Umdenken angesagt (ich krieg auch immer wieder 'nen Knoten ins Hirn).

Schöner Artikel zu little/big endian- wie so oft - auf Wikipedia: http://de.wikipedia.org/wiki/Byte-Reihenfolge

Noch ein schöner Artikel - englisch: http://www.networksorcery.com/enp/ien/ien137.txt
 
Zuletzt bearbeitet:
Zurück
Oben