您现在所在的是:

PLC论坛

回帖:3个,阅读:749 [上一页] [1] [下一页]
* 帖子主题:

寄存器间接寻址

714
JCPX
文章数:16
年度积分:50
历史总积分:714
注册时间:2014/8/14
发站内信
发表于:2014/8/27 14:33:26
#0楼
 在S7-300PLC中有两个专门存放地址的寄存器AR1和AR2通过这两个寄存器进行寻址的方式我们称之为寄存器间接寻址

  1、内部区域寄存器间接寻址
  1) 存储格式
  交叉区域寄存器间接寻址在地址寄存器中的排列可分为三个区域,分别是存储位信息的区域,存储字节、字、双字信息区域,和无效区域。
附件 800.jpg
  2)寻址格式
  地址存储器标示符[AR1/AR2,P#X]
  在内部区域寄存器间接寻址中,地址存储器标示符表示的是要寻址的所在的区域,如M区、I区、Q区,AR1/AR2表示指针自身所占用的存储空间是AR1(地址寄存器1)或者AR2(地址寄存器2),P#X表示偏移量,表示在地址寄存器中地址的基础上进行偏移的幅度。

  3)程序示例
  例1
  LAR1  P#2.0                       //装载地址2.0到AR1
  L     MW [AR1,P#0.0]              //装载MW2
  L     MW [AR1,P#2.0]              //装载MW4
  +I                                //MW2+MW4
  T     MW [AR1,P#4.0]              //将加法结果存放到MW6

  2 、交叉区域寄存器间接寻址
  1)   存储格式
  交叉区域寄存器间接寻址在地址寄存器中的排列可分为五个区域,分别是存储位信息的区域,存储字节、字、双字信息区域,存储区域地址标示符信息区域,交叉区域指针标识位和无效区域。
附件 801.jpg
  此处我们需要将区域地址标识位和相对应的地址信息向大家一一列举如图2-2所示
附件 802.jpg
  2)寻址格式
  访问宽度[AR1/AR2,P#X]
  在内部区域寄存器间接寻址中,访问宽度表示寻址数据的长度W表示长度是字D表示长度是双字,AR1/AR2表示指针自身所占用的存储空间是AR1(地址寄存器1)或者AR2(地址寄存器 2),P#X表示偏移量,表示在地址寄存器中地址的基础上进行偏移的幅度。此处需要注意由于地址寄存器中已经包含区域标识符信息所以在寻址时只需要访问宽度信息,不需要区域标识符信息,具体使用方法参照下面例子。

  3)程序示例
  例1
     LAR1  P#M 12.0                   //装载M12.0到地址寄存器1
     L     W [AR1,P#0.0]               //装载MW12
     L     W [AR1,P#2.0]               //装载MW14
     +I//MW12+MW14
     T     W [AR1,P#4.0]               //将结果存放到

--------------------------------
作者:马乐
版权所属: 技成培训网
1614
qdgaoser
文章数:355
年度积分:50
历史总积分:1614
注册时间:2011/11/12
发站内信
发表于:2014/8/27 16:32:01
#1楼
谢谢分享
3338
lihai010
文章数:780
年度积分:50
历史总积分:3338
注册时间:2006/2/14
发站内信
发表于:2014/8/27 18:01:33
#2楼
谢谢分享
6594
eyujiedianqi
文章数:2622
年度积分:50
历史总积分:6594
注册时间:2009/6/5
发站内信
发表于:2014/8/27 20:57:30
#3楼
讲的对编程有帮助。

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2025 Gkong.com, All Rights Reserved

46.8003