S7-200 PLC将信息存于不同的存储单元,每个单元有唯一的地址,系统允许用户以字节、字、双字为单位存取信息。在S7-200系列PLC中,CPU存储器的寻址方式有直接寻址和间接寻址两种形式。
1.直接寻址
直接寻址是在指令中直接使用存储器或寄存器的元件名称(区域标志)和地址编号,直接到指定的区域读取或写入数据。直接寻址有按位、字节、字、双字4种寻址方式。
数据的直接地址包括内存区域标志符、数据大小及该字节的地址或字、双字的起始地址及位分隔符和位。直接访问字节(8bit)、字(16bit)、双字(32bit)数据时,必须指明数据存储区域、数据长度及起始地址。当数据长度为字或双字时,最高有效字节为起始地址字节。如图3-11所示,其中有些参数可以省略,见图中说明。
(1)按位寻址
按位寻址时必须指明元件名称、字节地址和位号。如I5.2,表示要访问的是输入寄存器区第5字节的第2位,如图3-12所示。
图3-11 寻址方式示意图
图3-12 位寻址示意图
可以按位寻址的编程元件有输入映像寄存器(I)、输出映像寄存器(Q)、内部标志位存储器(M)、特殊标志位存储器(SM)、局部变量存储器(L)、变量存储器(V)和顺序控制继电器(S)等。
(2)按字节、字和双字寻址(www.daowen.com)
采用字节、字或双字寻址的方式存储数据时,需要指明编程元件名称、数据长度和首字节地址编号。应当注意:在按字或双字寻址时,首地址字节为最高有效字节。其格式和注意事项如表3-4所示。
表3-4 采用字节、字或双字寻址的格式
2.间接寻址方式
间接寻址是指使用地址指针来存取存储器中的数据。使用前,首先将数据所在单元的内存地址放入地址指针寄存器中,然后根据此地址指针存取数据。S7-200CPU中允许使用指针进行间接寻址的存储区域有I、Q、V、M、S、T、C。使用间接寻址的步骤如下。
(1)建立地址指针
使用间接寻址前,要先创建指向该位置的指针。指针为双字(32位),存放的是另一存储器的地址,只能用V、L或累加器AC作指针。生成指针时,要使用双字传送指令(MOVD),将数据所在单元的内存地址送入指针,在双字传送指令的输入操作数开始处加“&”符号,表示某存储器的地址,而不是存储器内部的值。指令输出操作数是指针地址。例如:MOVD&VB200,AC1指令就是将VB200的地址送入累加器AC1中。
(2)用指针来存取数据
指针建立好后,利用指针存取数据。在使用地址指针存取数据的指令中,操作数前加“∗”号表示该操作数为地址指针。例如:MOVW∗AC1AC0。MOVW表示字传送指令,指令将AC1中的内容为起始地址的一个字长的数据(即VB200,VB201内部数据)送入AC0内。如图3-13所示。
图3-13 间接寻址示意图
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。