【正文】
ca_time:=0000。 button_var(1):=39。039。 ELSE next_state=S1D。 ca_time:=0000。 END IF。 WHEN others = NULL。 END CASE。 ELSE IF button_var(2)=39。139。 THEN CASE ca_time IS WHEN 0011 = dor=39。139。 WHEN 1101 = dor=39。039。 button_var(2):=39。039。 IF (floor_var(0) or button_var(0))=39。139。 THEN next_state=s0。 ca_time:=0000。 ELSIF ( button_var(1) or floor_var(2) or button_var(3))=39。139。 THEN next_state=S2。 ca_time:=0000。 up=39。139。 ELSE next_state=S1D。 ca_time:=0000。 END IF。 WHEN others = NULL。 END CASE。 ELSE IF (button_var(0) or floor_var(0))=39。139。 THEN next_state=s0。 ca_time:=0000。 ELSIF button_var(1)=39。139。 THEN CASE ca_time IS WHEN 0011 = dor=39。139。 WHEN 1101 = dor=39。039。 button_var(1):=39。039。 IF(floor_var(2) or button_var(3))=39。139。 THEN next_state=S2。 ca_time:=0000。 up=39。139。 ELSE next_state=S1D。 ca_time:=0000。 END IF。 WHEN others = NULL。 END CASE。 ELSIF (button_var(3) or floor_var(2))=39。139。 THEN next_state=S2。 ca_time:=0000。 up=39。139。 ELSE next_state=S1D。 ca_time:=0000。 END IF。 END IF。 END IF。 WHEN S2 = 電梯三樓狀態(tài)處理; position = 0011。 cat:=39。039。 IF (button_var(3) or floor_var(2))=39。139。 THEN CASE ca_time IS WHEN 0011 = dor=39。139。 WHEN 1101 = dor=39。039。 button_var(3):=39。039。 floor_var(2):=39。039。 IF (floor_var(0) or floor_var(1))=39。139。 THEN next_state=S1D。 ca_time:=0000。 up=39。039。 ELSE next_state=S2。 ca_time:=0000。 END IF。 WHEN others = NULL。 END CASE。 ELSIF (button_var(0) OR button_var(1) OR button_var(2) or floor_var(0) or floor_var(1))=39。139。 THEN next_state =S1D。 ca_time:=0000。 up = 39。039。 ELSE next_state =S2。 ca_time:=0000。 END IF。 END CASE。 END IF。 END PROCESS。P3:PROCESS(up,dor,warm) 電梯上下,開關(guān)門顯示; variable s:std_logic。 BEGIN up_down=up。 door=dor。 q=warm。 END PROCESS。END happen。20