西门子PLC一个按钮控制灯亮灭程序
没有用计数器什么的,用一个bool变量当做存储位
转换成我理解的高级语言是这样的:
var 开关 = false;
var 灯 = false;
var 状态 = false; // 存储位
var 沿 = 0; // 上升沿指令
// 采用定时200ms扫描一次,while(1)循环不适用
window.setInterval(function () {
// while (1) {
// 上升沿触发
if (沿 == false && 沿 != 开关) {
if (!状态 && !灯) 状态 = true;
if (状态 && 灯) 状态 = false;
if (状态) {
灯 = true;
console.log("灯置位");
}
if (!状态) {
灯 = false;
console.log("灯复位");
}
}
沿 = 开关;
// }
}, 200);