CFC编程入门_【10分钟学会】

什么是CFC: 【差不多10分钟全学会】

CFC是图形化编程,
跟单片机的连线一样,
唯一的区别:功能块右侧是【只能输出】引脚。
只有左侧引脚可以输入输出。

类型:
1bit    bool
8        byte
16        word
32        dword
64        Lword

可负数:
8bit    sint
16        int
32        dint    // 正数 Udint
64        Lint

浮点数:
32bit    real
64        Lreal

字符:
8bit x N    string
16bit x N    Wstring

时间:
Time    T#12345m67s89ms
date    D#1970-1-1    【D#2106-02-06】

date_and_time    DT#1970-1-1-12:34:56


有哪些控件:

 1指针:用于拖动功能块。

2控制点:同上。

3输入:填变量,或对象的输出。 

4输出:用导线,连接到下级对象输入。

5运算块:就是FB功能块。【左侧:输入输出】,【右侧:只输出】

6Box :在FB原有的基础上,增加运行条件。【用bool控制EN运行】

7跳转:跟goto一样。

8标签:这个跟【跳转】配合使用,能实现循环。

9返回:同于提前结束本轮循环。

10合成器:用于对结构体的成员变量赋值。【结构体的赋值】

11选择器:用于输出结构体的成员变量。【输出结构体的变量】

 参考:

12注释:对功能块的说明。

13连接标记:用于出现交叉线的情况。

显示块运行顺序:右键【属性】

 

常用元件:升降沿,定时器。。。

语法: 

F_TRIG    下降沿  多选MUX  等于EQ  不等NE  大于GT  大于等于GE  小于LT  小于等于LE
R_TRIG    上升沿  左移SHL  右移SHR  循环左移ROL  循环右移ROR
ADD    加    SUB    减    MUL    乘    DIV    除
AND    与    OR    或    XOR    异或

SR        置位
RS        复位
BOOL_TO_???    【转换】
MOVE      赋值
MUX        多路转换
SEL        二进制转换
LIMIT    【限制值范围】

TOF    延时断开
TON    延时接通
TP     脉冲计时器

CTD    减计数【自减】
CTU    增计数【自增】
CTUD    增减器

继承  extends
赋值  :=
输出  =>
引用  REFERENCE TO
指针  POINTER TO

变量声明:
<标识符>{AT<Address>}:<数据类型>{:=<初始化>}: 
其中{}中的部分是可选择的。
bTest AT %IX10.3: INT; 

数组:
<数组名>:ARRAY [<ll1>..<ul1>,<ll2>..<ul2>,<ll3>..<ul3>] OF <基本数据类型> 
                纵            横           高

 

指针   
 <标识符>: POINTER TO <数据类型 | 功能块 | 程序 | 方法 | 函数>; 

VAR 
 PointVar:POINTER TO INT; 
 var1:INT := 5; 
 var2:INT; 
END_VAR 

PointVar := ADR(var1);       //取对象地址
var2:= PointVar^;            //取地址对象
指针复习:

指针变量:最大值是CPU能表示的bit数【钞票的张数】
写法  *p

指针类型:光有钞票的张数还无法表示,所以需要类型,是5张十元的,还是5张百元的。
写法  type  *p;

二级指针:类似2个储物柜AB,在A柜子里放B柜子的钥匙,这样可以实现有序的地址管理无序的对象。
写法  type后   *后     type先   *先

地址运算方向是:从右到左。

地址值:是将整个内存切割成Type类型后,第n个Type的位置。
%Mb20  跟  %Mw10  是同一个位置【起始位置相同,截取长度不同】

 结尾:

功能块有些输入有默认值,可以不用赋值。

维修电工选择 CFC编程,不要用st,高级语法学C#,【因为C# 》ST】而且st语法有些反人类,比如 【你说的语法请说明语法】      num : int := 16#1234;

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值