📄 mc.bas
字号:
End If
8cake = &HFF
End If
Reset Watchdog
Call Ooflcd '预制关阀指示值
Ctl = Pind And &HFF '读入按键状态,被置"0"位即有按键
If Ctl.0 = 0 Then '水手动开泵信号有效
If Automan = 0 Then '确认不排母液
If Inlock1 = 0 Then '确认手动模式
Reset Portc.3 '投料驱动控制位置"0" ;开泵投料
H2o = "ON "
Else
H2o = "DIS"
End If
Else
Set Portc.0 '若非手动模式
H2o = "OFF" '连锁失电,常开断开,禁止H2O投料
End If
Else
Set Portc.3
End If
If Ctl.1 = 0 Then '酸手动开泵信号有效
If Automan = 0 Then '确认不排母液
If Inlock2 = 0 Then '确认允许酸投料
Reset Portc.4 '投料驱动控制位置"0" ;开泵投料
Hac = "ON "
Else
Set Portc.4
Hac = "DIS "
End If
Else
Set Portc.1 '若非手动模式
Hac = "OFF " '连锁失电,常开断开,禁止HCL投料
End If
Else
Set Portc.4
End If
If Ctl.2 = 0 Then '系统报警应答信号有效
Set Portc.6 '系统报警应答关系统报警声响器
Ackdelay = &HFF '置延时值
End If
If Ctl.3 = 0 Then '手/自动开关信号有效
If Amkey = 0 Then
Amkey = 2
If Automan = 0 Then
Automan = 1 '置手/自动标志
Am = "A "
Else
Automan = 0
Am = "M "
End If
Locate 4 , 5
Lcd Am
Waitms 600 '延时
Else
Decr Amkey
End If
End If
Reset Watchdog
If Ctl.4 = 0 Then '氧化剂手动开泵信号有效
If Automan = 0 Then '确认手动模式
If Inlock3 = 0 Then '确认允许YH310投料
Reset Portc.5 '投料驱动控制位置"0" ;开泵投料
Oxg = "ON "
Else
Set Portc.5
Oxg = "DIS "
End If
Else
Set Portc.2 '若非手动模式
Oxg = "OFF " '连锁失电,常开断开,禁止YH310投料
End If
Else
Set Portc.5
End If
Reset Watchdog
If Ctl.5 = 0 Then '水自动加料信号有效
If Automan = 1 Then
If Inlock1 = 0 Then
H2o = "ON "
Else
H2o = "DIS "
End If
Else
H2o = "ON "
End If
End If
If Ctl.6 = 0 Then '酸自动加料信号有效
If Automan = 1 Then
If Inlock2 = 0 Then
Hac = "ON "
Else
Hac = "DIS "
End If
Else
Hac = "ON "
End If
End If
If Ctl.7 = 0 Then '氧化剂自动加料信号有效
If Automan = 1 Then
If Inlock3 = 0 Then
Oxg = "ON "
Else
Oxg = "DIS "
End If
Else
Oxg = "ON "
End If
End If
Call Updatalcd
Reset Watchdog
Call Ackalarm
Loop
End
Sub Creatlcd
Cls
Locate 1 , 1
Lcd "CNV: HCl: Th:"
Locate 2 , 1
Lcd "ORP: 310: Tx:"
Locate 3 , 1
Lcd "SG : H2O: F1:"
Locate 4 , 1
Lcd "A/M: FLW: F2:"
Reset Watchdog
End Sub
Sub Oklcd
Cnv = "OK"
Th = "OK"
Orp = "OK"
Tx = "OK"
Sg = "OK"
F1 = "OK"
F2 = "OK"
End Sub
Sub Ooflcd
Hac = "OFF "
Oxg = "OFF "
H2o = "OFF "
End Sub
Sub Updatalcd
Locate 1 , 5
Lcd Cnv
Locate 1 , 12
Lcd Hac
Locate 1 , 19
Lcd Th
Locate 2 , 5
Lcd Orp
Locate 2 , 12
Lcd Oxg
Locate 2 , 19
Lcd Tx
Locate 3 , 5
Lcd Sg
Locate 3 , 12
Lcd H2o
Locate 3 , 19
Lcd F1
Locate 4 , 5
Lcd Am
Locate 4 , 12
Lcd Flw
Locate 4 , 19
Lcd F2
Cursor Off 'hide cursor
Reset Watchdog
End Sub
'报警确认键处理子程序
Sub Ackalarm
If Alarm = 0 Then '如Alarm为"0"
Set Portc.6 '置报警停
Else '如Alarm <> 0,置报警处理
If Lalarm = Alarm Then '如无新报警源
If Ackdelay = 0 Then '延时完
Reset Portc.6 '时间到有报警,继续报警
Else
Reset Watchdog
Waitms 300 '延时
Reset Watchdog
Decr Ackdelay '计数
End If
Else
Reset Portc.6 '如有新报警源,置报警
End If
End If
Lalarm = Alarm '记载新鲜报警状态
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -