STEP7的时间读写如何转化?

西门子plc 发布于 6个月前 分类:S7-300/400

STEP7的时间读写如何转化:CALL  "READ_CLK"
RET_VAL:=MW10
CDT    :=DB1.ReadSysTime
NOP   0

    CALL  "SET_CLK"
PDT    :=DB1.SetSysTime
RET_VAL:=MW2
NOP   0
读写都是BCD码。分别按照年、月、日、时、分、秒的顺序。为什么WINCC直接读写BCD码发生错位现象?如何解决?

2个回复

  • plc学习
    plc学习

    Date_and_time变量为8个字节,分别表示年、月、日、时、分、秒、毫秒 、毫秒+周(高4位为毫秒,后4位为周),可以将各字节使用BCD_I分别转换成十进制数,然后再从WinCC读取。BCD_I并不支持字节的转换,可以先将某一字节MOVE到一个字的低字节中,然后再使用BCD_I指令。

  • plc电工爱好者
    plc电工爱好者

    日期时间是年、月、日、时、分、秒、 、周,一共8字节