三菱数据移位指令_三菱移位指令的应用

三菱数据移位指令_三菱移位指令的应用我们都知道移位指令的功能是对数据进行左、右移动。有循环移位指令ROR,ROL,RCR和RCL,位移字移指令SFTR,SFTL,WSFR和WSFL,还有移位读写指令SFWR和SFEL。在编写程序中,较为常用的就是POR,ROL,SFTR和SFTL这几个了,对于这几个指令我们就要掌握一下了。在这里,我们需要注意的一点是,在使用这些指令时最好是使用脉冲执行型指令。因为如果使用连续执行型指令的话,这样每个…

大家好,又见面了,我是你们的朋友全栈君。

我们都知道移位指令的功能是对数据进行左、右移动。有循环移位指令ROR,ROL,RCR和RCL,位移字移指令SFTR,SFTL,WSFR和WSFL,还有移位读写指令SFWR和SFEL。在编写程序中,较为常用的就是POR,ROL,SFTR和SFTL这几个了,对于这几个指令我们就要掌握一下了。在这里,我们需要注意的一点是,在使用这些指令时最好是使用脉冲执行型指令。因为如果使用连续执行型指令的话,这样每个扫描周期都要执行一次了。

下面我们便举几个简单的例子来学习一下这几个常用指令。

1、 要求Y0-Y2三盏灯轮流亮1s,然后一起亮1s,如此反复循环。

213721849_2_20210122074550989_wm

下面就分析一下以上的程序。对于Y2Y1Y0,依控制要求,每次其输出应为001,010,100,111,其对应的十六进制数为1247,先将此循环数据送到数据寄存器,再执行循环移位,以1s的速度移位,每次移动4位,最后将数据寄存器中的低四位送到K1Y0,这样在Y3-Y0的输出就会得到其控制要求的输出。

该要求既可以用循环右移指令,也可以用循环左移指令,其实都是差不多的,只需要改动一点点。只要了解了控制要求,理解了它是如何控制的,就万变不离其宗了。下面便是用循环左移指令编写的程序。

213721849_3_20210122074551229_wm

2、控制一组8个灯,当启动时,要求Y7-Y0这8个灯从右到左逐个点亮,全部灯点亮时,再从左到右逐个熄灭,全部灯熄灭后,再从左到右逐个点亮,全部灯点亮时,再从右到左逐个熄灭,如此反复循环。

213721849_4_20210122074551567_wm

下面也分析一下以上的程序。定时器T0用于左移和右移的移位信号,定时器T1用于对K1M0的加1计数控制,INCP K1M0则为加1计数器,计数值用K1M0表示,其中M1、M0的计数值用于左右移位的控制。当M1=0,M0=1时为左移逐渐点亮;当M1=1,M0=0时为右移逐渐熄灭;当M0 =1,M1 =1时为右移逐渐点亮;当M0 =0,M1= 0时为左移逐渐熄灭。

当按下启动按钮时,T1常闭触点闭合,执行一次INCP K1M0指令,K1M0=0001,则M1=0,M0=1,M1常闭触点闭合,执行左移指令SFTL,T0每隔1s发一个脉冲,将M0的1依次左移到Y0-Y7中,依次点亮。T1每隔8s发一个脉冲,执行一次INCP K1M0指令,K1M0=0010,则M1=1,M0=0,M1常开触点闭合,执行右移指令SFTR,T0每隔1s发一个脉冲,将M0的0依次右移到Y7-70中,依次熄灭。以此类推,在此就不赘述了。这样,从而可以达到控制要求。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/131900.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • PHP递归算法_JavaScript遍历数组

    PHP递归算法_JavaScript遍历数组本文实例讲述了PHP使用递归算法无限遍历数组。分享给大家供大家参考,具体如下:(PS:为方便阅读,此处代码使用php代码格式化工具http://tools.jb51.net/code/phpformat进行了格式化处理)//无限遍历数组$a1=array(“a”,”b”,”c”);//一维数组$a2=array(array(21,3,6),array(“a”,”b”,”c”…

  • 七、hibernate中的持久层模板操作HibernateTemplate的用法「建议收藏」

    七、hibernate中的持久层模板操作HibernateTemplate的用法「建议收藏」利用模板操作来替换掉持久层的session,必须先将spring和hibernate之间进行整合,整合的applicationContext配置文件介绍在:https://blog.csdn.net/IT_CREATE/article/details/86141823 那么在持久层的代码就如下面这样写:1、对于增删改(和session的操作差不多,也有save、update、del…

  • 七牛云,在浏览器可以正常加载图片在html img标签中无法加载

    七牛云,在浏览器可以正常加载图片在html img标签中无法加载

  • MySQL数据库:锁机制

    MySQL数据库:锁机制

  • 音频可视化图形引擎—Specinker「建议收藏」

    音频可视化图形引擎—Specinker「建议收藏」bo主有话说:喜欢音乐的小伙伴相信都或多或少看到过一些频谱,简单的比如QQ音乐,酷狗等一些音乐软件上面都有一些,可惜的是这些频谱嵌入到软件界面上,好看的就那么一两个,并不能满足一些人对音乐的渴望,至少对我来说,是这样的。当然,还可以使用雨滴,AE来制作非常炫酷的频谱,但是这两个软件却也有一些弊端。通过雨滴,我们可以制作一些悬挂在桌面的频谱,但是制作这样的频谱,需要使用雨滴的编程语法进行开发,这…

    2022年10月12日
  • 【AC大牛陈鸿的ACM总结贴】【ID AekdyCoin】人家当初也一样是菜鸟

    【AC大牛陈鸿的ACM总结贴】【ID AekdyCoin】人家当初也一样是菜鸟 acm总结帖_ByAekdyCoin     各路大牛都在中国大陆的5个赛区结束以后纷纷发出了退役帖,总结帖,或功德圆满,或死不瞑目,而这也许又会造就明年的各种“炸尸”风波。为了考虑在发退役贴以后明年我也成为“僵尸”的可能性,于是改名曰“总结贴”,不提比赛细节,不提比赛流水账,权当是大学本科生涯中acm生活的点滴记录……   (1)入门篇甲…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号