发布于 2006-04-10 11:25:17
0楼
考虑一般这种报警都对实时性要求不高,差那么3、5秒没什么影响。
还可以用1个定时器,设定1S、100mS随意。
还是用上面的方法,定时器每到时,检测各阀的输出状态、反馈状态,如果有输出的上升沿则令BYTE清零然后加1,重启定时器。以后定时器每到时,则BYTE加1,如果定时1S的话,到BYTE为3的时候,如果反馈没有,就可以报警了。
这种方法的时间误差由定时器本身时间决定,最大误差为定时周期。但是肯定是要浪费BYTE了。
如果不怕误差到3S,不妨设定周期为3S,那么,这BYTE就可以省了,用BIT就解决。只是这报警输出可能会在输出6S没反馈后才有。