




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、-. z第一局部:設(shè)計題目數(shù)字電子技術(shù)根底課程設(shè)計是繼數(shù)字電子技術(shù)根底課之后開出的實踐環(huán)節(jié)課程。通過課程設(shè)計學(xué)生應(yīng)掌握設(shè)計所用硬件電路的工作原理,設(shè)計出滿足要求的總體電路,掌握電子線路CAD工具的使用方法,較熟練地使用仿真軟件對電路進展設(shè)計和仿真,并能進展實驗調(diào)試。學(xué)生按給定的題目進展設(shè)計,題目的難度要保證中等水平的學(xué)生在教師的指導(dǎo)下在兩周能獨立完成設(shè)計任務(wù)。題目要綜合運用所學(xué)的數(shù)字電子技術(shù)根底設(shè)計的根本知識。一、智力競賽搶答器設(shè)計一個由四人參加的智力競賽搶答電路,當主持人宣布開場,顯示出首先作出判斷的參加競賽者。功能:1、清零功能:可用觸發(fā)器的異步復(fù)位端實現(xiàn),由主持人控制。2、搶答鍵控功能:
2、可用觸發(fā)器和門電路實現(xiàn)。3、顯示功能:可用發(fā)光二極管顯示,用蜂嗚器發(fā)聲。要求:1、選擇適當?shù)脑骷?,設(shè)計該電路。以實現(xiàn)上述功能。2、利用Proteus繪制其電路原理圖。3、對每個元器件選擇適宜的封裝,形成網(wǎng)絡(luò)表文件。二、醫(yī)院呼叫電路設(shè)計一個醫(yī)院呼叫電路電路。功能:1、設(shè)計一個具有8個或8個以下的房間使用的呼叫電路。2、根據(jù)病號的輕、重采用優(yōu)先編碼器,首先對重病號作出反響。 3、電路能顯示該病號的房間號和電笛響,以告示護士或醫(yī)生有病號呼叫。要求:1、選擇適當?shù)脑骷?,設(shè)計該電路。以實現(xiàn)上述功能。2、利用Proteus繪制其電路原理圖。3、對每個元器件選擇適宜的封裝,形成網(wǎng)絡(luò)表文件。三、輸出可調(diào)的
3、穩(wěn)壓電路設(shè)計一個輸出可調(diào)的穩(wěn)壓電路。功能:1、三端可調(diào)正輸出集成穩(wěn)壓電路。2、輸出電壓為1.237之間。要求:1、選擇適當?shù)脑骷?,設(shè)計該電路。以實現(xiàn)上述功能。2、利用Proteus繪制其電路原理圖。3、對每個元器件選擇適宜的封裝,形成網(wǎng)絡(luò)表文件。四、水位自動控制電路 利用555定時器,設(shè)計一個水位自動控制電路。功能:1、當水位低于最低點時,電路能自動加水。2、當高于最高點時,電路能自動停水。 3、該電路的直流電源自行設(shè)計??刹捎肳78系列要求:1、選擇適當?shù)脑骷O(shè)計該電路。以實現(xiàn)上述功能。2、利用Proteus繪制其電路原理圖。3、對每個元器件選擇適宜的封裝,形成網(wǎng)絡(luò)表文件。五、發(fā)光顯示
4、的通斷測試儀利用555定時器,設(shè)計一個發(fā)光顯示的通斷測試儀電路 。當電路中電阻R*30時可視為阻路,當R*30時可視為通路。功能:1、當探頭A、B兩點間的電阻30時可視為阻路,則紅色發(fā)光二極管亮,綠色發(fā)光二極管不發(fā)光。 2、當探頭A、B兩點間的電阻30時可視為通路,則綠色發(fā)光二極管亮,紅色發(fā)光二極管不發(fā)光。要求:1、選擇適當?shù)脑骷?,設(shè)計該電路。以實現(xiàn)上述功能。2、利用Proteus繪制其電路原理圖。3、對每個元器件選擇適宜的封裝,形成網(wǎng)絡(luò)表文件。八、多個地點的多音調(diào)報警電路利用555定時器設(shè)計一個多個地點的多音調(diào)報警電路,該電路能對不同地點進展監(jiān)視以確定入侵者的方位。功能:1、當入侵者從不同
5、地點進入時,電路能發(fā)出不同的音樂。要求:1、選擇適當?shù)脑骷O(shè)計該電路。以實現(xiàn)上述功能。2、利用Proteus繪制其電路原理圖。3、對每個元器件選擇適宜的封裝,形成網(wǎng)絡(luò)表文件。以下各題目均用Verilog語言在Altera公司FPGA芯片上實現(xiàn)。九、溫度檢測電路利用熱敏電阻、電壓比擬器、三極管等元件設(shè)計一個溫度檢測電路。功能:當溫度超過設(shè)定溫度時,電路發(fā)出聲、光報警。要求:1、選擇適當?shù)脑骷?,設(shè)計該電路。以實現(xiàn)上述功能。2、利用Proteus繪制其電路原理圖。3、對每個元器件選擇適宜的封裝,形成網(wǎng)絡(luò)表文件。十、數(shù)碼管顯示控制器要求:1、能自動一次顯示出數(shù)字0、1、2、3、4、5 、6、7、
6、8、9自然數(shù)列,1、3、5、7、9(奇數(shù)列,0、2、4、6、8偶數(shù)列,0、1、2、3、4、5、6、7、0、1(音樂符號序列;然后再從頭循環(huán); 2、翻開電源自動復(fù)位,從自然數(shù)列開場顯示。 十一、出租車計價器設(shè)計和實現(xiàn) 要求:(1)計價器按1.2元/公里計費,超過10公里后,則按1.8元/公里收費。(2)起步價6元(3公里),超過3公里后,計價累加0.6元,10公里以后每過0.5公里累加0.6元。(3)過10公里后, 計價累加0.9元, 以后每過0.5公里累加0.9元。(4)公里數(shù)4位數(shù)字顯示,準確到0.1公里; 出租車計價4位數(shù)字顯示,準確到0.1元。(5) 晚上超過0點-5點,計價器按1.8元
7、/公里計費, 超過10公里后,則按2.4元/公里收費.。(6) 每等待3分鐘按0.5公里費用計價。十二、數(shù)字鐘要求:、計時及校時,時間可以小時制或小時制顯示;、日歷:顯示年月日星期,及設(shè)定設(shè)定功能;、跑表:啟動停頓保持顯示去除時和分有校正功能;、鬧鐘:設(shè)定鬧鐘時間,整點提示整點報時,喇叭響兩秒,十三、交通燈控制器要求:1、東西方向為主干道,南北方向為副干道;2、主干道通行40秒后,假設(shè)副干道無車,仍主干道通行,否則轉(zhuǎn)換;4、換向時要有4秒的黃燈期;5、南北通行時間為20秒,到時間則轉(zhuǎn)換,假設(shè)未到時,但是南北方向已經(jīng)無車,也要轉(zhuǎn)換。6、附加:用數(shù)碼管顯示計時。十四、雙鈕電子鎖要求:1、有兩個按鈕
8、A和B,開鎖密碼可自設(shè),如3、5、7、9;2、假設(shè)按B鈕,則門鈴響;滴、嗒;3、開鎖過程:按3下A,按一下B,則3579中的”即被輸入;接著按下,按一下,則輸入5”;依次類推,直到輸入完9,按B,則鎖。 被翻開-用發(fā)光管KS表示;4、報警:在輸入3、5、6、9過程后,如果輸入與密碼不同,則報警;用發(fā)光管BJ表示,同時發(fā)出嘟、嘟.的報警聲音;5、用一個開關(guān)表示關(guān)門即閉鎖。十五、速度表要求:1、顯示汽車Km/h數(shù);2、車輪每轉(zhuǎn)一圈,有一傳感脈沖;每個脈沖代表1m的距離;3、采樣周期設(shè)為10S;4、要求顯示到小數(shù)點后邊兩位;5、用數(shù)碼管顯示;6、最高時速小于300Km/h。十六、數(shù)字頻率計要求: 數(shù)
9、字顯示功能:用數(shù)碼管顯示測量信號的頻率十進制形式顯示。 測量圍:10Hz100kHz的信號為提高測量精度,可選擇高、低頻段測量。 測量精度:誤差不超過1% 。本課程設(shè)計分為實際設(shè)計與虛擬仿真兩個環(huán)節(jié)。實際設(shè)計應(yīng)使學(xué)生學(xué)會電子系統(tǒng)設(shè)計的根本設(shè)計方法,包括:方案的選擇、框圖的繪制、單元電路的設(shè)計、元器件的選擇等方面。虛擬仿真環(huán)節(jié)應(yīng)使學(xué)生學(xué)會使用電路仿真分析軟件Quartus II9.0在計算機上進展電路設(shè)計與分析的方法。要求學(xué)生所選課題必須在計算機上通過虛擬設(shè)計確定設(shè)計方案,通過虛擬仿真建立系統(tǒng),完成設(shè)計要求。十七、乒乓球比賽游戲機要求:1設(shè)計一個甲、乙雙方參賽,裁判參與的乒乓球比賽游戲模擬機。2
10、用8個發(fā)光二極管排成一條直線,以中點為界,兩邊各代表參賽雙方的位置,其中點亮的發(fā)光二極管代表乒乓球的當前位置,點亮的發(fā)光二極管依次由左向右或由右向左移動。2當球運動到*方的最后一位時,參賽者應(yīng)立即按下自己一方的按鈕,即表示擊球,假設(shè)擊中,則球向相反方向運動,假設(shè)未擊中,則對方得1分。3設(shè)置自動計分電路,雙方各用二位數(shù)碼管來顯示計分,每局11分。到達11分時產(chǎn)生報警信號。十八、盲人報時鐘;1、任務(wù)要求:1具有時、分、秒計時功能小時112,要求用數(shù)碼管顯示。2具有手動校時、校分功能。3設(shè)有報時、報分開關(guān)。當按報時開關(guān)時,能以聲響數(shù)目告訴盲人。當按報分開關(guān)時,同樣能以聲響數(shù)目告訴盲人,但每響一下代表
11、十分鐘報時與報分的聲響的頻率應(yīng)不同。十九、電子鎖及門鈴電路設(shè)計;1、任務(wù)要求1設(shè)計一個電子鎖,其密碼為8位二進制代碼,開鎖指令為串行輸入碼。2開鎖輸入碼與密碼一致時,鎖被翻開。3當開鎖輸入碼與密碼不一致時,則報警。報警時間持續(xù)15秒,停3秒后再重復(fù)出現(xiàn)。4報警器可以兼作門鈴使用,門鈴時間為10秒。5設(shè)置一個系統(tǒng)復(fù)位開關(guān),所有的時間數(shù)據(jù)用數(shù)碼管顯示出來。二十、自動售貨機;1設(shè)計一個自動售貨機,此機能出售1元、2元、5元、10元的四種商品。出售哪種商品可有顧客按動相應(yīng)的一個按鍵即可,并同時用數(shù)碼管顯示出此商品的價格。2顧客投入硬幣的錢數(shù)也是有1元、2元、5元、10元四種,但每次只能投入其中的一種硬
12、幣,此操作通過按動相應(yīng)的一個按鍵來模擬,并同時用數(shù)碼管將投幣額顯示出來。3顧客投幣后,按一次確認鍵,如果投幣額缺乏時則報警,報警時間3秒。如果投幣額足夠時自動送出貨物送出的貨物用相應(yīng)不同的指示燈顯示來模擬,同時多余的錢應(yīng)找回,找回的錢數(shù)用數(shù)碼管顯示出來。4顧客一旦按動確認鍵3秒后,自動售貨機即可自動恢復(fù)到初始狀態(tài),此時才允許顧客進展下一次購貨操作。5售貨機還應(yīng)具有供商家使用的累加賣貨額的功能,累加的錢數(shù)要用數(shù)碼管顯示,顯示2位即可。此累加器只有商家可以控制清零。6此售貨機要設(shè)有一個由商家控制的整體復(fù)位控制四、自適應(yīng)頻率測量儀; 1頻率測量圍:1Hz - 10MHz2測量四個量程:1Hz - 1
13、0kHz 10kHz - 100kHz100kHz - 1MHzs1MHz - 10MHz3自動轉(zhuǎn)換量程;4測量數(shù)據(jù)顯示四位,用小數(shù)點代表k 的單位;5測量誤差:0.05%FSR滿量程。二十一、自動電梯控制器;1設(shè)計一個四層樓的電梯自動控制系統(tǒng),電梯設(shè)有對外報警開關(guān),可以在緊急情況下報警,而報警裝置設(shè)在電梯外。2每層樓梯門邊設(shè)有上樓和下樓的請求開關(guān),電梯設(shè)有供來客可選擇所去樓層的開關(guān)。3應(yīng)設(shè)有表示電梯目前所處運動狀態(tài)上升或下降以及電梯正位于哪一層樓的指示裝置。4能記憶電梯外的所有請求信號,并按照電梯的運行規(guī)則對信號分批響應(yīng),每個請求信號一直保持到執(zhí)行后才撤除。5電梯運行規(guī)則如下a電梯上升時,僅
14、響應(yīng)電梯所在位置以上的上樓請求信號,依樓層次序逐個執(zhí)行,直到最后一個請求執(zhí)行完畢。然后升到有下樓請求的最高樓層,開場下樓請求信號。b電梯下降時,僅響應(yīng)電梯所在位置以下的下樓請求信號,依樓層次序逐個執(zhí)行,直到最后一個請求執(zhí)行完畢。然后降到有上樓請求的最高樓層,開場上樓請求信號。c一旦電梯執(zhí)行完全部請求信號后,應(yīng)停留在原來層等待,有新的請求信號時再運行。二十三、圖像解碼的IDCT變換硬件實現(xiàn)設(shè)計僅由一個1-IDCT核完成的2-IDCT構(gòu)造,利用蝶形運算實現(xiàn)一維IDCT變換,并按照行列可別離間接算法實現(xiàn)二維IDCT構(gòu)造,該構(gòu)造的轉(zhuǎn)換矩陣通過RAM實現(xiàn),數(shù)據(jù)吞吐率較高,能夠有效節(jié)省芯片面積。2-IDC
15、T構(gòu)造用Verilog語言在Altera公司FPGA芯片EP2C70F896C6上得到了實現(xiàn)。1 二維IDCT算法實現(xiàn)的簡單描述二維IDCT是由一維IDCT衍生而來的,它可以分解為兩個獨立的一維IDCT。令:則可將IDCT變換公式重寫為:以上兩式分別代表兩個獨立的一維IDCT變換,代表行變換,代表列變換。采用FPGA來實現(xiàn)IDCT變換時,可先進展行變換,再進展列變換,兩者均為一維IDCT變換。在進展行變換和列變換時,可分別將和視為常數(shù),這樣可將式寫成如下形式:。該式可分為兩局部:第一局部為,在行變換中它代表的是DCT系數(shù),在列變換中它代表的則是第一次IDCT變換的結(jié)果;第二局部為。從可以看出,
16、IDCT變換是由一系列乘積項相加構(gòu)成的,通過將局部積與局部和的結(jié)果存放在FPGA的分布算術(shù)查詢表DALUTDistributed Arithmetic Look-up Table中,就可以用FPGA器件方便地實現(xiàn)IDCT變換。圖1-1所示為一維IDCT的變換過程,其中代表中的項。根據(jù)余弦函數(shù)的周期特性和對稱特性:,可將圖1-1中的系數(shù)簡化,得到圖1-2所示的簡化系數(shù)。F(0)F(1)G(0)G(7)圖1-1 IDCT的變換過程由圖1-2可見,該系數(shù)矩陣具有良好的對稱性,即第1,2,3,4行分別與第8,7,6,5行的奇數(shù)列一樣,與偶數(shù)列符號相反。根據(jù)此特點,在使用FPGA器件實現(xiàn)IDCT算法時,
17、可將64個系數(shù)分成8組,每組個系數(shù),分別存放在DALUT中,由F(0)至F(7)來尋址。F(0)F(1)G(0)G(7)圖1-2 簡化系數(shù)后的IDCT變換過程一維IDCT算法的實現(xiàn)框圖如圖1-3所示。圖中,F(xiàn)(0)至F(7)被分為奇數(shù)F(1,3,5,7)和偶數(shù)F(0,2,4,6)兩組,乘積的結(jié)果及局部和的結(jié)果都存放在DALUT中。C0 C2 C4 C6C0 C6-C4-C2C1 C3 C5 C7C3-C7-C1-C5C0-C6-C4 C2C5-C1 C7 C3C7-C5 C3-C1C0-C2 C4-C6F(1,3,5,7)F(0,2,4,6)G(0)G(7)G(1)G(6)G(2)G(5)G(
18、3)G(4)圖1-3 一維IDCT算法的實現(xiàn)框圖2 二維IDCT的整體構(gòu)造設(shè)計該2-IDCT構(gòu)造的主要局部是一個1D-IDCT處理單元、一個轉(zhuǎn)置存模塊,另外還有一個串一并轉(zhuǎn)換模塊和一個并串轉(zhuǎn)換模塊。如圖2-1所示。圖2-1 2-IDCT的整體構(gòu)造二維IDCT被行列分解為兩個一維IDCT。首先進展的是行變換,此時輸入數(shù)據(jù)首先經(jīng)過串一并轉(zhuǎn)換模塊,在這里等待第一行的8個數(shù)據(jù)全部到齊之后,并行的將數(shù)據(jù)發(fā)送到一維IDCT處理單元,經(jīng)過1個時鐘周期后,一維IDCT處理單元再將處理結(jié)果并行地發(fā)送到并串轉(zhuǎn)換模塊,然后逐個按行將數(shù)據(jù)寫入轉(zhuǎn)置存,與此同時串一并轉(zhuǎn)換模塊將第二行8個數(shù)據(jù)發(fā)送到一維IDCT處理單元,并
19、開場第二行的一維IDCT計算。在全部8個行IDCT變換計算完畢之后,開場列IDCT變換。這時候轉(zhuǎn)置存模塊中的數(shù)據(jù)按列的順序逐個讀取出來,經(jīng)過串一并轉(zhuǎn)換模塊,計算過程同上。在第一列的IDCT計算完成之后,IDCT處理核將在連續(xù)的64個時鐘周期將二維IDCT變換的結(jié)果逐個的輸出到模塊外部。并在第57個結(jié)果輸出的同時開場從外部輸入端讀取第二個圖像塊8*8的數(shù)據(jù)。第二局部、課程設(shè)計指導(dǎo)與舉例在設(shè)計一個電子電路系統(tǒng)時,首先必須明確系統(tǒng)的設(shè)計任務(wù),根據(jù)任務(wù)進展方案選擇,然后對方案中的各局部進展電路的設(shè)計、器件選擇,最后將各局部連接在一起,畫出一個符合設(shè)計要求的完整的系統(tǒng)電路圖。 1明確系統(tǒng)的設(shè)計任務(wù)要求
20、對系統(tǒng)的設(shè)計任務(wù)進展具體分析,充分了解系統(tǒng)的性能、指標、容及要求,以便明確系統(tǒng)應(yīng)完成的任務(wù)。(2方案選擇這一步的工作要,把系統(tǒng)要完成的任務(wù)分配給假設(shè)干個單元電路,并畫出一個能表示各單元功能的整機原理框圖。(3單元電路的設(shè)計、器件選擇根據(jù)系統(tǒng)的指標和功能框圖,明確各局部任務(wù),進展各單元電路的設(shè)計,器件選擇。(4電路圖的繪制數(shù)字電子技術(shù)課程設(shè)計例交通燈控制模擬系統(tǒng)一、設(shè)計任務(wù)一系統(tǒng)功能 在十字路口,每條道路各有一組紅、黃綠燈和倒計時顯示器,用以指揮車輛和行人有序地通行。其中,紅燈R亮,表示該條道路制止通行;黃燈Y亮,表示停車;綠燈G亮,表示可以通行。倒計時顯示器是用來顯示允許通行或制止通行的時間。
21、交通燈控制器就是用來自動控制十字路口的交通燈和計時器,指揮各種車輛和行人平安通行。根據(jù)以上所述,應(yīng)用數(shù)字電子技術(shù)的知識,設(shè)計一款交通燈模擬控制系統(tǒng)。要求該系統(tǒng)中:1有一組紅、綠、黃燈,顯示順序為其中一方向東西方向是綠燈、黃燈、紅燈;另一方向南北方向是紅燈、綠燈、黃燈。 2用一組數(shù)碼管以倒計時方式顯示允許通行或制止通行的時間,其中綠燈、黃燈、紅燈的持續(xù)時間分別是22s、2s和24s。 3當各條路上任意一條上出現(xiàn)特殊情況時,如當消防車、救護車或其他需要優(yōu)先放行的車輛通過時,各方向上均是紅燈亮,倒計時停頓,顯示數(shù)字在閃爍,且警告信號燈亮。當特殊運行狀態(tài)完畢后,控制器恢復(fù)原來狀態(tài),繼續(xù)正常運行。 4用
22、兩組數(shù)碼管實現(xiàn)雙向倒計時顯示。 5用LCD顯示器來顯示道路所在地及相關(guān)標語。6輸入輸出1輸入:時鐘輸入,一個按鍵和一個開關(guān)。輸出:8個7段譯碼顯示器仿真時可以只用4個,一個LCD顯示器,13個發(fā)光二極管。 2按鍵用來對系統(tǒng)復(fù)位,開關(guān)用來控制警告信號燈。38個7段譯碼顯示器分別用來顯示東、南、西、北四個方向的倒計時間仿真時可以只用4個兩個表示東西方向,另外兩個便是南北方向,如圖,其中12個發(fā)光二極管用來表示四個方向的紅、黃、綠燈,另一個發(fā)光二極管為警告信號燈。1、2用來顯示東西方向,3、4用來顯示南北方向。4LCD顯示器用來顯示道路所在的。二交通燈控制模擬系統(tǒng)數(shù)字電路設(shè)計任務(wù)1系統(tǒng)框圖與原理圖設(shè)
23、計2系統(tǒng)電路原理EDA設(shè)計與仿真3系統(tǒng)電路的PCB印制板設(shè)計4硬件調(diào)試三EDA仿真實驗條件要求 實驗板仿真芯片用Altera FLE*6000系列的EPF6016TC1443型可編程邏輯芯片。 大局部仿真用計算機軟件Quartus II9.0來完成,當認為運行比擬理想時,要按照后文的管腳定義,分配好管腳,編譯成可下載的文件,下載到實驗板上。要求能夠?qū)崿F(xiàn)主體功能,實驗結(jié)果存在的問題,要在報告中分析其原因。二、實際設(shè)計一系統(tǒng)框圖與原理圖設(shè)計 該系統(tǒng)的部控制主要由4個模塊構(gòu)成,分別為:計數(shù)器、控制器、分頻電路和分位譯碼電路。系統(tǒng)原理框圖如下:HodeReset計數(shù)器分頻電路Clk 1HzClk 10
24、Hz分位譯碼電路計數(shù)值控制器、倒計時數(shù)字及閃爍控制信號紅、黃、綠發(fā)光二極管七段數(shù)碼管10MHz 圖1 交通燈控制模擬系統(tǒng)框圖1分頻電路是用來將晶振頻率經(jīng)分頻后到達需要的頻率。因為實驗板上的晶振頻率是10MHZ,而計數(shù)器和分位譯碼電路需要的頻率都遠小于10MHZ,所以要對其進展分頻。2計數(shù)器的計數(shù)圍是0-49,它輸出的計數(shù)值作為控制器的輸入,控制器根據(jù)計數(shù)值作出反響。3控制器的作用是根據(jù)計數(shù)器的計數(shù)值控制發(fā)光二極管的亮、滅,以及輸出的倒計時數(shù)值給七段數(shù)碼管的分位譯碼電路。此外,當檢測到特殊情況Hode=1發(fā)生時,無條件點亮紅色的發(fā)光二極管。4因為控制器輸出的倒計時數(shù)值可能是1位或兩位十進制數(shù),所
25、以在七段數(shù)碼管的譯碼電路前要加上分位電路即將其分為2個1位的十進制數(shù),如24分為2和4,7分為0和7。圖2 交通燈控制模擬系統(tǒng)原理圖二系統(tǒng)原理EDA設(shè)計與仿真1EDA軟件和硬件件環(huán)境EDA軟件Quartus II5.0軟件環(huán)境下,硬件環(huán)境Altera FLE*6000可編程邏輯芯片EPF6016TC1443型硬件環(huán)境實驗板。實驗板的引腳定義:7段顯示碼m_seg7 引腳號 發(fā)光二極管 引腳號 名稱 引腳號A144D410D168B143D511D269C142D612D367D141D713DIP1112E137D814DIP2111F138D915DIP3110G139D1016DIP410
26、9dp140D1121按鍵S111136D1222按鍵S222135D1323按鍵S333134D1424晶振CLK84133D15255132D16VCC6131D1771注:LCD顯示器的引腳如下:數(shù)據(jù)date的引腳是從低位到高位。輸出rsrwenabledate引腳號79808182/83/84/85/86/87/88/942EDA設(shè)計仿真 圖3 交通燈控制模擬系統(tǒng)EDA頂層模塊圖1分頻模塊(clock)由輸入的時鐘得到需要的各種基準的頻率,該系統(tǒng)中需要輸出3個不同的頻率。 VHDL硬件描述語言程序如下:2計數(shù)模塊(counter)該模塊的輸入時鐘信號頻率為1Hz,需要有一個輸入復(fù)位端,
27、對系統(tǒng)進展復(fù)位,還有一個檢測特殊情況的輸入信號,外接開關(guān)。每遇到時鐘上升沿,計數(shù)值加1,計數(shù)圍為149,輸出計數(shù)值。設(shè)計流程如下VHDL硬件描述語言程序如下:編譯結(jié)果:波形仿真:編譯結(jié)果:波形仿真: 4分位模塊(feiwei)輸入:前級的輸出數(shù)值;輸出:輸入數(shù)值的每一位由4位二進制數(shù)形式表示具體見前面功能描述。設(shè)計流程如下:程序:編譯結(jié)果:波形仿真:5譯碼模塊disply輸入:時鐘信號,經(jīng)分位后的4位二進制數(shù),檢測特殊情況的輸入信號;輸出:能在數(shù)碼管上顯示的與輸入對應(yīng)的十進制數(shù)。注意:因為當遇到特殊情況時,要讓顯示數(shù)字閃爍,所以該模塊的輸入時鐘信號要適當增大頻率。 6掃描模塊(sysctrl)
28、輸入:時鐘信號,復(fù)位信號;輸出:對譯碼管的選通信號,控制顯示的狀態(tài)信號。 7顯示數(shù)字的選擇模塊(timec)輸入:經(jīng)譯碼后的允許或制止通行時間數(shù)值,復(fù)位端,狀態(tài)信號;輸出:顯示數(shù)字。 8LCD顯示器顯示模塊(clock_logic,contral,char_ram)顯示道路所在地。 其中,5,6,7,8模塊可以調(diào)通用的程序見。 三對仿真結(jié)果的分析: 1、在波形仿真中,由于分頻模塊的數(shù)太大,不能仿真,還有計數(shù)模塊會遇到*個計數(shù)值不準確,但其前后值都準確,這些問題在下載到實驗板上進展硬件仿真時,都能準確實現(xiàn)其功能。2、對于需要有時鐘輸入的模塊,要根據(jù)其要是實現(xiàn)的功能選擇不同的頻率,例如:在計數(shù)模塊
29、要計時,所以選擇1Hz的頻率;在控制模塊中,為了準確顯示要選擇大一些的頻率本系統(tǒng)中直接接的晶振頻率10MHz;有閃爍功能的如果頻率太小會出現(xiàn)不顯示的瞬間,太大又會出現(xiàn)停滯不閃爍的情況(本系統(tǒng)中選用的是50Hz,能夠到達閃爍的功能);掃描電路中如果頻率太大沒有用到的數(shù)碼管會有模糊的顯示,太小就會一個一個的顯示本系統(tǒng)中選用的是1000Hz。3、警告信號的輸入如果接按鍵會有抖動現(xiàn)象,使結(jié)果不準確,接開關(guān)就防止了這種情況。(四)設(shè)計pcb幅員由以上仿真正確結(jié)果說明該設(shè)計確實可行,所以可以自制電路印制板圖畫出專用的控制器件。器件選擇列表:可編程芯片:fle*系列的EPF 6016TC144-3程序保存模
30、塊:EPC1441PC83個SN74LS244N一個10針的接口模塊,一個電源接口一個 型號為YE-JHD161A的lcd顯示模板13個發(fā)光二極管,一個開關(guān),一個按鍵一個SN74LS19AN反相器一個HOC-503的10MHZ晶振體一個7805穩(wěn)壓管,電阻可電容假設(shè)干:圖4 交通燈控制模擬系統(tǒng)印制板圖三、調(diào)試由于Altera可編程控制器件的可編程性,所以在選器件的時候就選了altera的fle*系列的EPF6016TC144-3設(shè)計的原理還是以第二步的設(shè)計原理一樣,只不過把相關(guān)的綁定引腳改正就可以了,下表為新的幅員下的引腳分配。數(shù)據(jù)A141數(shù)據(jù)B140數(shù)據(jù)C139數(shù)據(jù)D137數(shù)據(jù)E138數(shù)據(jù)F
31、135數(shù)據(jù)G136數(shù)據(jù)DP134數(shù)碼管選擇1113數(shù)碼管選擇2112數(shù)碼管選擇3110數(shù)碼管選擇4109顯示數(shù)據(jù)1 (Lcd7)87顯示數(shù)據(jù)2(Lcd8)88顯示數(shù)據(jù)3 (Lcd9)93顯示數(shù)據(jù)4 (Lcd10)95顯示數(shù)據(jù)5 (Lcd11)96顯示數(shù)據(jù)6 (Lcd12)98顯示數(shù)據(jù)7 (Lcd13)99顯示數(shù)據(jù)8 (Lcd14)101顯示電源lcd1,2+81,82顯示電源lcd3-83顯示數(shù)據(jù)|指令lcd484顯示使能端lcd686顯示讀寫lcd585東紅,黃,綠68,69,71西紅,黃,綠23,24,25南紅,黃,綠45,46,47北紅,黃,綠122,121,119開關(guān)40晶振體輸入8按
32、鍵74m_nSTATUS56m_nCONFIG53m_DCLK128m_CONF_DONE105:1、該系統(tǒng)中用到的通用函數(shù)有些輸入輸出根據(jù)本系統(tǒng)的需要作了修改:VHDL硬件語言1譯碼函數(shù)的程序:library ieee;use ieee.std_logic_1164.all;entity display isport ( clock: in std_logic; flash: in std_logic; qin: in std_logic_vector(3 downto 0); display: out std_logic_vector(0 to 6) );end;architecture
33、fun of display issignal timeout:integer range 0 to 9;begin process(clock) begin if rising_edge(clock) then if ( flash=1 ) then timeout=0; else if (flash=0) then if ( timeout=9) then timeout=0; else timeout=timeout+1; end if; end if; end if; if (timeoutdisplaydisplaydisplaydisplaydisplaydisplaydispla
34、ydisplaydisplaydisplaydisplay=0000000; end case; else display dis6 dis6 dis6 dis6 dis6 dis6 dis6 tseltseltseltseltseltseltsel=111;end case;END IF;END PROCESS;end;3顯示數(shù)字選擇模塊:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY timec ISPORT(seca:INSTD_LOGIC_VECTOR(6 DOWNTO 0);se
35、cb:INSTD_LOGIC_VECTOR(6 DOWNTO 0);mina:INSTD_LOGIC_VECTOR(6 DOWNTO 0);minb:INSTD_LOGIC_VECTOR(6 DOWNTO 0);reset:INSTD_LOGIC;sel:INSTD_LOGIC_VECTOR(2 DOWNTO 0);q:OUTSTD_LOGIC_VECTOR(6 DOWNTO 0) );END timec;ARCHITECTURE rtl OF timec ISBEGINPROCESS(reset,sel,seca,secb,mina,minb)BEGINIF reset=0 THENqqqq
36、qqqq=0000000;END CASE;END IF;END PROCESS;END rtl;4LCD顯示屏函數(shù):aLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY clock_logic ISPORT(clock:INSTD_LOGIC;enable:OUT STD_LOGIC;out_clk:OUTSTD_LOGIC);END clock_logic;ARCHITECTURE func1 OF clock_logic ISPONENT DFF PORT (d : IN STD_LOGIC; clk : IN STD_LOGIC; q : O
37、UT STD_LOGIC );END PONENT;SIGNAL sig1,sig2,sig3: STD_LOGIC;BEGINsig1 = NOT sig2;sig3 = NOT clock;OUT_CLK sig1,clk = clock,q = sig2);mydff2: DFF port map(d = sig2,clk = sig3,q = enable);END func1;(b)library ieee;use ieee.std_logic_1164.all;package mycontrol isconstant IDLE:std_logic_vector(10 downto
38、0) := ;constant CLEAR :std_logic_vector(10 downto 0) := ;constant RETURNCURSOR:std_logic_vector(10 downto 0) := ;constant SETMODE:std_logic_vector(10 downto 0) := ;constant SWITCHMODE:std_logic_vector(10 downto 0) := ;constant SHIFT:std_logic_vector(10 downto 0) := ;constant SETFUNCTION:std_logic_ve
39、ctor(10 downto 0) := ;constant SETCGRAM:std_logic_vector(10 downto 0) := ;constant SETDDRAM:std_logic_vector(10 downto 0) := ;constant READFLAG:std_logic_vector(10 downto 0) := ;constant WRITERAM:std_logic_vector(10 downto 0) := ;constant READRAM:std_logic_vector(10 downto 0) := ;constant cur_inc:st
40、d_logic:= 1;constant cur_dec:std_logic:= 0;constant cur_shift:std_logic:= 1;constant cur_noshift:std_logic:= 0;constant open_display:std_logic:= 1;constant open_cur:std_logic:= 0;constant blank_cur:std_logic:= 0;constant shift_display:std_logic:= 1;constant shift_cur:std_logic:= 0;constant right_shi
41、ft:std_logic:= 1;constant left_shift:std_logic:= 0;constant datawidth8:std_logic:= 1;constant datawidth4:std_logic:= 0;constant twoline:std_logic:= 1;constant oneline:std_logic:= 0;constant font5*10:std_logic:= 1;constant font5*7:std_logic:= 0;end mycontrol;library ieee;use ieee.std_logic_1164.all;U
42、SE ieee.std_logic_arith.all;library work;use work.mycontrol.all;entity control isport(clock:in std_logic;reset:in std_logic;rs:outstd_logic;rw:outstd_logic;data_in:in std_logic_vector(7 downto 0);data:out std_logic_vector(7 downto 0);char_address:out std_logic_vector(5 downto 0);constant DIVSS : int
43、eger := 15;end entity;architecture fun of control issignal state :std_logic_vector(10 downto 0);signal counter: integer range 0 to 127;signal div_counter: integer range 0 to 15;signal flag:std_logic ;beginrs = 1 when state = WRITERAM or state = READRAM else0;rw =0 when state = CLEAR or state = RETUR
44、NCURSOR or state = SETMODE or state = SWITCHMODE or state = SHIFT or state = SETFUNCTION or state = SETCGRAM or state = SETDDRAM or state = WRITERAM else1;data =00000001 when state = CLEAR else00000010 when state = RETURNCURSOR else000001&cur_inc&cur_noshift when state = SETMODE else00001&open_displ
45、ay&open_cur&blank_cur when state = SWITCHMODE else0001&shift_display&left_shift&00 when state = SHIFT else001&datawidth8&twoline&font5*10&00 when state = SETFUNCTION else01000000 when state = SETCGRAM else10000000 when state = SETDDRAM and counter = 0 else11000000 when state = SETDDRAM and counter /
46、= 0 elsedata_in when state = WRITERAM elseZZZZZZZZ;char_address = conv_std_logic_vector(counter,6) WHEN (state = WRITERAM and counter 40 and counter 81-8 and counter 81) else000000;process(clock,reset)beginif reset = 0 thenstate = IDLE;counter = 0;flag = 0;div_counter if flag = 0 thenstate = SETFUNC
47、TION;flag = 1;counter = 0;div_counter = 0;elseif div_counter DIVSS thendiv_counter = div_counter + 1;state = IDLE;elsediv_counter = 0;statestate state state state state state state state state if counter = 40 thenstate = SETDDRAM;counter = counter + 1;elsif counter /= 40 and counter 81 thenstate = W
48、RITERAM;counter = counter + 1;elsestatestate state result := 16*20*;when ! =result := 16*21*;when =result := 16*22*;when * =result := 16*23*;when $ =result := 16*24*;when % =result := 16*25*;when & =result := 16*26*;when =result := 16*27*;when ( =result := 16*28*;when ) =result := 16*29*;when * =res
49、ult := 16*2a*;when + =result := 16*2b*;when , =result := 16*2c*;when - =result := 16*2d*;when . =result := 16*2e*;when / =result := 16*2f*;when 0 =result := 16*30*;when 1 =result := 16*31*;when 2 =result := 16*32*;when 3 =result := 16*33*;when 4 =result := 16*34*;when 5 =result := 16*35*;when 6 =res
50、ult := 16*36*;when 7 =result := 16*37*;when 8 =result := 16*38*;when 9 =result := 16*39*;when : =result := 16*3a*;when ; =result := 16*3b*;when result := 16*3c*;when = =result := 16*3d*;when =result := 16*3e*;when =result := 16*3f*;when =result := 16*40*;when A =result := 16*41*;when B =result := 16*42*;when C =result := 16*43*;when D =result := 16*44*;when E =result := 16*45*;when F =result := 16*46*;when G =result := 16*47*;when H =resu
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 五年級數(shù)學(xué)下冊教案《確定位置(一)》北師大版
- 《百分數(shù)-百分數(shù)的認識》教學(xué)設(shè)計-2024-2025學(xué)年六年級上冊數(shù)學(xué)北師大版
- 蘇教版三年級上冊期中考試數(shù)學(xué)試卷-(含解析)
- 2025年廣西電力職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫1套
- 2025年貴州電子信息職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫審定版
- Unit1 Making friends (教學(xué)設(shè)計)-2024-2025學(xué)年人教PEP版(2024)英語三年級上冊
- 2024年全息投影項目資金籌措計劃書代可行性研究報告
- 2025年廣西機電職業(yè)技術(shù)學(xué)院單招職業(yè)傾向性測試題庫附答案
- 2024年飼用天然有效成分制劑項目資金籌措計劃書
- 第二章 有理數(shù)及其運算單元教學(xué)設(shè)計 -2024-2025學(xué)年魯教版(五四制)數(shù)學(xué)六年級上冊
- 文獻研讀課件
- 監(jiān)理大綱工程監(jiān)理方案技術(shù)標投標方案
- 住宅小區(qū)工程施工組織設(shè)計范本
- QBT 2460-1999 聚碳酸酯(PC)飲用水罐
- GA/T 1466.3-2023智能手機型移動警務(wù)終端第3部分:檢測方法
- 【女性勞動力就業(yè)歧視問題探究11000字(論文)】
- 2024年江蘇農(nóng)牧科技職業(yè)學(xué)院單招職業(yè)適應(yīng)性測試題庫含答案
- 小學(xué)二年級語文下冊《古詩二首》課件
- 綠色供應(yīng)鏈管理培訓(xùn)
- 針刺傷的預(yù)防和處理
- 《旅游概論》課件-旅游業(yè)的發(fā)展趨勢
評論
0/150
提交評論