版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、洛 陽(yáng) 理 工 學(xué) 院課 程 設(shè) 計(jì) 報(bào) 告 課程名稱 PLD原理與應(yīng)用 設(shè)計(jì)題目 交通燈控制器設(shè)計(jì) 專 業(yè) 通信工程 班 級(jí) 學(xué) 號(hào) 姓 名 完成日期 2012.12.23 課 程 設(shè) 計(jì) 任 務(wù) 書(shū)設(shè)計(jì)題目: 交通燈控制器設(shè)計(jì) 設(shè)計(jì)內(nèi)容與要求: 通過(guò)采用VHDL 語(yǔ)言對(duì)交通燈控制器的設(shè)計(jì),使交通燈控制電路用數(shù)字信號(hào)自動(dòng)控制十字路口兩組紅、黃、綠交通燈的狀態(tài)轉(zhuǎn)換的方法,指揮各種車輛和行人安全通行,實(shí)現(xiàn)十字路口交通管理的自動(dòng)化。綠燈亮?xí)r,準(zhǔn)許車輛通行,但轉(zhuǎn)彎的車輛不得妨礙被放行的直行車輛、行人通行,黃燈亮?xí)r,已越過(guò)停止線的車輛可以繼續(xù)通行,紅燈亮?xí)r,禁止車輛通行。 指導(dǎo)教師: 呂治國(guó) 2012
2、 年 12 月 23 日課 程 設(shè) 計(jì) 評(píng) 語(yǔ) 成績(jī): 指導(dǎo)教師:_ 年 月 日11 / 14文檔可自由編輯打印1、 設(shè)計(jì)背景 隨著我國(guó)城市化建設(shè)的發(fā)展,越來(lái)越多的新興城市的出現(xiàn),使得城市的交通成為了一個(gè)主要的問(wèn)題。同時(shí)隨著我國(guó)經(jīng)濟(jì)的穩(wěn)步發(fā)展,人民的生活水平日漸提高,越來(lái)越多的汽車進(jìn)入尋常老百姓的家庭,再加上政府大力發(fā)展的公交、出租車,車輛越來(lái)越多了。這不僅要求道路要越來(lái)越寬闊,而且要求有新的交通管理模式的出臺(tái)。舊有的交通控制系統(tǒng)的弊病和人們?cè)絹?lái) 越高的要求激化了矛盾,使原來(lái)不太突出的交通問(wèn)題被提上了日程。現(xiàn)在有關(guān)部門(mén)愈來(lái)愈多的注重在交通管理中引進(jìn)自動(dòng)化、智能化技術(shù),比如“電子警察”、自適應(yīng)交
3、通信號(hào)燈以及耗資巨大的交通指揮控制系統(tǒng)等。隨著經(jīng)濟(jì)的發(fā)展和社會(huì)的進(jìn)步,道路交通已愈來(lái)愈成為社會(huì)活動(dòng)的重要組成部分。對(duì)交通的管控能力,也就從一個(gè)側(cè)面體現(xiàn)了這個(gè)國(guó)家對(duì)整個(gè)社會(huì)的管理控制能力,因此各國(guó)都很重視用各種高科技手段來(lái)強(qiáng)化對(duì)交通的管控能力。 為了確保十字路口的行人和車輛順利,暢通的通過(guò),往往采用電子控制的交通信號(hào)來(lái)進(jìn)行指揮。而利用PLD技術(shù)來(lái)設(shè)計(jì)交通燈來(lái)完成這個(gè)需求就顯的更加迫切,同樣也是非常的實(shí)用和合理。二、設(shè)計(jì)目標(biāo) 通過(guò)采用VHDL 語(yǔ)言對(duì)交通燈控制器的設(shè)計(jì),使交通燈控制電路用數(shù)字信號(hào)自動(dòng)控制十字路口兩組紅、黃、綠交通燈的狀態(tài)轉(zhuǎn)換的方法,指揮各種車輛和行人安全通行,實(shí)現(xiàn)十字路口交通管理的
4、自動(dòng)化。綠燈亮?xí)r,準(zhǔn)許車輛通行,但轉(zhuǎn)彎的車輛不得妨礙被放行的直行車輛、行人通行,黃燈亮?xí)r,已越過(guò)停止線的車輛可以繼續(xù)通行,紅燈亮?xí)r,禁止車輛通行。三、設(shè)計(jì)原理1.可編程邏輯器件概述 可編程邏輯器件(簡(jiǎn)稱PLD)是允許用戶編程(配置)實(shí)現(xiàn)所需邏輯功能的電路,一般可利用計(jì)算機(jī)輔助設(shè)計(jì),即用原理圖、狀態(tài)機(jī)、硬件描述語(yǔ)言(VHDL)等方法來(lái)表 示設(shè)計(jì)思想,經(jīng)過(guò)一系列編譯或裝換程序,生成相應(yīng)的目標(biāo)文件,再由編程器或下載電 纜將設(shè)計(jì)文件配置到目標(biāo)器件中,這時(shí)的可編程邏輯器件就可作為滿足用戶需求的專用 集成電路使用了??删幊踢壿嬈骷粌H速度快、集成度高,并且能隨心所欲地完成用戶定義的邏輯 功能,還可以加密
5、和重新編程,其編程次數(shù)最大可達(dá)1萬(wàn)次以上。使用可編程邏輯器件可以大大簡(jiǎn)化硬件系統(tǒng)、 降低成本、提高系統(tǒng)的可靠性、靈活性和保密性。PLD的出現(xiàn),打破了由中小規(guī)模通用型集成電路和大規(guī)模專用集成電路壟斷的局面,在通信、數(shù)據(jù)處理、網(wǎng)絡(luò)、儀器、工業(yè)控制、軍事和航空航天等眾多領(lǐng)域得到廣泛應(yīng)用,可以預(yù)見(jiàn),不 久的將來(lái),PLD 將在集成電路市場(chǎng)占統(tǒng)治地位。2.硬件描述語(yǔ)言介紹 常用的硬件描述語(yǔ)言有VHDL、Verilog、ABEL。VHDL:作為IEEE的工業(yè)標(biāo)準(zhǔn)硬件描述語(yǔ)言,在電子工程領(lǐng)域,已成為事實(shí)上的通用硬件描述語(yǔ)言。Verilog:支持的 EDA 工具較多,適用于RTL級(jí)和門(mén)電路級(jí)的描述,其綜合過(guò)程較
6、VHDL稍簡(jiǎn)單,但其在高級(jí)描述方面不如VHDL。ABEL:一種支持各種不同輸入方式的HDL,被廣泛用于各種可編程邏輯器件的邏 輯功能設(shè)計(jì),由于其語(yǔ)言描述的獨(dú)立性,因而適用于各種不同規(guī)模的可編程器件的設(shè)計(jì)。3.仿真軟件Quartus II簡(jiǎn)介 Altera設(shè)計(jì)的Quartus II軟件提供了完整的多平臺(tái)設(shè)計(jì)環(huán)境,它可以輕易滿足各種 特定設(shè)計(jì)的需要,也是單芯片可編程系統(tǒng)(SOPC)設(shè)計(jì)的綜合性環(huán)境和 SOPC 開(kāi)發(fā)的基 本設(shè)計(jì)工具,并為 Altera DSP 開(kāi)發(fā)包進(jìn)行系統(tǒng)模型設(shè)計(jì)提供了集成綜合環(huán)境。Quartus II 設(shè)計(jì)工具完全支持 VHDL、Verilog的設(shè)計(jì)流程,其內(nèi)部嵌有 VHDL、
7、Verilog 邏輯綜合器。Quartus II包括模塊化的編譯器。編譯器包括的功能模塊有分析/綜合器(Analysis Synthesis)、適配器Fitter)、裝配器(Assembler)、時(shí)序分析器(Timing Analyzer)、設(shè)計(jì)輔助模塊(Design Assistant)等。可以通過(guò)選擇 Start Compilation (Processing 菜單)可以通過(guò)選擇Start Processing菜單,然后從Start子菜單中為模塊選擇相應(yīng)的指令。此外,還可以通過(guò)選擇Compiler Tool(Tools 菜單)并在Compiler Tool窗口中運(yùn)行該模塊來(lái)啟動(dòng)編譯器模塊。
8、在Compiler Tool 窗口中,可以打開(kāi)該模塊的設(shè)置文件或報(bào)告文件,還可以打開(kāi)其它相關(guān)窗口。Quartus II支持層次化的設(shè)計(jì),可以在一個(gè)新的編輯輸入環(huán)境中對(duì)使用不同輸入設(shè) 計(jì)方式完成的模塊進(jìn)行調(diào)試,從而解決原理圖與HDL混合輸入設(shè)計(jì)的問(wèn)題。在設(shè)計(jì)輸入之后,Quartus II的編譯器將給出設(shè)計(jì)輸入的錯(cuò)誤報(bào)告??梢允褂?Quartus II 帶有的RTL Viewer觀察綜合后的 RTL 圖。Quartus II自動(dòng)設(shè)計(jì)的各主要處理環(huán)節(jié)和設(shè)計(jì)流程,包括設(shè)計(jì)輸入編輯、設(shè)計(jì)分析與綜合、適配、編譯文件匯編(裝配)、時(shí)序參數(shù)提取以及編程下載幾個(gè)步驟。四、系統(tǒng)分析與總體方案1.系統(tǒng)分析 通過(guò)分析
9、可以知道,所要設(shè)計(jì)的十字路口交通燈控制電路要能夠使南北方向有左轉(zhuǎn)、直行各三個(gè)燈(紅、黃、綠),東西方向有左轉(zhuǎn)、直行各三個(gè)燈(紅、黃、綠),三個(gè)燈能夠按順序依次亮滅。而且要求綠燈亮轉(zhuǎn)黃燈亮然后其他時(shí)間為紅燈,紅燈亮可以直接轉(zhuǎn)綠燈(三種燈的循環(huán)順序如圖3.1所示)。還要求三種燈的點(diǎn)亮?xí)r間能夠以倒計(jì)時(shí)的形式顯示出來(lái)??梢杂肰HDL語(yǔ)言合理設(shè)計(jì)系統(tǒng)功能,使紅黃綠燈的轉(zhuǎn)換有一個(gè)準(zhǔn)確的時(shí)間間隔和轉(zhuǎn)換順序。綠燈黃燈紅燈黃燈紅燈圖4.1三種燈的循環(huán)順序2.設(shè)計(jì)思路(1)時(shí)間脈沖可以直接賦予得到。(2)10s、5s、40s、30s定時(shí)信號(hào)用倒計(jì)時(shí),計(jì)時(shí)起始信號(hào)由控制流程電路給出,每當(dāng)計(jì)滿所需時(shí)間,即向控制電路輸
10、出“時(shí)間到”的信號(hào),并使計(jì)數(shù)器清零,由控制電路啟、閉三色信號(hào)燈。(3)主控電路是核心,這是一個(gè)時(shí)序電路,其輸入信號(hào)為東西、南北方向:10s、5s、40s、30s定時(shí)信號(hào),其輸出狀態(tài)控制相應(yīng)的三色燈。(4)三種燈轉(zhuǎn)換狀態(tài)表:時(shí)間|S105405105305東西左轉(zhuǎn)綠黃紅紅紅紅紅紅東西直行紅紅綠黃紅紅紅紅南北左轉(zhuǎn)紅紅紅紅綠黃紅紅南北直行紅紅紅紅紅紅綠黃3.設(shè)計(jì)方案 根據(jù)設(shè)計(jì)要求和系統(tǒng)所具有功能,并參考相關(guān)的文獻(xiàn)資料經(jīng)行方案設(shè)計(jì)畫(huà)出如下所示的十字路口交通燈控制器系統(tǒng)框圖,及為設(shè)計(jì)的總體方案,框圖如下圖3.2所示:CLK交通燈控制及計(jì)時(shí)模塊掃描顯示模塊LED顯示圖4.2 系統(tǒng)的框圖五、電路設(shè)計(jì)1.控制
11、器電路設(shè)計(jì)流程控制器的作用是根據(jù)計(jì)數(shù)器的計(jì)數(shù)值控制各方向上發(fā)光二極管的亮、滅,當(dāng)計(jì)時(shí)時(shí)間到達(dá),狀態(tài)控制器就響應(yīng),自動(dòng)跳轉(zhuǎn)到下一個(gè)狀態(tài)。此外,當(dāng)檢測(cè)到特殊情況(urgen =1)發(fā)生時(shí),無(wú)條件點(diǎn)亮紅燈的二極管(急救燈按下urgen ='1',則東西南北都亮紅燈,在這種狀態(tài)下原來(lái)的狀態(tài)必須保持,即東西南北方向定時(shí)時(shí)間保持不變。急救燈未按下或者按下后恢復(fù),則繼續(xù)計(jì)時(shí)(計(jì)時(shí)通過(guò)計(jì)數(shù)器count),同時(shí)恢復(fù)東西南北原來(lái)燈的狀態(tài))。具體實(shí)物模塊如圖5.1所示:圖5.1控制器模塊2.VHDL程序設(shè)計(jì)如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE
12、 IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY ledcontrol ISPORT(reset,clk,urgen: INSTD_LOGIC;state: OUTSTD_LOGIC_VECTOR(2 DOWNTO 0);sub,set1,set2,set3,set4: OUTSTD_LOGIC);END ledcontrol;ARCHITECTURE a OF ledcontrol ISSIGNAL count : STD_LOGIC_VECTOR(6 DOWNTO 0);SIGNAL subtemp: STD_LOGIC;BEGINsub<=subtemp AN
13、D (NOT clk);-將電平型信號(hào)變?yōu)槊}沖型,即高電平時(shí)輸出一個(gè)脈沖statelabel:PROCESS (reset,clk)BEGINIF reset='1' THEN-系統(tǒng)復(fù)位 count<="0000000"state<="000"set2<='1'set4<='1'ELSIF clk'event AND clk='1' THEN IF urgen='0' THEN count<=count+1;subtemp<=
14、9;1'ELSE subtemp<='0'END IF;-經(jīng)過(guò)脈沖電平變換后,使得正常狀態(tài)時(shí),正常減計(jì)數(shù),緊急狀態(tài)下停止計(jì)數(shù)IF count=0 then state<="000"set1<='1'set2<='1'set3<='1'set4<='1' ELSIF count=10 then state<="001"set1<='1'ELSIF count=15 THEN state<="
15、010"set1<='1'set2<='1'ELSIF count=55 THEN state<="011"set2<='1'ELSIF count=60 THEN state<="100"set2<='1'set3<='1'elsif count=70 THEN state<="101"set3<='1'elsif count=75 THEN state<="
16、110"set3<='1'set4<='1'elsif count=105 THEN state<="111"set4<='1'ELSIF count=110 THEN count<="0000000"ELSE set1<='0' set2<='0'set3<='0'set4<='0'END IF;END IF; - 控制流程END PROCESS statelabel;END a
17、;2.輸出顯示電路設(shè)計(jì)根據(jù)狀態(tài)控制器所控制的狀態(tài)和計(jì)數(shù)器的計(jì)時(shí)時(shí)間,選擇當(dāng)前狀態(tài)下的顯示器,使顯示器輸出當(dāng)前狀態(tài)下的數(shù)碼管亮、滅指令,其中數(shù)碼管的顯示采用動(dòng)態(tài)掃描顯示。具體實(shí)物模塊如圖:圖5.2譯碼顯示電路模塊3.VHDL程序設(shè)計(jì)如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY ledshow ISPORT(clk,urgen: IN STD_LOGIC;state: IN STD_LOGIC_VECTOR(2 DOWNTO 0);sub,set1,set2,set3,set4:
18、 IN STD_LOGIC;eg1,ey1,er1,edg2,edy2,edr2,ng1,ny1,nr1,ndg2,ndy2,ndr2:OUTSTD_LOGIC;led1,led2: OUTSTD_LOGIC_VECTOR(7 DOWNTO 0);END ledshow;ARCHITECTURE a OF ledshow ISSIGNAL count1,count2,count3,count4 : STD_LOGIC_VECTOR(7 DOWNTO 0); SIGNAL setstate1,setstate2,setstate3,setstate4 : STD_LOGIC_VECTOR(7 D
19、OWNTO 0); SIGNAL etg1,ety1,etr1,edirr1,edirg1, ediry1,norg2,nory2,norr2,nordirg2,nordiry 2,nordirr2 : STD_LOGIC; BEGINled1<="00000000" WHEN urgen='1' AND clk='0' ELSE -顯示東西向行和停止count1 WHEN state="000" ELSEcount1 WHEN state="001" ELSE count2 WHEN state
20、="010" ELSEcount2 WHEN state="011" ELSEcount2;led2<="00000000" WHEN urgen='1' AND clk='0' ELSEcount3 WHEN state="000" ELSEcount3 WHEN state="001" ELSE count3 WHEN state="010" ELSEcount3 WHEN state="011" ELSEcoun
21、t3 WHEN state="100" ELSEcount3 WHEN state="101" ELSEcount4 WHEN state="110" ELSEcount4;etg1<='1' WHEN state="000" AND urgen='0' ELSE '0'ety1<='1' WHEN state="001" AND urgen='0' ELSE '0'etr1<=
22、39;1' WHEN state="010" or urgen='1' OR state="011" OR state="100" OR state="101" OR state="110" OR state="111" ELSE '0'edirg1<='1' WHEN state="010" and urgen='0' ELSE '0'ediry1<=
23、39;1' WHEN state="011" and urgen='0' ELSE '0'edirr1<='1' WHEN state="000" OR urgen='1' OR state="001" OR state="100" OR state="101" OR state="110" OR state="111" ELSE '0'norg2<=
24、9;1' WHEN state="100" AND urgen='0' ELSE '0'nory2<='1' WHEN state="101" and urgen='0' ELSE '0'norr2<='1' WHEN state="000" OR state="001" OR state="010" OR state="011" OR state="
25、110" OR state="111" OR urgen='1' ELSE '0'nordirg2<='1' WHEN state="110" AND urgen='0' ELSE '0'nordiry2<='1' WHEN state="111" and urgen='0' ELSE '0'nordirr2<='1' WHEN state="000&qu
26、ot; OR state="001" OR state="010" OR state="011" OR state="100" OR urgen='1' OR state="101" ELSE '0'setstate1<= "00010000" WHEN state="000" ELSE"00000101" WHEN state="001" ELSE"10010101&
27、quot; ;setstate2<= "00010101" WHEN state="000" ELSE-"00000101" WHEN state="001" ELSE"01000000" WHEN state="010" ELSE"00000101" WHEN state="011" ELSE"01010000" ;setstate3<= "01100000" WHEN state=
28、"000" ELSE"00010000" WHEN state="100" ELSE"00000101" WHEN state="101" ELSE"00110101" ;setstate4<= "01110101" WHEN state="000" ELSE"00110000" WHEN state="110" ELSE"00000101" ;label4: -南北直行
29、PROCESS (sub)BEGINIF sub'event AND sub='1' THENIF set4='1' THEN count4<=setstate4;elsif count4(3 downto 0)="0000" then count4<=count4-7; ELSE count4<=count4-1; END IF;ndy2<=nordiry2;ndg2<=nordirg2;ndr2<=nordirr2;END IF;END PROCESS label4;label3: -南北左行P
30、ROCESS (sub)BEGINIF sub'event AND sub='1' THENIF set3='1' THEN count3<=setstate3;elsif count3(3 downto 0)="0000" then count3<=count3-7;ELSE count3<=count3-1; END IF;ng1<=norg2;ny1<=nory2;nr1<=norr2;END IF;END PROCESS label3;label2: -東西直行PROCESS (sub)BE
31、GINIF sub'event AND sub='1' THENIF set2='1' THEN count2<=setstate2;elsif count2(3 downto 0)="0000" then count2<=count2-7; ELSE count2<=count2-1; END IF;edg2<=edirg1;edy2<=ediry1;edr2<=edirr1;END IF;END PROCESS label2;label1: -東西左行PROCESS (sub)BEGINIF s
32、ub'event AND sub='1' THENIF set1='1' THEN count1<=setstate1; elsif count1(3 downto 0)="0000" then count1<=count1-7;ELSE count1<=count1-1; END IF;eg1<=etg1;er1<=etr1;ey1<=ety1;END IF;END PROCESS label1;END a;6、 程序仿真與分析1. 仿真原理圖2.仿真結(jié)果利用Quartus II軟件對(duì)本程序進(jìn)行編譯,生成了可以進(jìn)行
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 上海建橋?qū)W院《高等代數(shù)實(shí)驗(yàn)》2023-2024學(xué)年第一學(xué)期期末試卷
- 上海海洋大學(xué)《社會(huì)保障史》2023-2024學(xué)年第一學(xué)期期末試卷
- 上海海關(guān)學(xué)院《數(shù)學(xué)提高》2023-2024學(xué)年第一學(xué)期期末試卷
- 上海海關(guān)學(xué)院《工程材料及成形技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 教師調(diào)研課題報(bào)告范文
- 2024年中國(guó)民用型應(yīng)急燈極板市場(chǎng)調(diào)查研究報(bào)告
- 2024年中國(guó)散流板市場(chǎng)調(diào)查研究報(bào)告
- 企業(yè)員工管理制度匯編選集
- 藥劑學(xué)試題庫(kù)含答案
- 教育心理學(xué)題庫(kù)及答案
- 個(gè)人代開(kāi)稅票合同協(xié)議書(shū)
- 冀教版數(shù)學(xué)五年級(jí)上冊(cè)7.2 綜合與實(shí)踐 估算玉米收入
- 安全先進(jìn)個(gè)人事跡材料(7篇)
- DL∕T 523-2017 化學(xué)清洗緩蝕劑應(yīng)用性能評(píng)價(jià)指標(biāo)及試驗(yàn)方法
- 服飾品牌解析智慧樹(shù)知到期末考試答案章節(jié)答案2024年上海工程技術(shù)大學(xué)
- 廣安市岳池縣2022-2023學(xué)年七年級(jí)上學(xué)期期末道德與法治試題【帶答案】
- 經(jīng)營(yíng)異常授權(quán)委托書(shū)范本
- 2022-2023學(xué)年廣東省廣州市天河區(qū)教科版(廣州)六年級(jí)上冊(cè)期末測(cè)試英語(yǔ)試卷(含聽(tīng)力音頻) 【帶答案】
- 國(guó)家開(kāi)放大學(xué)-工程力學(xué)(本)(閉卷)
- 江西旅游經(jīng)濟(jì)發(fā)展調(diào)查分析報(bào)告
- 中醫(yī)培訓(xùn)課件:《中藥熱奄包技術(shù)》
評(píng)論
0/150
提交評(píng)論