信捷 PLC C语言 POU 指示灯交替灭0.5秒亮0.5秒(保持型定时器)

1.在全局变量表中定义2个定时器变量timer_1,timer_2

名称 类型

timer_1 TMR_A_FB False -- False False

timer_2 TMR_A_FB False -- False False

ot2 BOOL False -- False False

ot2表示指示灯

2.新建pou FC(C语言):POU_two_hold_time

3.编写代码

void POU_two_hold_timer()

{

#define SysRegAddr_HD_D_HM_M

if(!ot2)

{

TMR_FB_BODY ( &timer_1 ); //取(定时器)功能快变量的地址给功能块做参数

timer_1.Enable =true;//全局变量给定时器的线圈通电

timer_1.TimeBase = 100;//设定定时器单位

timer_1.Circle = 5; //设定值定时长度

}

else

{

TMR_FB_BODY ( &timer_2 ); //取(定时器)功能快变量的地址给功能块做参数

timer_2.Enable = true;//全局变量给定时器的线圈通电

timer_2.TimeBase = 100;//设定定时器单位

timer_2.Circle = 5; //设定值定时长度

}

if(!ot2 && timer_1.QStatus)

{

TMR_A_RST_FC ( &timer_1 ); //定时器复位,取(定时器)功能快变量的地址给功能做参数

ot2 = true;

}

if(ot2 && timer_2.QStatus)

{

TMR_A_RST_FC ( &timer_2 ); 定时器复位,取(定时器)功能快变量的地址给功能做参数

ot2 = false;

}

}

4.调用pou

相关推荐
luj_17683 分钟前
大航海时代:沉浸式财商实战沙盒
c语言·开发语言·网络·经验分享·算法
Navigator_Z24 分钟前
LeetCode //C - 1200. Minimum Absolute Difference
c语言·算法·leetcode
赵广陆34 分钟前
企业实战:Markdown图片检索
android·java·开发语言
C++、Java和Python的菜鸟35 分钟前
第3章 从0开始用若依
java·开发语言
LuminousCPP40 分钟前
数据结构基础篇(二):顺序表与链表全方位对比|从内存布局到 CPU 缓存理解底层差异
c语言·数据结构·经验分享·链表·缓存
夜雪一千1 小时前
Python 如何实现 SHA 加密?SHA1 / SHA256 / SHA512 实战教程
开发语言·python
有点。1 小时前
C++二叉树(一)
开发语言·数据结构·c++
民乐团扒谱机2 小时前
【微实验】谐波乘积谱(HPS)算法深度解析:原理、数学与代码实现
开发语言·人工智能·python·算法·语音识别·音乐
报错小能手2 小时前
Go 语言结构 基础语法
开发语言·后端·golang
Lazionr2 小时前
stack与queue:底层实现与容器适配器
开发语言·数据结构·c++