技成培训网 技成学习APP 技成工具箱 技成企业服务

欢迎回到技成培训网

技成培训网

电工题库宝典

技成电工课堂

PLC练习题

技成PLC课堂

变频器故障查询

技成PLC学吧

伺服驱动故障查询

技成PLC网校

当前位置:技成首页 > 文章中心 > 技成百科 > 300系列的数据转换

300系列的数据转换

112.95.251.214 发布于2014-04-14 18:11 51 0 标签:

有一块dp总线的数字显示表。表接受数据的区域是一个pqw,也就是在程序里往pqw里面输入一个十进制数据(这个是表的要求,而且显示模式是pqw里面是xxxxx时候,表就会显示xxx.xx,也就是说要显示7.23,必须输入723)但是表的数据是通过运算得过来的,得到的值只能是di或者real类型,都是32位的数据。但是pqw只能接受16位!该怎么办?可以用什么样的转换指令来完成?

佳答案

若是real:
1、先乘以100,
2、新的real取整(round取整为接近的整数,若恰好位于两个整数之间,取偶数,trunc截尾取整,ceil向上取整,floor向下取整,floor与trunc有相似的地方,差异在于负数,对于-12.1,floor为-13,而trunc为-12),取整结果均为双整数
3、双整数转换成bcd码,指令di_bcd
4、取bcd的低16位赋值给pqw*。即取高址区16位,如bcd码md100取md102,传送给pqw*

若是di
按照上述第三步开始。

指令本身可能出现溢出,但实际中会不会溢出,可以计算估计。

若有收获,就点个赞吧!

文章来源于网络及文献如有侵权请联系站长
分享到:

微信扫一扫分享

阅读与本文标签相同的文章

相关推荐

最新文章 热门文章
最新课程 免费课程
PLC资料下载 电工电气资料下载
应用新秀
变频器故障代码查询APP
伺服故障代码查询APP
技成
手机APP
热门标签