三菱PLC里类似数组的数据存储方式

实现功能:数据先进的先出,比如将1、2、3依次存入D0、D1、D2,目前D0(1)、D1(2)、D2(3),取第一次数据D1之后D0(2)、D1(3)、D2(0),取第二次数据D1之后D0(3)、D1(0)、D2(0),即把数据寄存器D变成了一维数组。

 

一、组合一些基础的指令实现

首先需要了解一下变址寄存器(V、Z)、简单的流程控制指令(call、fend、P、sret)、逻辑运算指令(inc)、特殊软元件(M8000、M8002)

 

1、主程序

 

2、子程序存数据

 

 3、子程序取数据

 

后面查看手册,发现了一个更方便的指令来实现,归类到移位指令的FIFO(file in file out)

 

 二、FIFO指令实现

 先看看这个指令的例子:

这个更加简单,K相当于定义数组长度,把D200的值存到D1(从D1开始依次往后),D0为当前“数组”的数据个数;D300是取数据的。

 

 如有什么错误,不吝赐教。

 

posted @ 2019-07-10 17:23  工控废物  阅读(7826)  评论(0编辑  收藏  举报