S7 Registry and Indirect Addressing - General

cwsocr

Member
Join Date
Jan 2011
Location
Pittsburgh
Posts
1
Hello all. I am new to this forum/site, and have already seen that a lot of helpful, knowledgable individuals contribute to this forum. I am fairly new to the Siemens STEP7 world, and am currently working on a job that I must revamp. The original job was done in Germany, and the entire S7 program has been developed in uncommented STL, while all titles/parameters are in German. I am years removed from any work with assembly language, and I am running into questions while deciphering the logic and the registry handling.

I was hoping that someone could give me a good resource that could help me understand the way the internal registers work, as well as register indirect addressing within S7. I've found a lot of information within the Siemens manuals, as well as online. However, I have not been able to find anything that explains both in depth. Perhaps, and it is likely, I have not searched using the correct keywords.

I would like to understand the accumulators (ACCU1, ACCU2) and how their memory allocations (ACCU1-L, ACCU1-L-L, ACCU1-L-H, etc) are effected by specific instructions, what they are, and the differences between the nomenclatures.

Also, I'd like to read up on how the Address Registers for Register Indirect Addressing/Pointers in the form of [AR1,P#0.0] work. One of the things that I have seen is the use of SLW/SLD instruction when using this type of addressing, but I do not know why this must be used.

Thank you in advance for any information you can provide or give to me. I really need to understand these two aspects as I try to decipher this software. I really appreciate it.

CPU: CPU315: 315-1AF03-0AB0
 
A good start will be to use the in-built help. Click on an instruction and then F1 will give a description showing how the registers are affected.

Address registers contain the address to the bit level, so when the address of a byte has to be calculated, the address register arithmetic must multiply the byte offset by 8 to obtain the correct address, hence SLD 3 for example.
 

Similar Topics

I'm running into a problem when trying to use the RSLinx Backup Restore Utility where it throws an error when it tries to restore a backup. The...
Replies
6
Views
568
Hello I was needing some help to writing a batch file that will add a value of "1" into a Windows "String Value" Registry key. The registry...
Replies
6
Views
2,171
Hi I Hope someone can help me with this, please I want to automate a weigh bin filler(for fruit) but I 'd like to store in the HMI the total...
Replies
4
Views
2,339
Hello there, world! The problem i'm facing up is about a registry I need to do in order to compare the set point versus the real variable I got...
Replies
2
Views
1,580
Hello, I have one computer where the trends fail to create a history log. The first time you open a trend ( on project load ) it says "failed to...
Replies
1
Views
1,946
Back
Top Bottom