公司主营:数控系统,S7-200PLC S7-300PLC S7-400PLC S7-1200PLC 6ES5 ET200 人机界面,
上海西皇电气设备有限公司
联系人:李工
咨询热线:15901795805
邮箱:158311669@qq.com
传真:021-57358110
咨询QQ:158311669
公司大量现货!!!
上海西皇电气设备西门子代理商库存大量西门子PLC,产品种类、型号齐全,涵盖了西门子200系列PLC、西门子300系列PLC及其EM221模块、EM222模块、EM223模块、EM231模块、EM232模块、EM235模块、PPI电缆、MPI电缆、5611卡、SM321、SM322、SM323、SM331、EM332模块等,S7-200系列主机包括CPU224CN、CPU226CN、CPU224XP,S7-300系列主机包括CPU312、CPU313、CPU314、CPU315-2DP等,价格低,交货速度快。
网上有人给出了一条S7-300“看不懂”的指令“L P#P 515.0”。
这条指令与区域之间的寄存器间接寻址有关。S7-300/400有两个地址寄存器AR1和AR2,操作数的地址等于地址寄存器中的地址值加上地址偏移量。下面是寄存器间接寻址的32位指针格式:
x000 0rrr 0000 0bbb bbbb bbbb bbbb bxxx
其中第0~2位(xxx,**位为第0位)为被寻址地址中位的编号(0~7),第3~18位(16个b)为被寻址地址的字节的编号。第24~26位(rrr)为被寻址地址的区域标识号。
指针的**高位x 为0时,为区域内的间接寻址,**高位x 为1时,为区域间(交叉区域)间接寻址。
将下面的程序下载到仿真PLC,运行时监控累加器1(STANDARD)的值(见下图)。
L P#P 1.0 //16#8000 0008送累加器1
LAR1 //累加器1的内容送AR1
L MW [AR1,P#2.0] //MW3的值送累加器1
MW [AR1, P#2.0]的地址为AR1中的P#1.0加偏移量P#2.0,MW [AR1, P#2.0]即MW3。
由第1条指令的执行结果16#8000 0008可知(见下图),P#P1.0的**高位为1,表示这是区域间(交叉区域)间接寻址。第24~26位(rrr)为2#000,由西门子的资料《S7-300和S7-400寻址》可知,区域标识号2#000表示地址指针不包含地址区。仿真时用PLCSIM设置MW3的值为16#1234,第3条指令的监控结果验证了上述分析的正确性。
将上述程序的第1条指令改为“L P#1.0”,程序运行结果相同。指针值P#1.0的**高位为0。