【正文】
2。 WHEN 1=NUM_IN=0000。CAT=111110。 WHEN 2=NUM_IN=0000。CAT=011111。 WHEN 3=NUM_IN=0100。CAT=101111。 END CASE。 WHEN 44=CASE TEMP IS WHEN 0=NUM_IN=0000。CAT=111101。 WHEN 1=NUM_IN=0011。CAT=111110。 WHEN 2=NUM_IN=0001。CAT=011111。 WHEN 3=NUM_IN=0010。CAT=101111。 END CASE。 WHEN 36=CASE TEMP IS WHEN 0=NUM_IN=0000。CAT=111101。 WHEN 1=NUM_IN=0001。CAT=111110。 WHEN 2=NUM_IN=0001。CAT=011111。 WHEN 3=NUM_IN=0000。CAT=101110。 END CASE。 WHEN 28=CASE TEMP IS WHEN 0=NUM_IN=0001。CAT=111101。 WHEN 1=NUM_IN=1001。CAT=101111。 WHEN 2=NUM_IN=0000。CAT=111101。 WHEN 3=NUM_IN=0011。CAT=111110。 END CASE。 WHEN 20=CASE TEMP IS WHEN 0=NUM_IN=0000。CAT=011111。 WHEN 1=NUM_IN=0010。CAT=101111。 WHEN 2=NUM_IN=0000。CAT=111101。 WHEN 3=NUM_IN=0001。CAT=111110。 END CASE。 WHEN 12=CASE TEMP IS WHEN 0=NUM_IN=0000。CAT=011111。 WHEN 1=NUM_IN=0000。CAT=101111。 WHEN 2=NUM_IN=0001。CAT=111101。 WHEN 3=NUM_IN=1001。CAT=111110。 END CASE。 WHEN 4=CASE TEMP IS WHEN 0=NUM_IN=0001。CAT=011111。 WHEN 1=NUM_IN=1000。CAT=101111。 ELSE TEMP=TEMP+1。SIGNAL COUNTER:INTEGER RANGE 1 TO 50。USE 。東西黃燈 WHEN S4 =LIGHT1=1001。P2:PROCESS(STATE)狀態(tài)機(jī)BEGIN CASE STATE IS WHEN S0 =LIGHT1=0010。 THENEMERGENCY為高電平時(shí)為緊急狀態(tài) STATE=S4。計(jì)數(shù)器輸入,控制其它正常狀態(tài) LIGHT1,LIGHT2:OUT STD_LOGIC_VECTOR(3 DOWNTO 0)交通燈信號輸出 )。內(nèi)部信號轉(zhuǎn)化為輸出COUNTERS=CONV_STD_LOGIC_VECTOR(TEMPCOUNT,6)。139。039。END COUNTER。USE 。 ELSE CLK_OUT=39。設(shè)置分頻999999,則為1HzBEGIN PROCESS(CLK) BEGIN IF(CLK39。END TRAFFICSHOW。COMPONENT SHOW IS PORT( NUM_IN:IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 LIGHT1,LIGHT2:OUT STD_LOGIC_VECTOR(3 DOWNTO 0) )。 RESET:IN STD_LOGIC。END TRAFFIC。USE 。,根據(jù)硬件設(shè)計(jì),設(shè)置如下端口:u 外部時(shí)鐘信號:CLKu 緊急狀態(tài)按鍵:EMERGENCYu 南北方向狀態(tài)燈:LIGHT1u 東西方向狀態(tài)燈:LIGHT2u 蜂鳴器控制:BELLu 數(shù)碼管顯示信號:NUMu 數(shù)碼管共陰極控制:CAT_TEMP,把不同功能分模塊設(shè)計(jì)。二.系統(tǒng)設(shè)計(jì)(包括設(shè)計(jì)思路、總體框圖、分塊設(shè)計(jì))(一)設(shè)計(jì)思路:1) CLK時(shí)鐘頻率輸入,可由實(shí)驗(yàn)板上直接提供,為準(zhǔn)確確定時(shí)間長度,選擇High擋的1MHz高頻信號。 in industrial society, man is an animal。is one of the practical form of values. The socalled values refers to the objective things are of no value and the value of fundamental perspective. Different values, people39。 the information society, return數(shù)字系統(tǒng)與邏輯設(shè)計(jì)實(shí)驗(yàn)課題三:交通燈控制器課題三:交通燈控制器課題三:交通燈控制器一.設(shè)計(jì)課題的任務(wù)要求(一)、實(shí)驗(yàn)?zāi)康?. 熟練掌握 VHDL 語言和QuartusII 軟件的使用;2. 理解狀態(tài)機(jī)的工作原理和設(shè)計(jì)方法;3. 掌握利用 EDA 工具進(jìn)行自頂向下的電子系統(tǒng)設(shè)計(jì)方法;(二)、相關(guān)知識本實(shí)驗(yàn)要利用 CPLD 設(shè)計(jì)實(shí)現(xiàn)一個(gè)十字路口的交通燈控制系統(tǒng),與其他控制系統(tǒng)一樣,本系統(tǒng)劃分為控制器和受控電路兩部分。2) 緊急狀態(tài)按鍵撥碼開關(guān)EMERGENCY,當(dāng)將其置為高電平,表示緊急情況發(fā)生,兩個(gè)方向均為紅燈亮,計(jì)時(shí)停止,蜂鳴器蜂鳴;當(dāng)置其為低電平,信號燈和計(jì)時(shí)器恢復(fù)原來狀態(tài),正常工作。u FREQUENCY模塊,由于外部時(shí)鐘信號CLK的頻率為50MHz,而實(shí)際需要的內(nèi)部計(jì)時(shí)時(shí)鐘頻率為1Hz,需要一個(gè)分頻電路。ENTITY TRAFFIC IS PORT( CLK,RESET,EMERGENCY:IN STD_LOGIC。ARCHITECTURE TRAFFICSHOW OF TRAFFIC ISSIGNAL TEMPCLK:STD_LOGIC。 EMERGENCY:IN STD_LOGIC。END COMPONENT。 NUM:OUT STD_LOGIC_VECTOR(6 DOWNTO 0) )。l ,1HzLIBRARY IEEE。EVENT AND CLK=39。139。USE 。ARCHITECTURE CON OF COUNTER ISSIGNAL TEMPCOUNT:INTEGER RANGE 1 TO 50:=1。 IF RESET=39。 THEN當(dāng)緊急信號為高電平,進(jìn)入緊急狀態(tài) TEMPCOUNT=TEMPCOUNT。內(nèi)部信號轉(zhuǎn)化為輸出END CON。END LIGHT。 ELSE CASE TEMPCOUNT IS由計(jì)數(shù)器控制狀態(tài)持續(xù)時(shí)間 WHEN 1 TO 20 = STATE=S0。南北綠燈 LIGHT2=1001。南北紅燈,且禁止左轉(zhuǎn) LIGHT2=1001。ENTITY COUNTDOWN IS PORT( COUNT:IN STD_LOGIC_VECTOR(5 DOWNTO 0)。SIGNAL CAT:STD_LOGIC_VECTOR(5 DOWNTO 0):=011111。 END IF。 WHEN 2=NUM_IN=0010。CAT=101111。 WHEN 1=NUM_IN=0111。CAT=011111。 WHEN 5=CASE TEMP IS WHEN 0=NUM_IN=0001。 END CASE。CAT=111110。 WHEN 3=NUM_IN=1000。CAT=111101。 WHEN 2=NUM_IN=0001。CAT=101111。 WHEN 1=NUM_IN=1001。CAT=011111。 WHEN 13=CASE TEMP IS WHEN 0=NUM_IN=0000。 END CASE。CAT=111110。 WHEN 3=NUM_IN=0000。CAT=111101。 WHEN 2=NUM_IN=0000。CAT=101111。 WHEN 1=NUM_IN=0001。CAT=011111。 WHEN 21=CASE TEMP IS WHEN 0=NUM_IN=0000。 END CASE。CAT=111110。 WHEN 3=NUM_IN=0010。CAT=111101。 WHEN 2=NUM_IN=0000。CAT=111110。 WHEN 1=NUM_IN=1000。CAT=111101。 WHEN 29=CASE TEMP IS WHEN 0=NUM_IN=0001。 END CASE。CAT=101111。 WHEN 3=NUM_IN=1001。CAT=011111。 WHEN 2=NUM_IN=0001。CAT=111110。 WHEN 1=NUM_IN=0000。CAT=111101。 WHEN 37=CASE TEMP IS WHEN 0=NUM_IN=0000。 END CASE。CAT=101111。 WHEN 3=NUM_IN=0001。CAT=011111。 WHEN 2=NUM_IN=0000。CAT=111110。 WHEN 1=NUM_IN=0010。CAT=111101。 WHEN 45=CASE TEMP IS WHEN 0=NUM_IN=0000。 END CASE。CAT=101111。 WHEN 3=NUM_IN=0011。CAT=011111。 WHEN 2=NUM_IN=0000。CAT=111110。NUMIN=NUM_IN。END SHOW。5 WHEN 0110=NUM_OUT=1011111。END。s scientific Outlook on development, is the new Central collecti