資源描述:
《數(shù)字秒表源程序》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、一、實驗?zāi)康模好氡淼倪壿嫿Y(jié)構(gòu)比較簡單,它主要由、顯示譯碼器、分頻器、十進制計數(shù)器、報警器和六進制計數(shù)器組成。在整個秒表中最關(guān)鍵是如何獲得一個精確的100Hz計時脈沖,除此之外,整個秒表還需要一個啟動信號和一個歸零信號,以便能夠隨吋用動及停止。秒表有六個輸出顯示,分別為冇分Z—秒,十分Z—秒、秒、十秒、分、十分,所以共有6個計數(shù)器與之對應(yīng),6個個計數(shù)器全為BCD碼輸出,這樣便于同時顯示譯碼器的連接。當計時達60分鐘后,蜂鳴器鳴響10聲。二、結(jié)構(gòu)組成:1、四個十進制計數(shù)器:用來分別対百分之一秒、十分之秒、秒和分進行計數(shù);2、兩個6進制計數(shù)器:用來分別對十秒何時分進行計數(shù);
2、3、分頻率器:用來產(chǎn)生100Hz的計數(shù)脈沖;4、顯示譯碼器:完成對顯示譯碼的控制。三、硬件要求:1、主芯片EP1K100QC208—3;2、6位八段掃描共陰極數(shù)碼顯示管;3、二個按鍵開關(guān)(歸零,啟動)。四、實驗內(nèi)容及步驟:1、根據(jù)電路特點,將此設(shè)計電路分成若干模塊,規(guī)定每個模塊的功能和各個模塊Z間的接口,然后再將各個模塊和起來聯(lián)試。2、了解軟件各元件管理層次含義,以及模塊元件Z間的連接概念,對不同目錄下的統(tǒng)一設(shè)計如何融合。3、適配劃分前后的仿莫內(nèi)容冇何不同概念,仿其信號對象冇何不同。4、安適配劃分的管腳定位,同相關(guān)功能塊元件之間的連接概念。5、所有模塊用VHDL語言描
3、述。五、實驗源代碼如下:1.分頻器代碼:將2.5MHz脈沖變成100Hzlibraryieee;useieee.std_logic_1164.all;entitydivisport(clr,clk:inbit;q:bufferbit);enddiv;architectureaofdivissignalcounter:integerrange0to12499;beginprocess(clr,clk)beginif(clk=Tandclk'event)thenifclr='1'thencounter<=0;elsifcounter=12499thencounter<=0
4、;q<=notq;elsecounter<=counter+1;endif;endif;endprocess;enda;1.十進制計數(shù)器代碼:原理為加法計數(shù)器,計數(shù)十時由cout進位libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitycountIOisport(clr,start,elk:inbit;cout:outbit;daout:outstd_logic_vector(3downto0));endcountIO;architectureaofcountIOissi
5、gnaltemp:stdjogic_vector(3downto0);beginprocess(clk,clr)beginifclr='1'thentemp<=M0000H;cout<=,0,;elsif(clkeventandelk二T)thenifstart='1'theniftemp>="1001"thentemp<=,,0000H;cout<='1';elsetemp<=temp+1;coutv=0;endif;endif;endif;daout<=temp;endprocess;enda;3?六進制計數(shù)器代碼:原理為加法計數(shù)器,計數(shù)六時由cout進位。lib
6、raryieee;useieee.std」ogic_1164.all;useieee.stdJogic^unsigned.all;entityc6isport(clr,start,elk:inbit;daout:outstd」ogic_vector(3downto0);cout:outstdjogic);endc6;architectureaofc6issignaltemp:std_logic_vector(3downto0);beginprocess(clk,clr)beginifclr=Tthentempv=”0000";COUtv";elsif(clk'even
7、tandclk='1')thenifstart='1,theniftemp>="0101°thentempv=”0000";coutv=T;elsetemp<=temp+1;coutv='0:endif;endif;endif;endprocess;daout<=temp;enda;4.報警器代碼:當記吋到一小吋吋,報警器報警,并響十聲。libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityalarm1isport(clk,l:instdjogic;q: