信捷 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

相关推荐
刻BITTER20 小时前
Alpine.js + Chart.js 踩坑记:一次 Maximum Call Stack Exceeded 排查之旅
开发语言·javascript·ecmascript
郝学胜-神的一滴20 小时前
干货版《算法导论》05:从集合接口到排序
开发语言·数据结构·c++·程序人生·算法·排序
之歆20 小时前
Day15_JavaScript DOM 事件完全指南:从基础到实战(下)
开发语言·javascript·ecmascript
顾凌陵20 小时前
Python 数据可视化实战
开发语言·python·信息可视化
星恒随风20 小时前
从0开始的操作系统(3)
开发语言·笔记·学习
开发者联盟league20 小时前
pip install出现报错ERROR: Cannot set --home and --prefix together
开发语言·python·pip
FlagOS智算系统软件栈20 小时前
众智FlagOS完成腾讯混元MT2多语翻译模型全系列多芯片适配:英伟达/华为/平头哥三芯开箱即用
开发语言·人工智能·开源
東隅已逝,桑榆非晚20 小时前
C语言内存函数
c语言·开发语言·笔记·算法
lly20240620 小时前
Docker 安装 MySQL
开发语言
techdashen20 小时前
在 Async Rust 中实现请求合并(Request Coalescing)
开发语言·后端·rust