【文章內(nèi)容簡介】
=d66amp。d55amp。d44amp。d33amp。d22amp。d11。 電梯內(nèi)人請求信號并置 cc_u=39。039。amp。c_u55amp。c_u44amp。c_u33amp。c_u22amp。c_u11。 電梯外人上升請求信號并置 cc_d=c_d66amp。c_d55amp。c_d44amp。c_d33amp。c_d22amp。39。039。 電梯外人下降請求信號并置 dd_cc=dd or cc_u or cc_d。 電梯內(nèi)、外人請求信號進(jìn)行綜合 end if。 ud=updown。 電梯運(yùn)動狀態(tài)顯示 led_d=dd。 電梯內(nèi)人請求信號顯示 led_c_u=cc_u。 電梯外人上升請求信號顯示 led_c_d=cc_d。 電梯外人下降請求信號顯示end if。 三、 Verilog 源代碼library ieee。use 。use 。use 。entity dianti is port ( clk : in std_logic。 時鐘信號(頻率為2Hz) full,deng,quick,clr : in std_logic。 超載、關(guān)門中斷、提前關(guān)門清除報(bào)警信號 c_u1,c_u2,c_u3,c_u4,c_u5: in std_logic。 電梯外人的上升請求信號 c_d2,c_d3,c_d4,c_d5,c_d6: in std_logic。 電梯外人的下降請求信號 d1,d2,d3,d4,d5,d6 : in std_logic。 電梯內(nèi)人的請求信號 g1,g2,g3,g4,g5,g6 : in std_logic。 到達(dá)樓層信號 door : out std_logic_vector(1 downto 0)。 電梯門控制信號 led : out std_logic_vector(6 downto 0)。 電梯所在樓層顯示 led_c_u:out std_logic_vector(5 downto 0)。 電梯外人上升請求信號顯示 led_c_d:out std_logic_vector(5 downto 0)。 電梯外人下降請求信號顯示 led_d : out std_logic_vector(5 downto 0)。 電梯內(nèi)請求信號顯示 wahaha : out std_logic。 看門狗報(bào)警信號 ud,alarm : out std_logic。 電梯運(yùn)動方向顯示,超載警告信號up,down : out std_logic )。 電機(jī)控制信號和電梯運(yùn)動end dianti。architecture behav of dianti issignal d11,d22,d33,d44,d55,d66:std_logic。 電梯內(nèi)人請求信號寄存信號signal c_u11,c_u22,c_u33,c_u44,c_u55:std_logic。 電梯外人上升請求信號寄存信號signal c_d22,c_d33,c_d44,c_d55,c_d66:std_logic。 電梯外人下降請求信號寄存信號signal q:integer range 0 to 1。 分頻信號signal q1:integer range 0 to 6。 關(guān)門延時計(jì)數(shù)器 signal q2:integer range 0 to 9。 看門狗計(jì)數(shù)器signal dd,cc_u,cc_d,dd_cc:std_logic_vector(5 downto 0)。 電梯內(nèi)外請求信號寄存器signal opendoor:std_logic。 開門使能信號signal updown:std_logic。 電梯運(yùn)動方向信號寄存器signal en_up,en_dw:std_logic。 預(yù)備上升、預(yù)備下降預(yù)操作使能信號beginprocess(clk)beginif clk39。event and clk=39。139。 then if clr=39。139。 then q1=0。q2=0。wahaha=39。039。 清除故障報(bào)警 elsif full=39。139。 then alarm=39。139。 q1=0。 超載報(bào)警if q1=3 then door=10。 else door=00。 end if。 elsif q=1 then q=0。alarm=39。039。 if q2=3 then wahaha=39。139。 故障報(bào)警 else if opendoor=39。139。 then door=10。q1=0。q2=0。up=39。039。down=39。039。 開門操作 elsif en_up=39。139。 then 上升預(yù)操作 if deng=39。139。 then door=10。q1=0。q2=q2+1。 關(guān)門中斷 elsif quick=39。139。 then q1=3。 提前關(guān)門 elsif q1=6 then door=00。updown=39。139。up=39。139。 關(guān)門完畢,電梯進(jìn)入上升狀態(tài) elsif q1=3 then door=01。q1=q1+1。 電梯進(jìn)入關(guān)門狀態(tài) else q1=q1+1。door=00。 電梯進(jìn)入等待狀態(tài) end if。 elsif en_dw=39。139。 then 下降預(yù)操作 if deng=39。139。 then door=10。q1=0。q2=q2+1。 elsif quick=39。139。 then q1=3。 elsif q1=6 then door=00。updown=39。039。down=39。139。 elsif q1=3 then door=01。q1=q1+1。 else q1=q1+1。door=00。 end if。 end if。 if g1=39。139。 then led=1001111。