读取DATE_AND_TIME 变量的专用字节并从这两位数所在ASCII码中创建专用位。DB1.DBB0=13 从plc读的到的年(13年)BCD码 0001 0011
示例:
L DB1.DBB0
SLD 12 //左移双字(32位) 变成 0000 0000 0001 0011 0000 0000 0000
SRW 4 //右移字(16位) 0001 0011 0000 0000
SRD 8 //右移双字(32位) 不是又变回 0001 0011吗
L W#16#3030 //加48 48变成字符
+ I
T DB1.DBW16
是这么移的吗,为什么这么移就能变成字符
谢谢?!!!
最佳答案
应该是这样的:
L DB1.DBB0 //ACCU1= 0001 0011
SLD 12 //ACCU1= 0001 0011 0000 0000 0000
SRW 4 //ACCU1= 0001 0000 0011 0000 0000
SRD 8 //ACCU1= 0001 0000 0011
L W#16#3030 // 0011 0000 0011 0000
+ I
T DB1.DBW16 // 结果=0011 0001 0011 0011(3133)
其中31就是1的ASCII码,33是3的ASCII码,对应字符‘1‘和‘3’
提问者对于答案的评价:
3q
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc236394.html