登录
首页 PLC论坛 PLC论坛
回帖 发帖
正文

主题:请教三菱PLC中如何把数据寄存器D0定义成无符号整数类型

点击:11817 回复:22

请教各位在三菱PLC中D0数据类型默认是有符号数,因此只能存-32767~+32767。如果是无符号数据类型,则可存放0~65536.
我要将40000存入D0,只用16位。怎么实现?还有如果我要存一个大于65536的数到D0中去并且在威纶通的触摸屏中用数值元件显示出来,威纶通的数值元件的数据格式可以设置成32位无符号数,显示出来是没有问题的,但是它关联的三菱PLC中的数据寄存器D0却只能最大放65536,这个问题又能如何解决呢?
20-09-25 14:47
1、D0存4万: MOV H9C40 D0
2、大于65535必须使用2个字,DMOV KXXXXXXX  D0
Good Luck~
20-09-25 15:28
请问我能在三菱的PLC程序中把D0定义成16位无符号的整数吗
20-09-25 15:46
应该是从西门子转过来的表情。三菱里面的INT和Word数据可没分那么清噢,单字都是有符号的,使用单字和双字的区别是32位的话前面加D(如DMOV DADD DSUB DMUL DDIV),16位应用前面不加D(如MOV ADD SUB MUL)。如果非要定义,可以在全局标签那里定义
附件 2.jpg
最后修改:2020/9/25 16:17:35
20-09-25 16:10
三菱plc里面32位和16位不需要定义的,32位在指令里面的用法是加D就可以了,比如传送指令,16位 MOV,32位 DMOV.
20-09-25 16:16
请问在GX WORKS2中新建工程时是不是要选择结构工程啊,如果选择简单工程的话怎么找不到你说的全局标签GLOABLE1呢
现在知道了,要把那个使用标签的选项打勾
最后修改:2020/9/26 11:38:04
20-09-25 16:39
我是用了DMOV,但是我在触摸屏里需要显示的数大于32767,为64000,结果当数值大于32767的时候就变成0重新累加了,我实际上就是为了显示Y0发出的脉冲数量,用了DMOV D8340 D0,然后再把D0在触摸屏上显示出来,就出现上面的问题了
20-09-25 16:43
D8340 32位的显示范围是在-2,147,483,648~2,147,483,647。
在触摸屏上的数据格式要选择32位有符号。
在编程软件里面监控D0的话也要注意显示类型为32位。
20-09-25 16:54
问题是如果是32位数据的话,是不是包含D0和D1两个数据寄存器啊?一个存储低16位,一个存储高16位
20-09-25 16:59
是的,32位就包含了两个寄存器,比如D0+D1
20-09-25 17:10

上一页下一页

工控新闻

更多新闻资讯