恭喜,你发布的帖子
发布于 2024-03-28 10:34:21
13楼
你说的这个是因为我根本就没有给你写这个fifo功能,我写的是固定顺序的,或者是你的需要加水的条件是一个个进来的,完成一个加水再来一个信号,这样顺序是人为控制的。你完全可以做一个排序,用排序控制srun的状态就行了。如果需要,你直接定义一个db,用数组fifo就行了。
进栈:初始状态,db中数据都是0,按一个按钮把对应的数字写到db中第一个为0的位置,如果有优先级的话,也保存到db中,然后按优先级排序,没有这步直接省略。那么点了4个按钮后,数字按照先后的顺序保存到db中。
出栈:读取第一个位置的数字,用select case判断,等于几则打开对应的阀门,完成后,fifo队列的数据前移一个地址,最后一个地址补0.
重复前面的工作就行了。
你说的感觉很有道理,我也这么想得.所以你看我的程序可有修改的空间了??有没有更简单的方法啊? 如果没有启动阀门的顺序就直接互锁各个阀门的输出更简单.注水完成就复位对应按钮.程序扫描到那个就那个比你这还简单.
请填写推广理由:
分享
只看
楼主