语言4位bcd码怎么加加_S7300400如何使用SCL语言调用SFC1(READ_CLK)读取日期和时间?...

系统功能 SFC1 用于读取 CPU 的系统时钟。系统时钟存储在数据类型为DATE_AND_TIME的变量里。通过指针访问系统时钟的单个组成元素。

数据类型DATE_AND_TIME所包含的关于年、月、日、时等信息是以 BCD 码的格式存储在 8 个字节里。该数据类型显示的范围是:

DT#1990-1-1-0:0:0.0 到 DT#2089-12-31-23:59:59.999

下表给出了实例表示 2014 年1月 2 日,星期四,3点 5 分 11.854 秒对应数据类型DATE_AND_TIME的每个字节所包含的内容。 

DATE_AND_TIME为64位复杂数据类型

绝对地址内容例子
字节0B#16#14
字节1B#16#01
字节2B#16#02
字节3小时B#16#03
字节4分钟B#16#05
字节5B#16#11

字节6+字节7高4位*

(字6)

毫秒W#16#8545
字节7 (低四位*)星期:
1:星期日
2:星期一
3:星期二
4:星期三
5:星期四
6:星期五
7:星期六
B#16#45

*毫秒最大值999的BCD码需要占用12位。因此,毫秒值占用字节6以及字节7的高4位。字节7的剩下低4位用于表示星期。

eed1c98cb8443d0a8f31ff8381b30019.png

用SFC1 (READ_CLK)读取系统时钟的说明:

414a2de33a91d3e12954fafa5bbe54d4.png

案例:

46b5acc06bb8464d2aade1712e0f75c4.png

打开SCL软件在静态变量里定义 一个DATE_AND_TIME数据类型的变量

利用‘AT’继承将64位时间变量拆分出来

AT指令可以使用户能够以不同的数据类型来访问一个已经声明的变量。此指令类似于高级编程语言中的“继承”概念。此指令有如下特点:

特点一:定义仅在块内有效,在接口参数中不出现。

特点二:在块中可以使用其他数据类型的视图。

特点三:它只是让另外一些变量继承了某个变量的特性,仅仅数据类型是新的,其他特性相同。

908760a84826b371c28ff8b0c109e9ba.png

如果使用全部的时间,例如进行WINCC面板显示可以直接使用''DAT''变量。

如果使用单个时间就可以使用拆分后的时间

这里有个小技巧:

因为我们上面说到毫秒值占用字节6以及字节7的高4位。星期占用字节7的剩下低4位

那如何将一个16位字拆分成12位和4位呢?

这里我们可以利用“与”的方式

