数据结构
文章平均质量分 63
林磊教育
自动化行业,擅长codesys
展开
-
Codesys与c# 参数对比:IN(VAR_INPUT)、OUT(VAR_OUTPUT)、REF(VAR_IN_OUT )
1 c#中函数参数的in,out是值拷贝类型,函数中必须重新开辟对应类型变量的内存空间,把值拷贝进入和拷贝出去ref参数 是引用类型,传入的是外部变量的地址(指针),在函数中通过地址,读写地址对应的数据;2 、Codesys中函数VAR_INPUT 和 C# 函数in 对应VAR_OUTPUT 和 C# 函数out对应VAR_IN_OUT 和 C# ref 对应原创 2023-12-21 09:21:02 · 802 阅读 · 0 评论 -
Codesys 数据结构:扩展数据类型之引用 Reference 详解
REFERENCE(引用)是对指针的应用,内部也是指针;指针可以指向各种数据类型(bit除外),结构体,功能块,函数及程序,引用也同样可以。如果对codesys指针不太了解,可以参考上一篇博客优点1: 类型安全对于引用,编译器在分配引用时会检查两个类型是否一致,例如VAR_INPUT(*指针*)(*引用*)END_VAR(*正常:将BOOL类型地址给INT类型指针*)(*报警:将BOOL类型赋值给INT类型引用*)优点2: 传参写法简介。原创 2023-12-19 00:15:00 · 1454 阅读 · 1 评论 -
Codesys数据结构:扩展数据类型之指针 Pointer 详解
当定义一个变量并为其赋值的时候,计算机会开辟一块空间用来存取变量值,在程序中一般是通过变量名来引用变量的值,实际上程序在编译的时候已经将变量名字转为变量的地址,即通过变量名找存储单元的地址,从而读取或修改存储单元的变量值;(1) 每个地址对应的空间是一个byte,byte中的每一位bit不具备单独的地址,如下图所示,取输出地址区第1个字节中每一位的地址,运行查看都是同一个值,这个值就是这个字节的地址;(1)通过下标的方式:它进行了2部分工作,第一步是进行地址偏移,第二步取偏移后地址对应存储区的变量值;原创 2023-12-17 18:20:08 · 3237 阅读 · 1 评论 -
Codesys 数据结构:扩展数据类型之联合体(UNION) 类型详解
联合体就是不同类型的变量占用同一个内存的数据结构;其声明语法如下例如。原创 2023-12-17 18:19:20 · 921 阅读 · 1 评论 -
Codesys数据类型:扩展数据类型之 别名 详解
别名的目的是声明出 基本数据类型,结构体,枚举、共用体(UNION)、功能块、指针备用名字,方便使用;以关键字TYPE开始,以关键字END_TYPE结尾其声明格式如下TYPE <别名名字> : <别名类型>;END_TYPE。原创 2023-12-17 18:18:46 · 456 阅读 · 1 评论 -
Codesys数据类型:扩展数据类型之TIME,LTIME
这个函数产生自系统启动以来经过的时间(以毫秒为单位)循环1百万次的时间是 1毫秒704微妙700纳秒。可以用于计算中间语句运行的时间,以便优化算法等。LTIME()函数返回LTIME类型数据。TIME()函数返回TIME类型数据。原创 2023-12-17 18:18:03 · 504 阅读 · 1 评论 -
Codesys数据结构:时间 标准数据类型
长度为32位的时间数据类型,分别率为毫秒,其数据类型的常量以"T#"开头,其变量建议使用前缀"t"标识,比如下面代码中的tStartTime。其中 "D"表示天,"H"表示小时,"M"表示分钟,"S"表示秒,"MS"表示毫秒。原创 2023-12-17 18:17:06 · 1603 阅读 · 2 评论 -
Codesys数据结构:扩展数据类型Any的探索
Any内部是一个数据结构体,在定义一个Any变量时,内部会转成其结构体,定义如下TYPE Any : STRUCT // 实际参数的类型 typeclass : __SYSTEM . TYPE_CLASS;// 指向实际参数的指针 pvalue : POINTER TO BYTE;// 指针指向的数据大小 diSize : DINT;END_STRUCTEND_TYPETYPE_CLASS是变量的数据类类型,对于用户自定义的数据类型或者功能块实例,其值是 TYPE_USERDEF;原创 2023-12-17 18:16:24 · 681 阅读 · 2 评论 -
Codesys 数据结构: 扩展数据类型之bit类型详解
REFERENCE(引用)是对指针的应用,内部也是指针;指针可以指向各种数据类型(bit除外),结构体,功能块,函数及程序,引用也同样可以。如果对codesys指针不太了解,可以参考上一篇博客优点1: 类型安全对于引用,编译器在分配引用时会检查两个类型是否一致,例如VAR_INPUT(*指针*)(*引用*)END_VAR(*正常:将BOOL类型地址给INT类型指针*)(*报警:将BOOL类型赋值给INT类型引用*)优点2: 传参写法简介。原创 2023-12-17 18:15:12 · 365 阅读 · 0 评论 -
Codesys数据结构(2):标准数据类型
这里的标准指的是IEC61131-3,也就是说下面的数据类型是Codesys符合这个标准的数据类型,IEC 61131-3是由国际电工委员会所制定IEC 61131标准的第3部分,用于规范可编程逻辑控制器(PLC),DCS,IPC,CNC和SCADA的编程系统的标准,应用IEC 61131-3标准已经成为工业控制领域的趋势。在PLC方面,编辑软件只需符合IEC 61131-3国际标准规范,便可借由符合各项标准的语言架构,进而能建立任何人皆可了解的程序—《百度百科》。原创 2023-12-17 18:06:59 · 2827 阅读 · 0 评论 -
Codesys数据结构(1): 数据类型
Codesys软件是基于IEC61131-3国际标准的控制器开发平台软件;IEC 61131-3 标准包括两部分:编程和变量。编程部分描述了两个重要模型:IEC软件模型和通讯模型。变量部分定义了应用编程中需要的数据类型。计算机处理数据都是二进制处理方式,编译器会将编写的代码翻译成机器语言,在翻译成机器语言过程中,编译器会根据数据类型对对应内存中(01010001)的数据进行解析;一串二进制信息是有很多含义的,可以是字符,可以是正数,也可以是带小数的浮点数,这都是根据数据类型而决定的。原创 2023-12-17 17:58:10 · 788 阅读 · 0 评论