您现在的位置是:首页 > PLC技术 > PLC技术
CPM2A系列PLC的单字分配(DIST(80))指令
来源:艾特贸易2017-06-05
简介DIST( 80) 能用作单字分配或根据控制字 C 的内容用于堆栈操作。其梯形图如图 8-9 所示。 图 8-9 DIST( 80) 指令梯形图 当 C 的第 12 ~ 15 位为 0~8 数值时, DIST( 80) 可用于单字分配操作。整个
DIST( 80)能用作单字分配或根据控制字C的内容用于堆栈操作。其梯形图如图8-9所示。
图8-9 DIST( 80)指令梯形图
当C的第12~15位为0~8数值时,DIST( 80)可用于单字分配操作。整个C的内容指定一个偏移量,偏移量Of(BCD码0000~ 2047)。
当执行条件为OFF时,DIST( 80)不执行;当执行条件为ON时,DIST( 80)把S的内容复制到DBs+Of,也就是说,Of是被加到DBs来决定目的字的地址。
①DBs和DBs+ Of必须在同一数据区域并且不能在DM 6144~ DM 665之间。
②IR 000~ IR 019或IR 000~ IR 049与IR 200~ IR 255被看作不同的数据区。在整个源数据区中必须使用其中的一块或其他的数据区,如果地址中包含了以上两块IR地址的话,将会有一个错误发生。
【例8-4】 图8-10显示如何使用DIST( 80)来把#OOFF复制到HR 10 +Of。LR 10的内容是#3005,因此,当IR 0000为ON时,#00FF被复制给HR 15(HR10+5)。
图8-10 单字分配指令的使用
当C的第12~15位为9时,DIST( 80)能用作堆栈操作。C的另三位指定堆栈(BCD码:000~ 999)中的字数。DBs的内容是堆栈的指针:
当执行条件为OFF时,DIST( 80)不执行;当执行条件为ON时,DIST( 80)把S的内容复制到DBs +1 +DBs的内容中。换句话说,1和DBs的内容被加到DBs中来决定目的字地址。然后,DBs的内容加1。
①除非使用指令微分形式(@DIST(80))或将DIST( 80)与DIFU(13)或结合使用,否则DIST( 80)会在每个周期中执行。
②在使用DIST( 80)进行堆栈操作之前,一定要对堆栈指针初始化。
【例8-5】 图8-11显示如何使用DIST(80)在DM 0001与DM 0005之间创建堆栈。DM 0000起堆栈指针的作用。
图8-11 DIST(80)在DM 0001与DM 0005之间创建堆栈
对标志位的影响:
·ER:控制字中的偏移量或堆栈长度非BCD码。
·间接寻址字DM不存在。(字*DM中的内容非BCD码,或者DM区域已经超出了范围)。
·堆栈操作期间,堆栈指针加1后的值超出了堆栈的长度。
·EQ:当S的内容为0时置ON,否则置OFF。
点击排行
