登录
首页 PLC论坛 西门子SIEMENS
回帖 发帖
正文

主题:[请教]:S7-300的数据块如何实现变量寻址?

点击:3851 回复:3

如题。
不知道在S7-300中,可不可以用如:DB1.VAR的形式来寻址,其中VAR是个变量。
08-04-15 09:05
只能采用DB1.DBx[]這類形式做變址尋址,其中x代表X,B,W,D
且使用地址寄存器AR來進行地址指針的尋址。
在STL編程方式下。
在SCL編程方式下,使用數組可以直接支持變量作為下標尋址。
在LAD方式下不支持變址尋址。
以上!
Good Luck!
08-04-15 09:20
谢谢楼上解答!
那么如果我有一个地址变量,表明了某DB块的某位置。要访问这个变化的地址,如果实现呢?
难道列出一长串的比较语句吗?
08-04-15 09:29
相當的簡單,通過將該地址變量左移3位,因為西門子規定,必須采用32位指針的格式,因此需要左移3位,當然乘以8的效果與左移3位相同。
然后通過向AR寄存器中存放,改變AR中的數值就可以實現間接尋址。
一般使用間接尋址都使用Loop循環的場合。
不需要比較,因為DB中的數據地址都是固定的。
以上!
Good Luck!
08-04-15 09:38

工控新闻

更多新闻资讯