【正文】
p:=not tmp。 end if。 clkout1=tmp。 end one。本控制器的設(shè)計(jì)方法是利用時(shí)鐘沿的上升沿讀取前級(jí)計(jì)數(shù)器的計(jì)數(shù)值,然后做出反應(yīng)。 7 VHDL源程序: LIBRARY IEEE。 USE 。 ENTITY jiaotongd1 IS PORT (CLK,R,SPC: IN STD_LOGIC。 light:G1,R1,Y1,G2,R2,Y2。 END jiaotongd1 。 定義枚舉 SIGNAL STATE : STATES 。 BEGIN P1: PROCESS (CLK,STATE) BEGIN IF R=39。THEN STATE=S0。T2=65。139。 特殊情況亮紅燈 ELSIF CLK39。139。 T1=T11。 Q1=T1。 IF T1=0 THEN STATE=S1。T2=4。 states 為 s1時(shí),南北方向亮黃燈,東西方向亮紅, 5s WHEN S1= LIGHT=001010。T2=T21。Q2=T2。T1=35。 END IF。 T1=T11。 Q1=T1。 IF T2=0 THEN STATE=S3。T2=6。 南北方向同時(shí)滅燈 6s WHEN S3= LIGHT=000000。T2=T21。Q2=T2。T1=60。 END IF。T1=60。主干道 END CASE。 END PROCESS。 時(shí)序仿真圖: 模塊三: 顯示控制電路 譯碼首先是將二進(jìn)制無符號(hào)數(shù)轉(zhuǎn)化為 BCD碼,在把 BCD 碼經(jīng)過譯碼電路轉(zhuǎn)換數(shù)碼管顯示: VHDL源程序: 二進(jìn)制轉(zhuǎn)化 BCD: 10 LIBRARY IEEE。 USE 。 ENTITY yima2 IS PORT (datain: IN STD_LOGIC_VECTOR(6 DOWNTO 0)。 daout: OUT STD_LOGIC_VECTOR(7 DOWNTO 0))。 ARCHITECTURE behav OF yima2 IS begin PROCESS(datain) BEGIN case datain is when 0000000=daout=00000000。 when 0000010=daout=00000010。 when 0000100=daout=00000100。 when 0000110=daout=00000110。 when 0001000=daout=00001000。9 when 0001010=daout=00010000。 when 0001100=daout=00010010。 11 when 0001110=daout=00010100。 when 0010000=daout=00010110。 when 0010010=daout=00011000。19 when 0010100=daout=00100000。 when 0