




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Date:2022-2-13File:PRO2_04E.1SIMATIC S7Siemens AG 2001. All rights reserved.SITRAIN Training for Automation and Drives间接寻址及地址寄存器指令间接寻址及地址寄存器指令L W AR1, P#200.0-12910#Ini_Value#Par_Pointer#Counter?Date:2022-2-13File:PRO2_04E.2SIMATIC S7Siemens AG 2001. All rights reserved.SITRAIN Training for Automati
2、on and Drives STEP 7 中可能的寻址方式中可能的寻址方式 寻址方式寻址方式直接寻址直接寻址间接寻址间接寻址绝对寻址绝对寻址符号寻址符号寻址存储器间接寻址存储器间接寻址寄存器间接寻址寄存器间接寻址示例:示例:A I 4.0A Mot_onOPN DBMW10A IMD30A IAR1,P#0.0A AR1,P#0.0L IW10L #NumSP TruntimeL IWNumberL IDAR1,P#5.0T WAR1,P#0.016位指针位指针(DB, T, C)32位指针位指针内部区域内部区域32位指针位指针内部区域内部区域32位指针位指针交叉区域交叉区域Date:2022
3、-2-13File:PRO2_04E.3SIMATIC S7Siemens AG 2001. All rights reserved.SITRAIN Training for Automation and Drives变量直接寻址变量直接寻址存储单元位置存储单元位置 (示例)(示例)I37.4地址地址附加访问宽度附加访问宽度字节,字,双字字节,字,双字含义含义输入输入Q27.7字节,字,双字字节,字,双字输出输出PIB655字节,字,双字字节,字,双字外设输入外设输入PQB653字节,字,双字字节,字,双字外设输出外设输出M55.0字节,字,双字字节,字,双字位(位(Bit)存储器存储器T11
4、4-定时器定时器C13-计数器计数器DBX2001.6字节(字节(DBB), 字(字(DBW),双字(双字(DBD)通过通过DB寄存器寻址的数据寄存器寻址的数据DIX406.1字节(字节(DIB), 字(字(DIW),双字(双字(DID)通过通过DI寄存器寻址的数据寄存器寻址的数据L88.5字节(字节(LB), 字(字(LW),双字双字 (LD)本地数据堆栈本地数据堆栈Date:2022-2-13File:PRO2_04E.4SIMATIC S7Siemens AG 2001. All rights reserved.SITRAIN Training for Automation and Dr
5、ivesDB中地址标识符直接寻址中地址标识符直接寻址打开的数据块打开的数据块在数据块中装载和传递在数据块中装载和传递OPN DB 19OPN ValuesOPN DI 20组合指令组合指令(包含包含OPN D DB.)L DBB 1装载数据字节装载数据字节1L DBW 2装载数据字装载数据字2(字节字节2/3)L 5装载数字装载数字5T DBW 4传递到字传递到字4L A装载装载ASCII字符字符AL DIB28装载数据字节装载数据字节28=I比较比较A DBX 0.0从从0字节的第字节的第0位开始扫描位开始扫描L DB19.DBW4从从DB 19中中装载数据字装载数据字4 L “Values
6、”.Number_1符号访问变量符号访问变量 Number_1. DB19具有变量名具有变量名“Values”A DB10.DBX4.7从从DB 10 的第的第4个字节的第个字节的第7位开始扫描位开始扫描Date:2022-2-13File:PRO2_04E.5SIMATIC S7Siemens AG 2001. All rights reserved.SITRAIN Training for Automation and Drives用于用于DB寄存器的指令:寄存器的指令:lCDB:交换交换DB寄存器内容寄存器内容l将将DB寄存器内容装载到寄存器内容装载到ACCU1中中 L DBNO (将打
7、开的DB号装载到ACCU1中)L DINO (将打开的DI号装载到ACCU1中)l装载数据块长度装载数据块长度L DBLG (将打开的DB的长度/字节装载到ACCU1中)L DILG (将打开的DI的长度/字节装载到ACCU1中)在程序中分析数据块在程序中分析数据块DB相关信息相关信息 指令执行前:指令执行前:指令执行后:指令执行后:CDB1232424123DB寄存器寄存器DI寄存器寄存器Date:2022-2-13File:PRO2_04E.6SIMATIC S7Siemens AG 2001. All rights reserved.SITRAIN Training for Automa
8、tion and Drivesl字格式的字格式的16位指针位指针(用于对用于对DB、T、C进行寻址进行寻址)L 11T MW 60OPN DBMW 60 OPN DB 11l双字格式的双字格式的32位指针位指针(用于对用于对I、Q、M.进行寻址进行寻址) L P#24.0 T MD 50 L I W MD50 L IW 24 存储 访问 地址 区域宽度存储器间接寻址存储器间接寻址Date:2022-2-13File:PRO2_04E.7SIMATIC S7Siemens AG 2001. All rights reserved.SITRAIN Training for Automation a
9、nd Drives用于存储器间接寻址的指针结构用于存储器间接寻址的指针结构l16位指针的结构:位指针的结构:为0 . 65 535 之间的无符号整数0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 015 14 13 12 11 10 9 8 7 6 5 4 3 2 1 02021527146l32位指针的结构位指针的结构(内部区域):内部区域):B B B B B B B B B B B B B X X X15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 00 0 0 0 0 0 0 0 0 0 0 0 0 B B B31 30 29 28 27 26 25
10、24 23 22 21 20 19 18 17 162022位地址字节地址(无符号整数)20215未定义l装载装载32位指针常量位指针常量(内部区域内部区域):):L P#25.3 (P = 指针,字节地址= 25,位地址:3)Date:2022-2-13File:PRO2_04E.8SIMATIC S7Siemens AG 2001. All rights reserved.SITRAIN Training for Automation and Drives存储器间接寻址的特性存储器间接寻址的特性用于存储用于存储16位和位和32位指针的地址区域:位指针的地址区域:l位(Bit)存储区(绝对寻
11、址或符号寻址) 例如:OPN DBMW30,OPN DI“Motor_1” 等。A IMD30,T QDSpeed_1,等)l本地数据堆栈(绝对寻址或符号寻址,例如: OPN DBLW10,OPN DI#DB_NO等。 A ILD10,T QD#Par_Pointer,等。)l全局(共享) 数据块(只能进行绝对寻址,DB必须预先打开,例如: OPN DBDBW0 (覆盖掉DB寄存器内容!),OPN DIDBW22等。 A IDBD10,T QDDBD22,等。)l背景数据块(只能进行绝对寻址,DI必须预先打开,例如: OPN DBDIW20,OPN DIDIW0 (覆盖掉DI寄存器内容!),等
12、。 A IDID10, T QDDID22等。)向向FB和和FC传递指针的特点传递指针的特点l在参数里传递的指针不能直接用于存储器间接寻址。l用于存储器间接寻址而传递的指针,在访问之前必须拷贝到临时变量里去Date:2022-2-13File:PRO2_04E.9SIMATIC S7Siemens AG 2001. All rights reserved.SITRAIN Training for Automation and Drives间接寻址示例间接寻址示例FC30:间接寻址示例间接寻址示例Network(段)段) 1:使用间接寻址方式打开:使用间接寻址方式打开DB L#dbnumber/
13、 将将DB号拷贝到号拷贝到MW100TMW100/ OPNDBMW 100/ 打开打开DBNetwork (段)段) 2:循环删除循环删除LP#18.0/ 将终端地址(将终端地址(DBW18)作为指针作为指针TMD40/ 传送到传送到MD 40;L10/ 将循环计数器值设置为将循环计数器值设置为10next: TMB50/ 传到传到MB 50中;中;L0/ 装载初始值装载初始值TDBWMD 40/ 传到传到DB50中;中;LMD40/ 装载指针装载指针LP#2.0/ 并减去并减去2个字节个字节-D/ 然后再传回然后再传回TMD40/ 到到MD 40;LMB50/ 装载循环计数器装载循环计数器L
14、OOP next/ 减去减去2个字节,条件满足则跳转;个字节,条件满足则跳转;Date:2022-2-13File:PRO2_04E.10SIMATIC S7Siemens AG 2001. All rights reserved.SITRAIN Training for Automation and Drives练习练习4.1:用间接寻址的方法进行循环编程:用间接寻址的方法进行循环编程-Meas_Value1Meas_Value2Meas_Value9Meas_Value10Meas_Value11#Ini_Value1.02.09.010.011.0 . . .等等。等等。DB410432
15、3640DB中指向地址的指针中指向地址的指针 #Par_Pointer#Counter字节地址字节地址Date:2022-2-13File:PRO2_04E.11SIMATIC S7Siemens AG 2001. All rights reserved.SITRAIN Training for Automation and Drives内部区域,寄存器间接寻址内部区域,寄存器间接寻址LAR1 P#10.0 / 设置AR1 AR1: 00000000 0000 0000 0000 0000 0101 0000 + 200L M W AR1, P#200.0存储区域 访问 地址 偏移扩展指令:
16、L MW 210 宽度寄存器 常量lAR 1或或AR2中的内部区域指针:中的内部区域指针:B B B B B B B B B B B B B X X X15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 00 0 0 0 0 0 0 0 0 0 0 0 0 B B B31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 162022位地址字节地址(无符号整数)20215未定义l指令语法规则:指令语法规则:Date:2022-2-13File:PRO2_04E.12SIMATIC S7Siemens AG 2001. All rights
17、reserved.SITRAIN Training for Automation and Drives交叉交叉区域,寄存器间接寻址区域,寄存器间接寻址LAR1 P#I10.0 /设置AR1 AR1: 10000001 0000 0000 0000 0000 0101 0000L W AR1, P#200.0 + 200 访问 地址 偏移扩展指令: L IW 210 宽度寄存器 常量lAR 1或或AR 2中的交叉区域指针:中的交叉区域指针: B B B B B B B B B B B B B X X X15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 01 0 0 0 0
18、R R R 0 0 0 0 0 B B B31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16位地址字节地址(无符号整数)地址标识符l指令语法规则:指令语法规则:Bit 31=0: 内部区域Bit 31=1: 交叉区域l地址标识符:地址标识符:000I/O001输入(PII)010输出(PIQ)011位(Bit)存储器 100DB寄存器中的数据101DB寄存器2中的数据(DI) 110自有本地数据111调用块的LD(本地数据)Date:2022-2-13File:PRO2_04E.13SIMATIC S7Siemens AG 2001. All rig
19、hts reserved.SITRAIN Training for Automation and Drives用于装载地址寄存器的指令用于装载地址寄存器的指令装载地址寄存器装载地址寄存器lLARn (n =1 or 2): 将ACCU1中的内容装载到ARnlLARn 将中的内容装载到ARnlLARn P#将中的地址装载到ARn:l处理器寄存器:AR1,AR2 (比如: LAR1 AR2 及LAR2 AR1)l32位变量:MD,LD, DBD,DID (比如: L DBD5等)l32位符号变量: 32位全局变量(比如: LAR1 “索引”,等) (全局和局域的) 以及OB,FB及FC的TEMP(
20、临时)变量 (比如: LAR1 #Address,等)P# l指向布尔型绝对地址 En.m,An.m,Mn.m,Ln.m,DBXn.m,DIXn.m 指针: (比如: LAR1 P#M5.3, LAR2 P#I3.6,等)l指向本地、符号地址OB: TEMP(临时)变量 (比如: LAR1 P#Par_Pointer, 等)FB: IN-,OUT-, INOUT-,STAT- 及TEMP- FC:TEMP(临时)变量(LAR1 P#Loop,等) Date:2022-2-13File:PRO2_04E.14SIMATIC S7Siemens AG 2001. All rights reserv
21、ed.SITRAIN Training for Automation and Drives其它用于地址寄存器的指令其它用于地址寄存器的指令传送出地址寄存器内容传送出地址寄存器内容lTARn (n =1 or 2): 从Arn传送到ACCU1lTARn 从Arn传送到:l处理器寄存器: AR2 (比如:TAR1 AR2 )l32位绝对地址变量: MDn, LDn, DBDn, DIDn (如TAR2 MD5等)l32位符号变量: 32位全局变量(比如TAR1 “Index”,等) (全局和局域的) 及OB,FB及FC的TEMP(临时)变量 (比如TAR1 #Address等)地址寄存器内容交换地
22、址寄存器内容交换(Swap)指令指令lTAR将地址寄存器AR1和AR2的内容相互交换地址寄存器加指令地址寄存器加指令l+ARn将ACCU1-L内容加到ARnl+ARn P#n.m将内部区域指针P#n.m加到AR1或AR2中去Date:2022-2-13File:PRO2_04E.15SIMATIC S7Siemens AG 2001. All rights reserved.SITRAIN Training for Automation and Drives寄存器间接寻址的特性寄存器间接寻址的特性 在在STL/LAD/FBD编辑器内使用编辑器内使用AR1l当访问FC中的参数时,如果参数为复杂数
23、据类型(ARRAY、STRUCT、DATE_AND_TIME) ,则AR1寄存器寄存器和DB寄存器寄存器内容将会被覆盖掉。 l当访问FB中的INOUT参数时,如果该INOUT参数是复杂数据类型(ARRAY、STRUCT、DATE_AND_TIME),则AR1寄存器寄存器和DB寄存器寄存器内容将会被覆盖掉。 在装载地址寄存器和对目标变量进行寄存器间接寻址的时候,不允许在装载地址寄存器和对目标变量进行寄存器间接寻址的时候,不允许 访问局部参数访问局部参数在在STL/LAD/FBD编辑器内使用编辑器内使用AR2 l在对FB内部所有参数和静态变量进行寻址的时候,AR2寄存器寄存器和DI寄存器寄存器均用
24、作基址寄存器。如果用户在FB内部将 AR2或DI覆盖了,之后就可以访问该FB专用参数或静态变量。也就是说,未恢复两个寄存器时不可访问。l在FC内,对AR2寄存器和DI寄存器没有限制 Date:2022-2-13File:PRO2_04E.16SIMATIC S7Siemens AG 2001. All rights reserved.SITRAIN Training for Automation and Drives#ACCU1DB中指向地址的指针中指向地址的指针#AR1#ACCU2-Number1Number2Number9Number10Number111291011 . . .等等。等等
25、。DB4204323640字节地址字节地址练习练习4.2:用寄存器间接寻址进行循环编程:用寄存器间接寻址进行循环编程Date:2022-2-13File:PRO2_04E.17SIMATIC S7Siemens AG 2001. All rights reserved.SITRAIN Training for Automation and DrivesPOINTER类型和类型和ANY类型数据的块参数类型数据的块参数地址声明名称类型0.0 输入参数 DB_NumWORD2.0 输入参数 Area_Pointer DWORD6.0 输入参数 LengthWORD. . .L #DB_NumT #I
26、_DB_NumOPNDBI_DB_Num.L#Area_PointerLAR1L#Length.FC.分别传送实际地址的各个信息分别传送实际地址的各个信息 (STEP 5里的方式):里的方式): DB号号 起始地址起始地址 区域长度,等。区域长度,等。缺点:缺点: 程序员必须进行拆分程序员必须进行拆分 在调用期间,不能使用实际地址的符号名在调用期间,不能使用实际地址的符号名 一个地址一个地址(区域)需要好几个参数(区域)需要好几个参数 无一致性检查纠正无一致性检查纠正地址声明.名称类型0.0输入Measure_1POINTER. . .8.0输入Measure_2ANY. . . L P#Me
27、asure_1LAR1LWAR1,P#0.0T#I_DB_NumOPNDBI_DB_NumLDAR1,P#2.0LAR1.FC.使用使用POINTER或或ANY类型参数传递类型参数传递 (STEP 7方式):方式): 调用时,程序员可以使用实际地址的符号名调用时,程序员可以使用实际地址的符号名 由由LAD/FBD/STL编辑器拆分成单个信息编辑器拆分成单个信息 一个地址只需要一个参数一个地址只需要一个参数 进行一致性检查纠正进行一致性检查纠正Date:2022-2-13File:PRO2_04E.18SIMATIC S7Siemens AG 2001. All rights reserved.
28、SITRAIN Training for Automation and DrivesPOINTER类型的结构和参数赋值类型的结构和参数赋值Byte nByte n+2Byte n+4Byte n+1Byte n+3Byte n+5DB号(号(INT)1 O O O _ O R R R _ O O O O _ O B B B (32位交叉区域指针位交叉区域指针)B B B B _ B B B B _ B B B B _ B X X X POINTER类类型参数赋值型参数赋值l指针显示指针显示P#DBn.DBX x.y其中:n= DB号, x= 字节数, y= 位数 P#DIn .DIXx.y(比
29、如 P#DB5.DBX3.4,P#DI2.DIX10.0,等)P#Zx.y其中: Z=区域,比如:P,I,Q,M及L(比如P#I5.3,P#M10.0,等)l地址声明:地址声明:MD30 (这种情况下,DB号区域标识符及位地址自动输入 #Motor_on 到POINTER参数中)lMotor_1.speed 数据类型结构:数据类型结构:POINTERDate:2022-2-13File:PRO2_04E.19SIMATIC S7Siemens AG 2001. All rights reserved.SITRAIN Training for Automation and DrivesANY数据
30、类型的结构数据类型的结构lANY数据类型指针数据类型指针Byte nByte n+2Byte n+4DB号号1 O O O _ O R R R _ O O O O _ O B B B B B B B _ B B B B _ B B B B _ B X X X16#10Data type复制系数复制系数Byte n+6Byte n+8数据类型数据类型标识符标识符VOID00BOOL01BYTE02CHAR03WORD04INT05DWORD06DINT07REAL08DATE09TOD0ATIME0BS5TIME0CDT0ESTRING13参数类型参数类型标识符标识符BLOCK_FB17BLOC
31、K_FC18BLOCK_DB19BLOCK_SDB1ACOUNTER1CTIMER1DlANY参数类型指针参数类型指针Byte nByte n+2Byte n+416#0000定时器,计数器或块的号定时器,计数器或块的号16#10参数类型参数类型16#0001Byte n+6Byte n+816#0000Date:2022-2-13File:PRO2_04E.20SIMATIC S7Siemens AG 2001. All rights reserved.SITRAIN Training for Automation and Drives ANY数据类型的参数赋值数据类型的参数赋值指针显示:指
32、针显示:lP#数据块数据块.位地址位地址 类型号类型号P#DB10.DBX12.0 REAL 20指向DB10中的一个区域:从 Byte 12开始的20个REAL类型的地址 (ARRAY1.20 OF REAL)P#I 10.0 BOOL 8指向IB10里的一个8位区域地址声明:地址声明:l绝对地址:绝对地址:DB5.DBD10数据类型:DWORD,复制系数:1 DB号:5,指针:P#DB5.DBX10.0IW32类型:WORD,WF: 1,DB 号:0,指针: P#I 32.0T35类型: TIMER,编号:35l符号地址:符号地址:#Motor_1.speed使用基本数据类型,编译器建立正
33、确“Pump”.Start的数据类型,复制系数1以及指针注意事项注意事项符号(ARRAY、STRUCT、STRING、UDT)赋值时,数据类型标识符02(BYTE)以及区域字节长度只能由编译器来建立,并输入到ANY指针。Date:2022-2-13File:PRO2_04E.21SIMATIC S7Siemens AG 2001. All rights reserved.SITRAIN Training for Automation and DrivesANY类型间接参数分配类型间接参数分配使用临时变量对使用临时变量对ANY数据类型进行实际参数赋值数据类型进行实际参数赋值l在调用块中声明在调用块中声明ANY数据类型临时变量数据类型临时变量例如: temp aux_pointer ANY l用指针信息对用指针信息对ANY临时变量进行赋值临时变量进行赋值例如:LAR1P#aux_pointer/ 装载辅助指针地址L B#16#10/ 装载标识符10TLB AR1,P#0.0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年嘉峪关市总工会招聘公益性岗位人员笔试真题
- 2024年北京市人大常委会机关所属事业单位招聘笔试真题
- 高分辨率快速傅里叶叠层显微成像技术的研究
- Unit 4 Time to celebrate Understanding ideas教学设计 2024-2025学年外研版(2024)七年级英语上册
- 2018春济南版八年级生物下册第七单元第2章同步教学设计:7.2.1基因工程
- 企业创新管理挑战与机遇
- 人力资源管理数字化升级之路
- 2023一年级数学上册 5 6~10的认识和加减法第5课时 解决问题2教学实录 新人教版
- 物业管理公司客服职能介绍
- 职业学校教师的教育事迹与成效
- 建筑施工人员的职业道德培训计划
- 《养成学习习惯》ppt课件完整版
- 年产10万吨聚氯乙烯生产工艺设计毕业设计
- 高中18岁成人仪式主题活动设计
- 《珠穆琅玛峰》课件
- 代码生成器的需求分析报告
- 药学概论(全套课件355P)
- 2023年-2024年电子物证专业考试复习题库(含答案)
- 公司与公司签订劳务合同范本
- 信息资源管理(马费成-第三版)复习重点
- 焊接工艺评定报告PQR115
评论
0/150
提交评论