登录
首页
PLC论坛
西门子SIEMENS
回帖
发帖
正文
主题:[请教]:S7-300的数据块如何实现变量寻址?
点击:3851 回复:3
楼主
编辑
引用
管理
登山者
如题。
不知道在S7-300中,可不可以用如:DB1.VAR的形式来寻址,其中VAR是个变量。
08-04-15 09:05
1楼
编辑
引用
管理
cvlsam
只能采用DB1.DBx[]這類形式做變址尋址,其中x代表X,B,W,D
且使用地址寄存器AR來進行地址指針的尋址。
在STL編程方式下。
在SCL編程方式下,使用數組可以直接支持變量作為下標尋址。
在LAD方式下不支持變址尋址。
以上!
Good Luck!
08-04-15 09:20
2楼
编辑
引用
管理
登山者
谢谢楼上解答!
那么如果我有一个地址变量,表明了某DB块的某位置。要访问这个变化的地址,如果实现呢?
难道列出一长串的比较语句吗?
08-04-15 09:29
3楼
编辑
引用
管理
cvlsam
相當的簡單,通過將該地址變量左移3位,因為西門子規定,必須采用32位指針的格式,因此需要左移3位,當然乘以8的效果與左移3位相同。
然后通過向AR寄存器中存放,改變AR中的數值就可以實現間接尋址。
一般使用間接尋址都使用Loop循環的場合。
不需要比較,因為DB中的數據地址都是固定的。
以上!
Good Luck!
08-04-15 09:38
工控新闻
2025年制造业利润大幅回升,反“内卷”改善价格预期
西门子正式发布SINAMICS G200 Basic变频器,高效驱动方案新体验!
HMS案例分享:Ewon远程访问解决方案助力纺织机械设备出海
50份谢礼已备好!西克调研问卷获奖名单揭晓
人工智能是一场深刻工业革命,中国将在工业AI领域率先突破
走出舒适区的“工业之眼”,正在何处加速进化?
上海加快先进制造业转型升级
康佳特推出业界领先COM Express Compact模块,搭载AMD 锐龙™ AI嵌入式P100系列处理器
更多新闻资讯