st语言和c语言一样,什么是ST语言,一文带你了解ST语言

ST语言是在规定逻辑记述方式的国际标准IEC61131-3中定义的语言。ST语言是具有与C语言等相似的语法结构的文本形式的程序语言。适用于对梯形图语言难以表现的复杂处理进行编程的情况。

ST语言支持控制语法、运算式、功能块(FB)、函数(FUN),可以进行如下的记述。

例:通过条件语句进行选择分支,通过重复语句进行重复等的控制语法

193821814_1_20200625042832677

例:使用运算符(*、/、+、-、、=等)的表达式

193821814_2_20200625042832880

例:定义的FB的调用

193821814_3_2020062504283337

例:通用函数的调用

193821814_4_20200625042833240

例:汉字等全角字符的使用

193821814_5_20200625042833396

01

配置

ST语言中的编程由运算符与语句组成。

193821814_6_20200625042833599

语句的终端必须添加“;”(分号)。

193821814_7_20200625042833724

空格、制表、换行可以插入到运算符及数据中。

193821814_8_20200625042833834

可以在程序中插入注释。

193821814_9_20200625042833943

02

程序的结构要素

ST程序由以下要素构成。

193821814_10_202006250428345

1.段落符号

在ST语言中,为了明确程序的结构,设有下述的段落符号。

193821814_11_20200625042834177

2.运算符

在ST程序中使用的运算符、对象数据类型与运算结果的数据类型如下所示。

193821814_12_20200625042834412

运算符的优先顺序如下所示。

193821814_13_20200625042834615

注:1.在一个公式中有多个优先顺序相同的运算符的情况下,从左侧开始运算。

2. 一个公式中可以记述的运算符的使用个数最多为1024个。

3.语句

可以在ST程序中使用的语句如下所示。

193821814_14_20200625042834709

应用半角字符记述语句。

4.常数

常数的标记方法

ST程序中字符串的标记方法如下所示。

193821814_15_20200625042834849

5.标签与软元件

指定方法

在ST程序中可以直接记述并使用标签与软元件。标签与软元件可以在表达式的左边、右边、通用函数/FB的自变量、返回值等中使用。

■ 附带类型指定的软元件标记

字软元件通过向软元件名附加软元件型指定符,可以作为任意的数据类型在ST语言内使用。

193821814_16_20200625042834880

可以使用软元件类型指定符的软元件如下所示。

数据寄存器(D)

链接寄存器(W)

模块访问软元件(U\G)

文件寄存器(R)

■ 软元件的指定方法

关于软元件的指定可以使用下述方法。

变址修饰

位指定

位数指定

间接指定

注意事项

在ST程序中无法使用指针型。

使用位数指定代入的情况下,应使右边和左边的数据类型相一致。

例:D0 := K5X0;

在上述情况下,因为K5X0为双字型、D0为字型,程序出错。

使用位数指定代入的情况下,右边>左边时,在左边的对象点数范围内进行数据传送。

例:K5X0 := 2#1011_1101_1111_0111_0011_0001;

在上述情况下,因为K5X0的对象点数20点,向K5X0代入1101_1111_0111_0011_0001(20位)。

将计数器(C)、定时器(T)、累计定时器(ST)的当前值(TNn等)在字[无符号]/位列[16位]以外的类型中使用时,或将长计数器(LC)的当前值(LCNn等)在双字[无符号]/位列[32位]以外的类型中使用时,应使用类型转换函数。

例:varInt := WORD_TO_INT(TN0); (*使用类型转换函数*)

6.注释

可以在ST程序中使用的注释如下所示。

193821814_17_20200625042834959

在多行注释中请勿记述含有结束符号的注释。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值