Setting the S7-300 address register address

OPN DB100
L 0
LAR1
L   3500
ITD
RLD   3
+AR1
L DBW [AR1, P#0.0]   //Read DB100.DBW3500

But after the address >4095, with 4096 values RLD 3 is greater than or equal to the value of 32768
Error value in the AR1 (great value).
So that there are 3 to the left has been unable to obtain the correct address.
Ask you what other solutions are there? Thank you.
Here is my reply: procedures will be further simplified procedures in the figure below:
L#4500 is a two-character constant, so there is no limit of 4095.
The address byte address is 4500 pointer constants P#4500.0, bits within a byte address of 0,P#4500.0 is equivalent to 3500 with 8 product (with bits of the integer). RLD 3 (left 3) equivalent multiplied by 8.

Leave a Reply

Your email address will not be published. Required fields are marked *