找答案的高端用户(找答案钻石及双钻级别的用户)将尽可能从此问题下的所有回
答中,为您推荐最佳答案。届时您可以根据推荐数采纳答案。
如果自提问时间起7天内您仍无法选出最佳答案,您可以选择“无满意答案”关闭此问题。
问题
取消精华
首页精华问答
取消推荐
高端用户推荐
申请置评
已申请置评
修改
修改标签
添加标签
官方认证
取消官方认证
修改标签
添加标签
转移分类
删除
{{itemCategory}}
收藏({{answerDetail.Q_FavoriteCounts}})
手机扫码追踪该问题,
觉得实用,立即去分享!
点击复制链接
专家建议
取消最佳答案
修改
外面的 FOR 循环执行 32 次 内部的循环体
里面的循环体部分主要理解 PEEK_BYTE,这是间接寻址,寻址宽度是字节
PEEK_BYTE(area := 16#81, dbNumber := 0, byteOffset := #IOAdrr + #Idex);
1、area := 16#81 取 IB 数据;
2、dbNumber := 0 当取的数据区不是 DB 块时,此值为0
3、byteOffset := #IOAdrr + #Idex 这里指明取的是哪一个字节,与第1条合起来就是取 IB 多少,这个多少 是由 #IOAdrr + #Idex 计算的地址所得,如果这个表达式计算的值是 20,则取的就是 IB20
至此,取到了某个 IB 的值,然后内循环将取到的 IB 值 赋给了 #AT_ABBtoPLC[#Idex] 这个数组元纛。
整个循环完成后,取了 #IOAdrr 为字节偏移开始地址的 32 个 IB 存储到了 #AT_ABBtoPLC[0] 至 #AT_ABBtoPLC[31] 这32个数组单元中。
FOR 指令的解释
https://www.ad.siemens.com.cn/productportal/prods/s7-1200_plc_easy_plus/07-Program/03-instruction/05-SCL/02-Program.html#FOR
间接寻址编程
http://www.ad.siemens.com.cn/productportal/prods/s7-1200_plc_easy_plus/smartsms/044.html
等您来回答
换一换
{{item.CoinValue}}西币
{{item.VisitNum}}人想问
本版相关问题
换一换
专家置评
首次回答问题,获得
双倍西币积分!
立即成为技术知识分享的一员!
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!

西门子商城