按道理, 這里有個(gè)數(shù)據(jù)結(jié)構(gòu) , 叫做隊(duì)列, 也就是先進(jìn)先出 。 可以自己實(shí)現(xiàn)隊(duì)列算法,如果有現(xiàn)成的也可以。
簡單的可以如下,不算隊(duì)列算法,具體的啟停邏輯,我下面是不對的啊.
把 A/B/C/D 用數(shù)字1/2/3/4 分別放到存儲器 D1,D2,D3,D4 中,標(biāo)識這四個(gè)風(fēng)機(jī)。 多的話用數(shù)組和循環(huán),比如100個(gè)風(fēng)機(jī)。 Y1 Y2 Y3 Y4 表示輸出。
第一步要設(shè)置 D0 D1 D2 D3的值。 比如2341; / 1234 / 3412/ step的轉(zhuǎn)換條件 就是 時(shí)間到 step:=step+1;
case step of
1 :
IF D1=1 THEN
Y1:=TRUE; // Y1通10S 停2s
ELSE IF D1=2 THEN
Y2:=TRUE; // Y2通10S 停2s
ELSE IF D1=3 THEN
Y3:=TRUE; // Y3通10S 停2s
ELSE IF D1=4 THEN
Y4:=TRUE; // Y4通10S 停2s
END IF;
2 :
IF D2=1 THEN
Y1:=TRUE;
ELSE IF D2=2 THEN
Y2:=TRUE;
ELSE IF D2=3 THEN
Y3:=TRUE;
ELSE IF D2=4 THEN
Y4:=TRUE;
END IF;
3:
4:
end case;
[ 此帖被flyfeky在2024-03-25 22:00重新編輯 ]