三菱plc bcd指令详解_三菱PLC中的先进先出读取指令

在通讯或者工艺要求有较多的数据存取中,还是经常需要用到表指令的,因此各个厂家的PLC中基本都有表指令,今天测试了三菱FX5UPLC中的先进先出读取指令,可以说这个指令稍微有点费解,因此记录一下!

三菱PLC中的先进先出指令中SFRD(P)是用于先入先出控制的数据读取指令,SFWR(P)是用于先入先出以及先入后出控制的数据写入指令!---这是其手册上的官方表述,今天先来说一下这个SFRD指令!

我简单做了一段程序:

15d55768542b7936b165f387c48fe4dd.png

用来测试读取指令的程序

还是直接来看程序的监控动态图吧:

dc9f4cece01f46059003ca52981ee252.gif

先入先出读取指令监控动态图

我简单介绍一下这个程序,SM402是FX5U PLC中的一个特殊点,就是CPU运行后为1一次,用来做初始化,可以看到我给了D0一个初始值10,给了D1开始的字符串'ABCDEFGHIJKLMN'这样几个字符,其实就是D1中存着AB,D2中存在CD,D3存EF,D4存GH,D5存IJ,依次类推!---也就是说第一行程序就是用来给初始值的!

第二行程序就M1这个点,我在画面上人为的让其接通和断开,来让SFRDP指令执行。

从动态图可以看到:'ABCDEFGHILMN'被写入D1-D7中,在使用SFRD一次指令后,D1的内容被先读取出来,送到D30中,而后相当于D1空了,D2-D5中的内容前移,D5又空了把D6中的内容复制到D5中去!D6中的内容始终不变!

结合三菱的手册中的说法,这段SFRD D0 D30 K7,就可以理解为是依次将D1中的内容读取出来传送到D30中,读取的内容有(7-1)个字,也就是最终实现对D1-D6中的内容读取,但是总是从D1这个字读取,下边的整体上移,上移后的空位用D6中的内容去补充!当D0为0,则程序不再执行,D30中的值就会停止变化!

就简单记录到这里,虽然这个指令表述起来有点不好表述,但是配合动态图来看,理解起来还是很容易的!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值