wangsai0501
级别: 家园常客
精华主题: 0
发帖数量: 380 个
工控威望: 530 点
下载积分: 1508 分
在线时间: 288(小时)
注册时间: 2010-04-12
最后登录: 2024-10-31
查看wangsai0501的 主题 / 回贴
楼主  发表于: 2012-07-04 17:31
图片:
双字最大输入范围是2147483647而实际输入的数会小于这个数,如何能输入2147483647?
如果写DMOV  D0   D2       而DO  D1   最大的数只能分别写32767   所以得到的D1D0数就是2147450879.
接着写 LD  X0    OUT    T200       T200(或者是32位计数器C200)能输入的最大的结果也就是32767       如何让T200(C200)的数变成2147483647?
[ 此帖被wangsai0501在2012-07-04 17:41重新编辑 ]
cvlsam
富士低压,POD(觸摸屏),PLC专卖
级别: VIP会员

精华主题: 3 篇
发帖数量: 6777 个
工控威望: 38380 点
下载积分: 4183 分
在线时间: 9537(小时)
注册时间: 2006-09-13
最后登录: 2024-12-20
查看cvlsam的 主题 / 回贴
1楼  发表于: 2012-07-04 20:04
请将32位寄存器想象为一个寄存器来使用。因此你的确能赋值2147483647给寄存器。

即使要作为2个寄存器来使用,也应该分清高低字的关系。
你写出来的分别给高低字赋值K32767,实际上这样组成的32位数据的二进制为:
0111 1111 1111 1111 0111 1111 1111 1111
而正确的应该是:
0111 1111 1111 1111 1111 1111 1111 1111
因此,你给低字赋值应该是HFFFF而不是K32767。
最后,并不存在32位的定时器用法,但是必定可以使用32位的寄存器,请注意32位的寄存器并非C0,C1的组合,而是有其特定的编号。



以上~