MB52 := WORD_TO_BYTE(TMP_DAT.Q7 AND 16#FFF0)

“与”16#FFF0不就是“与”2#1111111111110000正好提取出12位出来

完整代码:

92fddc85c19da7a0143bf898eea39726.png

         d843842182aff5ff8017924b194e222a.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/472904.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php数据库操作命令精华大全

1、表结构//列信息2、表数据//行信息3、表索引//把列中的行加到索引中(一般情况下一个表一定要把id这一列的所有数据都加到主键索引中) 2、[dos下]关闭mysql:net stop mysql开启mysql:net start mysql登陆mysql:mysql -uroot -p123 --teec:\mysql.log查看…

python装饰器与闭包_python 装饰器和闭包

装饰器 就是函数 功能是为其他函数添加附加功能 def timer(func): def inner(*args,**kwargs): print("执行装饰器") return func(*args,**kwargs) return inner 使用装饰器 timer def test(l): for i in range(l): print(i) test(100) 函数也可以成为对象 l test .…

LintCode MySQL 1932/1933. 挂科最多的同学 I / II

文章目录1. 题目2. 解题1. 题目 exams 表中存放着同学们的考试记录 请用 SQL 语句,找到挂科数最多的同学所对应的 student_id https://www.lintcode.com/problem/1932 2. 解题 -- Write your SQL Query here -- -- example: SELECT * FROM XX_TABLE WHERE XXX…

python 画三角函数_python,将三角函数绘制成二维数组

看起来a, b, c是常量&#xff0c;z是a和{}之间的np.linspace。在a 1 b 2 c 3 def triangle (z, a a, b b, c c): y np.zeros(z.shape) y[z < a] 0 y[z > c] 0 first_half np.logical_and(a < z, z < b) y[first_half] (z[first_half]-a) / (b-a) second…

python中遍历列表enumerate函数_python遍历序列enumerate函数浅析

enumerate函数用于遍历序列中的元素以及它们的下标。enumerate函数说明&#xff1a;函数原型&#xff1a;enumerate(sequence, [start0])功能&#xff1a;将可循环序列sequence以start开始分别列出序列数据和数据下标即对一个可遍历的数据对象(如列表、元组或字符串)&#xff0…

SuperSlide

SuperSlide 致力于解决网站大部分特效展示问题&#xff0c;使网站代码规范整洁&#xff0c;方便维护更新。网站上常用的“焦点图/幻灯片”“Tab标签切换”“图片滚动”“无缝滚动”等只需要一个SuperSlide即可解决&#xff01;从此无需网上苦苦寻觅特效&#xff0c;无需加载n个…

LeetCode 1758. 生成交替二进制字符串的最少操作数(DP)

文章目录1. 题目2. 解题1. 题目 给你一个仅由字符 ‘0’ 和 ‘1’ 组成的字符串 s 。 一步操作中&#xff0c;你可以将任一 ‘0’ 变成 ‘1’ &#xff0c;或者将 ‘1’ 变成 ‘0’ 。 交替字符串 定义为&#xff1a;如果字符串中不存在相邻两个字符相等的情况&#xff0c;那…

python内置的集成开发工具是什么_python内置的集成开发工具是什么_后端开发

go语言之goroute协程_后端开发 协程&#xff08;coroutine&#xff09;是Go语言中的轻量级线程实现&#xff0c;由Go运行时&#xff08;runtime&#xff09;管理。下面就来由go入门教程栏目介绍一下go语言中的goroute协程。python内置的集成开发工具是什么 Python自带的集成开发…

python槽格式里填啥_用于填充插槽的网络挂钩

有时将param设置为required是不够的&#xff0c;因为您不仅需要该param存在&#xff0c;而且需要以特定的格式显示&#xff0c;还有一种使用events的替代方法。在有多个步骤&#xff0c;但一旦你熟悉了&#xff0c;你会做得很快。在1)创建2个新的意图&#xff1a;Year - Confir…

SQL Server 2008R2数据库文件导入到SQL Server 2008数据库中

最近&#xff0c;电脑重装系统之后&#xff0c;安装了SQL Server 2008。附加数据库文件的时候&#xff0c;发现无法附加&#xff0c;提示版本不对。想起来&#xff0c;原来的数据库版本是SQL Server 2008R2。低版本的数据库管理工具无法兼容高版本的数据库文件&#xff0c;所以…

python语言的注释语句引导符_Python 为什么用 # 号作注释符?

关于编程语言中的注释&#xff0c;其重要性基本上已为大家所共识。 然而关于注释的规范&#xff0c;这个话题就像我们之前聊过的缩进、终止符和命名方式一样&#xff0c;众口难调。 注释符通常可分为两种&#xff0c;即行注释与块注释&#xff08;inline/block&#xff09;&…

python 白化_MeteoInfo和Python显著性检验

MeteoInfo显著性检验&#xff1a;MeteoInfo官网&#xff1a;http://www.meteothink.org源代码&#xff1a;https://github.com/meteoinfofn F:/RMeteoInfo/data/test.txtny 71nx 144m ny * nxn 62ss1 asciiread(fn, shape(71,144,n))ss1 ss1[::-1,::1,:]X ss1.reshape(…

最新版本_adt-bundle-windows-x86_64-20140702 无法建立avd

问题描述不是说:"__ADT Bundle包含了Eclipse、ADT插件和SDK Tools&#xff0c;是已经集成好的IDE&#xff0c;只需安装好Jdk即可开始开发&#xff0c;推荐初学者下载ADT Bundle&#xff0c;不用再折腾开发环境。"为什么我下了最新的 版本,还是无法建立 AVD.解决方案1…

LeetCode 1760. 袋子里最少数目的球(二分查找)

文章目录1. 题目2. 解题1. 题目 给你一个整数数组 nums &#xff0c;其中 nums[i] 表示第 i 个袋子里球的数目。同时给你一个整数 maxOperations 。 你可以进行如下操作至多 maxOperations 次&#xff1a; 选择任意一个袋子&#xff0c;并将袋子里的球分到 2 个新的袋子中&a…

判断鼠标不在控件上_VB常用控件属性讲解单选按钮、复选框总结

1单选按钮、复选框做为VB编程中的选择性控件&#xff0c;在实际程序中有着广泛的应用&#xff0c;所以熟练掌握其特殊属性的用法就很重要了&#xff01;单选按钮、复选框的实际应用图复选框(CheckBox)控件属性说明Name复选框控件的名称Alignment设置标题文本的对齐方式, 取值为…

LeetCode 1763. 最长的美好子字符串

文章目录1. 题目2. 解题1. 题目 当一个字符串 s 包含的每一种字母的大写和小写形式 同时 出现在 s 中&#xff0c;就称这个字符串 s 是 美好 字符串。 比方说&#xff0c;"abABB" 是美好字符串&#xff0c;因为 ‘A’ 和 ‘a’ 同时出现了&#xff0c;且 ‘B’ 和 ‘…

linux下的socket通信小程序分享——第三圣子

第三圣子 最近学习unix网络编程&#xff0c;感觉东西零零碎碎&#xff0c;比较混乱。因此决定整理以下&#xff0c;发一个小博客。一来可以与大家分享以下&#xff0c;二来可以总结提高一下所学的东西。话说&#xff1a;竹子为什么长的高&#xff0c;因为它喜欢总结阿&#xff…

处理器指令编码可重定义的方法_从零开始设计四位栈处理器(2)——结构与指令集...

从零设计四位栈处理器&#xff08;2&#xff09;——结构与指令集一句话概括&#xff1a; 在Toxic处理器中&#xff0c;万物皆栈。熟悉汇编语言的同学会了解&#xff0c;一般的汇编语言&#xff0c;会包含以下几个部分&#xff1a;寄存器地址立即数操作码在这期文章中&#xff…

raptor累乘流程图_Markdown快速上手指南

Markdown快速上手指南1、Markdown介绍markdown可以实现快速html文档编辑&#xff0c;格式优没&#xff0c;并且不需要使用html元素。 markdown采用普通文本的形式&#xff0c;例如读书笔记等易于使用的文本格式进行编写。 如果实在需要生成markdown不支持的html元素的话&#x…

OA项目10:部门管理的三个细节问题的解决及处理懒加载问题

首注&#xff1a;本学习教程为传智播客汤阳光讲师所公布的免费OA项目视频我的文字版实践笔记&#xff0c;本人用此来加强巩固自己开发知识&#xff0c;如有网友转载&#xff0c;请注明。谢谢。 一 部门管理遗留三个细节问题&#xff0c;及其处理方法&#xff1a; 1.当选择了子…