问题描述:
Unity中如何将实时时钟对应的系统字%SW51、%SW52中的月日时分拆成INT型数据单独显示?所属产品线:
EcoStruxure Control Expert(原Unity Pro)解决方法:
系统字信息简介:
%SW51:小时和分钟 (16#HHMM)
%SW52:月份和日期 (16#MMDD)
系统将%SW51,%SW52定义成了INT型,但其实其数据是BCD格式的。要将BCD格式的月日时分分拆成四个INT型数据,请参考以下步骤:
1. 用INT_TO_WORD将%SW51转换成Word型
2. 分别获取步骤1中的高字节和低字节
3. 将步骤2输出的高字节和低字节分别用WORD_TO_INT转换成INT输出
4. 将步骤3的结果用BCD_TO_INT转换输出
注:仿真模式不支持编程写时钟功能。
附编程截图:
1.自定义DFB并编程
2.调用DFB界面
3.联机运行结果
是否有帮助?