怎么在wincc显示正常数据,程序传送完直接是以BCD码显示的系统时间,传送到WINCC中,它会直接 将BCD码当作十六进制数转化了,语言表达的有点不明白,还是看图吧
图片说明:
最佳答案
真佩服我 还看明白了, 你把左边一副图,的每一个mw 分成两个mw 或者两个mb也行 ,但是要分开, 因为你的小时/分钟/秒钟不是十六进制的关系, 而WINCC上显示的都是十进制.
简而言之,你左边这幅图按照BCD码是没错的,但是你不能将个位和十位数一起发送,,你取出低字节的前四位和低字节的后四位,单独发过去,就行,
当然方法有很多,,, 或者你直接取出前四位(2#) 乘以10再加上低字节的后四位(2#) ,转换为十进制的数一起发...
对了,,好像有BCD码直接的转换INT的功能块,
自己去找找吧
提问者对于答案的评价:
谢谢
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc361743.html