您现在的位置是:首页 > PLC技术 > PLC技术

S7-300/400 PLC的寄存器间接寻址方式

来源:艾特贸易2017-06-05

简介地址寄存器 AR1 和 AR2 ,它们中的内容加上偏移量形成地址指针,指向数值所在的存储单元。寄存器间接寻址中双字指针格式如图 4-9 所示。 图 4-9 寄存器间接寻址的双字指针格式 其中第

    地址寄存器AR1AR2,它们中的内容加上偏移量形成地址指针,指向数值所在的存储单元。寄存器间接寻址中双字指针格式如图4-9所示。

寄存器间接寻址的双字指针格式

    4-9    寄存器间接寻址的双字指针格式

    其中第0~2(xxx)为被寻址地址中位的编号(07),第318位为被寻址地址的字节的编号(0~65535),第2426(rrr)为被寻址地址的区域标识号,第31x=0为区域内的间接寻址,第31x=1为区域间的间接寻址。寄存器间接寻址的区域标识位见表4-5

    4-5    寄存器间接寻址的区域标识位

寄存器间接寻址的区域标识位

   STEP 7中有两种格式的寄存器间接寻址方式,分别是区域内的间接寻址和区域间的间接寻址。当31位为0时,为区域内的间接寻址;当31位为1时,为区域间的间接寻址。

    第一种地址指针格式存储区的类型在指令中给出,例如LDBB[AR1P#6.0]。在某一存储区内寻址。第2426(rrr)应为0

    第二种地址指针格式的第2426位还包含存储区域标识符rrr,区域间寄存器间接寻址。

    如果要用寄存器指针访问一个字节、字或双字,必须保证指针中的位地址编号为0

    指针常数#P5.0对应的二进制数为2#0000 0000 0000 0000 00000000 0010 1000

    下面是区内间接寻址的例子:

区内间接寻址的例子

    下面是区域间间接寻址的例子:

区域间间接寻址的例子

   P#M6.0对应的二进制数为2#10000011 0000 0000 0000 0000 0011 0000。因为地址指针P#M6.0中已经包含有区域信息,使用间接寻址的指令T W[AR1P#50]中没有必要再用地址标识符M