Ich kenne mich eigentlich mit CoDeSys garnicht aus, leider muss ich aber doch etwas damit machen.
Viellleicht kann mir ja einer helfen.
Es geht darum, dass ich einige Variablen mit Integerwerten über Ethernet an die SPS Schicken muss.
Ich hab jetzt kein Problem, die Werte alle mit VB auf dem PC aneinander zu fügen und an die SPS zu schicken.
Dort wird das als ARRAY[0..1000] OF BYTE empfangen.
Wie kann ich jetzt beispielsweise die ersten 5 Byte auslesen?
Ein Byte erhalte ich z.B. mit Buffer[0].
Wie erhalte ich jetzt Beispielsweise Buffer[0..5]?
Vielen Dank für die Hilfe
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2005-11-14
Originally created by: Frank Hailer
Hallo,
Es kann immer nur ein Element eines Arrays direkt angesprochen werden: <arrayname>[<index>[,<index>,...]</index></index>]</arrayname>
Es gibt aber auch Möglichkeiten beim Zugriff durch as Array zu wandern um eine Teilmenge davon verarbeiten zu können. Und zwar durch die Verwendung von Zeigern. So kann in Ihrem Fall z.B. ein Zeiger auf eine Struktur mit 6 Byte Variablen oder ein Byte Array mit 6 Bytes an eine beliebige Stelle des Arrays geschoben werden. Bitte sehen Sie sich dazu das angefügte Beispielprojekt an.
Originally created by: Gast
Hallo,
Ich kenne mich eigentlich mit CoDeSys garnicht aus, leider muss ich aber doch etwas damit machen.
Viellleicht kann mir ja einer helfen.
Es geht darum, dass ich einige Variablen mit Integerwerten über Ethernet an die SPS Schicken muss.
Ich hab jetzt kein Problem, die Werte alle mit VB auf dem PC aneinander zu fügen und an die SPS zu schicken.
Dort wird das als ARRAY[0..1000] OF BYTE empfangen.
Wie kann ich jetzt beispielsweise die ersten 5 Byte auslesen?
Ein Byte erhalte ich z.B. mit Buffer[0].
Wie erhalte ich jetzt Beispielsweise Buffer[0..5]?
Vielen Dank für die Hilfe
Originally created by: Frank Hailer
Hallo,
Es kann immer nur ein Element eines Arrays direkt angesprochen werden: <arrayname>[<index>[,<index>,...]</index></index>]</arrayname>
Es gibt aber auch Möglichkeiten beim Zugriff durch as Array zu wandern um eine Teilmenge davon verarbeiten zu können. Und zwar durch die Verwendung von Zeigern. So kann in Ihrem Fall z.B. ein Zeiger auf eine Struktur mit 6 Byte Variablen oder ein Byte Array mit 6 Bytes an eine beliebige Stelle des Arrays geschoben werden. Bitte sehen Sie sich dazu das angefügte Beispielprojekt an.
MfG Frank Hailer
AcessingArrayByPointer.zip [2.58 KiB]