我现在想把一段博途SCL程序移植到S-300 PLC上,在博途 SCL 程序里看到使用了DWORD_TO_DINT 指令,即双字转换为双整数,但我在S7-300/400 的指令里怎么也找不到双字转换双整数的指令,而且我发现在博途的梯形图中也找不到这个指令,难道是不需要转换吗?请各位大侠指教,谢谢了。
问题补充:
谢谢“ RENHQ”大侠赐教,我还是有点不明白,因为我送入的是一个正的整数,程序中我会对它进行累加,当它达到最大值后,那最高位不就变为1了,双整数的最高位不是符号位嘛,那它是不是就变成负的整数了?麻烦您继续赐教,谢谢了。
最佳答案
RENHQ说的很对,原则上是不需要转换的,但是这两种是有区别的DINT是有符号的,DWORD是无符号的,假如你dword符号位位1那么数据就会错误了,32位这个范围很大,很小的机率会有错误的情况,建议还是用ISIEMENSID的方法,用传送但是,传送到的地址要把数据类型改为DINT。从这点上我就觉得300不如1500要更方便,更准确的表达。
提问者对于答案的评价:
谢谢!
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc287162.html