2023年s7300SCL编程笔记完整版.docx

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

SCL编程

数据类型:

基本数据类型

复杂数据类型

用户自定义数据类型

BOOL

DATE_AND_TIME

UDT

BYTE

字节

日历:格式:

Date1:DT:=DT#1990-01-01-00:00:00

名称

类型

初始值

UDT的面向源文献的输入和STRUCT变量的输入同样,都限定在关键字TYPE和END_TYPE这间。

如:

TYPEudtname

STRUCT

Komp1name:datatype:=pre-assignment;

Komp1name:datatype:=pre-assignment;

……….

END_STRUCT

END_TYPE

WORD

DWORD

双字

CHAR

字符

STRING

字符串

格式:

M1:STRING[NO.]:=初始值;

INT

整数

DINT

双整数

REAL

浮点数

ARRAY

数组

格式:

M1:ARRAY[N..M]OFINT;

数组名:ARRAY[N..M]OFINT;

在数组里寻址:数组[NO.]

S5TIME

时间:时,分,秒。如S5T#1h1m1s

DATE

日期:年,月,日。如;

D#2023-4-26

TIME

表达:日期,时,分,秒,毫秒。

如:TIME#24h20h31m

23s648ms

STRUCT

结构

TIME_OF_DAY

如:TIME_OF_DAY#00:00:00

TOD#00:00:00

注:尚有两种类型:P:POINTER(指针数据类型)。A:ANY(任何类型)

数组的定义:M1:ARRAY[n0..m0,n1..m1]OFINT;

数组的类型

数组的类型

寻址

eq\o\ac(○,1)绝对寻址

地址区域

字节

双字

输入

Iy.x

IBy

IWy

IDy

输出

Qy.x

QBy

QWy

QDy

外围输入

---

PIBy

PIWy

PIDy

外围输出

---

PQBy

PQWy

PQDy

存储位

M

MBy

MWy

MDy

全局数据地址

DB.DXy.x

DB.Dy.x

DB.DBy

DB.DWy

DB.DDy

eq\o\ac(○,2)符号寻址

如:DB10.setpoint

“motor1data”.DW12

eq\o\ac(○,3)间接寻址

如:E[byteindex,bitindex]

MB[byteindex]

DB10.DW[byteindex]

三.SCL运算符和表达式

结合

名称

运算符

优先级

圆括号

(表达式)

(,)

1

算术

一元加,一元减

乘法,除法

加法,减法

**

+,-

*,/,DIV,MOD

+,-

2

3

4

5

比较

小于,小于等于,大于,大于等于

等于,不等于

,=,,=

=,

6

7

二进制结合

非(一元)

与逻辑运算

异或

或逻辑运算

NOT

AND,

XOR

OR

3

8

9

10

赋值

赋值

:=

11

注:以上运算符的表达式基本大多和我们的数学表达式同样。这里只讲解一下AND,XOR,OR指令。

如:a1:=a1ANDW#16#FFFF

a1:=a1XORW#16#FFFF

a1:=a1ORMW10

四.控制语句

控制语句:

语句说明:

IF

依赖布尔值的程序分支

CASE

依赖INT值的程序分支

FOR

具有运营变量的程序循环

WHILE

具有执行条件的程序循环

REPEAT

具有删除条件的程序循环

CONTINUE

当前循环通道的消除

EXIT

退出程序循环

GOTO

跳转到跳转标号

RETURN

退出块

注意:当使用程序循环时,请保证不超过循环监测时间。

IF语句:

IF条件0

THEN语句0;

ELSIF条件1

THEN语句1;

ELSIF条件2

THEN语句2;

ELSE语句3;

END_IF;

CASE语句:“选择”内的值等于Const内的值就执行那个语句。其它语句不执行,就执行END_CASE;

CASE选择OF

Const1:语句1;

Const2:语句2;

………

Constn:语句n;

END_CASE;

FOR语句

FOR变量:=n0TOnBYmDO

…..;

….;

END_FOR;

注意:这里的n为整型变量或整数值。m为每循环加几。

WHILE语句:只要条件满足,程序循环就反复。

WHILE条件DO

语句;

END_WHILE;

REPEAT语句:只要条件不满足,就反复程序循

文档评论(0)

浅唱愁淡 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档