签到有奖
消息提醒
运维工程师专区
官方商城
扫码分享好友 任选多种周边
我是一名PLC初学者,前几天编了个程序,在PLC的输出端口直接驱动三个数码管,能显示0-999的数字。现在想编个程序,把231TC模块热电偶检测到的温度,从PLC的输出端口直接显示温度值,要求显示百位十位个位,琢磨了很长时间,就是不知道怎么样能把转换成实数后的数据分离出百位数十位数个位数,让各位数通过SEG转换成段码后分别去驱动QB0、QB1、QB2。谢谢各位老师给予指点!
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1585772&b_id=3&s_id=0&num=11
你好好看看浮点数的格式,就知道如何处理了。
浮点数那些位是固定的。
实数转整数以I表示结果;
I除以1000取余,余数整除100得百位数;
I除以100取余,余数整除10得十位数;
I除以10取余,余数即为个位数;
正解,不过楼主这样做有什么意义呢,数码管大一点看得清楚一点吗。100快钱的文本显示器解决问题。
嗯,看楼上xyz
百位十位个位
xyz先除以10,取余就是个位z
xyz整数除以10后的商再除10取余数,就是十位y
xyz整数除以100后的商就是百位
你再看看实数转字符,然后裁截字符再输出。
也可以ROUND,然后I_BCD
round之后是32位的哦。32位怎么做i_bcd?
这是个比较不错的方法,当初看c语言的时候 也提到过这种方法
要显示的数是y
a=y mod 10//个位数
s=y/10
b=s mod 10//十位数
c=s/10//百位数
分享
扫码分享好友 任选多种好礼
收藏
有帮助
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
密码至少8位,包含大、小写字母,数字和符号至少三种。
允许邮箱和手机接收来自支持中心网站的信息
我已同意《支持中心网站注册协议和隐私政策》
微信登录扫码一键登录
验证码登录
密码登录
二维码失效点击重试
打开微信扫一扫,快速登录/注册
未注册手机验证后自动登录,注册即代表同意《支持中心网站注册协议和隐私政策》
三日内免验证登录
短信登录
登录