6/8/2010 6:28 AM | |
Joined: 10/7/2005 Last visit: 5/29/2023 Posts: 2965 Rating:
|
Hello Siemens_MI I could not have explained fully qualified DB access better than Daniel did, but wonderif youwere after the effects that your planned (fully qualified or partial) DB accesses have on the contents of the Address Registers (AR1 & AR2). If that's the case, then the short answer is: None Having said that, AR1 and/or AR2 (as well as DB 1 & 2 Registers) can be "overwritten" with certain (sometimes seemingly unrelated) operations and you can find more info about in the FAQ below (note too the "Avoiding errors when calling blocks" reference to the Step 7 help in it): Which operations overwrite the content of ACCU or registers in STEP 7? I hope thishelps P.S: Address and DB registers as well as accumulator content is saved (and restored afterwards) in case a higher priority Interrupt 'kicks in" while your Block is executed(see HERE for more). |
Cheers |
|
6/10/2010 9:31 PM | |
Joined: 10/7/2005 Last visit: 5/29/2023 Posts: 2965 Rating:
|
Hello Siemens_MI
Good question, I'm not too sure if this really should really worry you though. If you are programming in SCLthe "gory details"of AR and DB register usage are hidden from you. Since SCL compiles into STL, one way I can think of to to find out is to write your SCL logic, compile it, move the the SCL source file somewhere else and then open the block which will now show you the created STL code.
Couldn't tell you (never worried about this as I rarely touch SCL) and it would also depend if you pass on an elementary or complex data in combination with the type ofBlock you use(FC or FB). I can tell you though that SCLwill create "surplus" STL logic when compiled, so if you are really concerned about runtime performance or memory usage you can't beat programming in the language that rules over all the other ones (i.e. STL). I hope this helps somewhat and perhaps others have more ideas on this matter. |
Cheers |
|
Follow us on