三菱plc计数器怎么减数(三菱PLC如何实现字符串末位5位数字的计数)

本文想实现字符串末位最后5位按照"00000"-"FFFFF"的16进制计数,每秒计数加1的实现,并且以字符串显示。

如何实现上述功能,有两个方法:

一、将后5位用指令DHABIN转换成十进制数据,执行DINCP加1,然后再用DBINHA转换成字符串,说起来简单,做起来还要注意几个细节的,先看完整程序.

三菱plc计数器怎么减数(三菱PLC如何实现字符串末位5位数字的计数)(1)

1、用WTOB指令将字符串分解,然后再把末位五位重新组合。

2、用DHABIN指令转换成十进制数,这里要注意DHABIN指令需要保证待转换区域内的数据为0-9,A-F之间才可以,如果有其它的数据在里面,会报错的,所以提前添加H30到相关区域,然后再转换。

3、转换完成用DINCP指令 1

4、再次用DBINHA将十进制数据转换成16进制字符串。

5、用WTOB指令将字符串分解。

6用BTOW指令将字符重新组成成字符串,也就是我们最后得到的计数值 1的字符串。

二、第二个方法原理比较简单,就是按位 1,当位数据大于F时,本位清零,上一位 1。这个方法不需要复杂的进制转换,只是如果位数过多,写起程序来比较麻烦,先看程序

三菱plc计数器怎么减数(三菱PLC如何实现字符串末位5位数字的计数)(2)

1、先把字符串用WTOB指令分解成字节。

2、按位 1,这里注意如果数字是9,在16进制是H39,再加1就变成H3A,这个并不是字母A,所以要做下判断,当位大于H39时,传送字母A给寄存器,也就是H41,如果大于H46(F),则MOV H30 D,然后上一位 1.

3、后五位都按照这个逻辑进行处理。

4、处理完成用BTOW指令转换成字符串。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页