你这里描述的不清楚,是电压高于(或低于)15V的情况下每3秒钟判断一次吗?报警的标准是(V(i)-V(i-1)) > 0.1V?这种情况你需要用生产者消费者模型。建一个队列,在采集循环里面给报警数据入队,采集循环结束后释放队列引用。在报警循环里面出队,出队超时设-1,不用加延时函数,循环结束条件接出队错误簇。(这是十级这哥们的理解。)
或者,你是想判断一次就完事了?这种情况就简单了。你可以直接结束采集循环(如果数据没用了),或者用条件结构禁用报警判断。电压升到(或降到)15V只是一个触发条件?(这是六级这哥们的理解。)
好多人提问时说的模棱两可,让回答的人大部分时间和精力浪费在了猜实际情况和需求上。
最简单的,是放一个标志位。
首先没有报警前,标志位是1,可以执行报警。
然后过了3秒报警后,标志位为0,不执行报警程序。
-----------------------
happyarrow@qq.com
典型的生产者与消费者问题,你可以搜下“生产者与消费者”网上有很多例子。
总体思路是用两个While循环和一个队列。