版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 數(shù)字邏輯</b></p><p><b> 課程設(shè)計報告</b></p><p> 課程名稱: EDA</p><p><b> 設(shè)計題目:數(shù)字時鐘</b></p><p><b> 專業(yè):通信工程</b><
2、/p><p> 班級: 姓名: 學(xué)號:</p><p><b> 一、設(shè)計目的</b></p><p> 1、熟練地運(yùn)用數(shù)字系統(tǒng)的設(shè)計方法進(jìn)行數(shù)字系統(tǒng)設(shè)計;</p><p> 2、能進(jìn)行較復(fù)雜的數(shù)字系統(tǒng)設(shè)計;</p><p> 3、按要求設(shè)計一個復(fù)雜的組合邏輯電路
3、;</p><p><b> 二、設(shè)計內(nèi)容</b></p><p> 1、要求顯示秒、分、時,顯示格式如下:</p><p><b> 圖2.1 顯示格式</b></p><p> 2、可調(diào)時,有鬧鐘。</p><p><b> 三、設(shè)計原理</b&
4、gt;</p><p> 數(shù)字鐘的基本工作原理:</p><p> 數(shù)字鐘以其顯示時間的直觀性、走時準(zhǔn)確性作為一種計時工</p><p> 具,數(shù)字鐘的基本組成部分離不開計數(shù)器,在控制邏輯電路</p><p> 的控制下完成預(yù)定的各項功能。數(shù)字鐘的基本原理方框圖如</p><p><b> 下:&l
5、t;/b></p><p><b> 數(shù)字原理框圖</b></p><p> 1)時鐘計數(shù):完成時、分、秒的正確計時并且顯示所計的數(shù)字;對秒、分</p><p> ——60進(jìn)制計數(shù),即從0到59循環(huán)計數(shù),時鐘——24進(jìn)制計數(shù),即從0到23循環(huán)計數(shù),并且在數(shù)碼管上顯示數(shù)值。</p><p> 2)時間設(shè)置:手
6、動調(diào)節(jié)分鐘、小時,可以對所設(shè)計的時鐘任意調(diào)時間,這樣使數(shù)字鐘真正具有使用功能。我們可以通過實驗板上的key0鍵和key1鍵進(jìn)行任意的調(diào)整,因為我們用的時鐘信號均是經(jīng)分頻器后變成1HZ的,所以每LED燈變化一次就來一個脈沖,即計數(shù)一次。</p><p> 3)md1為使能端,低電平時正常顯示時間,高電平時設(shè)置鬧鐘。可以根據(jù)我們自己的需要任意設(shè)置鬧鐘的時間,并且鬧鐘可持續(xù)一分鐘。</p><p&
7、gt; 根據(jù)總體方框圖及各部分分配的功能可知,本系統(tǒng)可以由秒計數(shù)器、分鐘計數(shù)器、小時計數(shù)器、鬧鐘、分的調(diào)整以及小時的調(diào)整和一個頂層文件構(gòu)成。采用自頂向下的設(shè)計方法,子模塊利用VHDL語言設(shè)計,頂層文件用原理圖的設(shè)計方法。顯示:小時采用24進(jìn)制,而分鐘均是采用6進(jìn)制和10進(jìn)制的組合。</p><p><b> 四:實驗儀器</b></p><p><b>
8、 計算機(jī)一臺</b></p><p><b> 五:設(shè)計步驟</b></p><p> 1:建立文件夾,用于存放實驗內(nèi)容。</p><p> 2:建立原理圖文件。原理圖如下:</p><p> 3:建立波形文件,輸入變量,進(jìn)行仿真,仿真結(jié)果</p><p><b>
9、 4 顯示程序</b></p><p> library IEEE;</p><p> use IEEE.STD_LOGIC_1164.ALL;</p><p> use IEEE.STD_LOGIC_ARITH.ALL;</p><p> use IEEE.STD_LOGIC_UNSIGNED.ALL;</p&g
10、t;<p> entity XIANSHIDZB is</p><p> Port ( Clk : in std_logic; --狀態(tài)機(jī)時鐘信號,同時也是液晶時鐘信號</p><p> R0,R1,R2: in std_logic_vector(7 downto 0); </p><p> rs: buffer
11、 std_logic; </p><p> rw : out std_logic; --液晶讀寫信號</p><p> en : out std_logic; --液晶使能信號</p><p> Clk_Out : buffer std_logic; --除輸出的秒脈沖</p><p> d : buffer std_lo
12、gic_vector(7 downto 0) ); --LCD的數(shù)據(jù)線</p><p> end XIANSHIDZB;</p><p> architecture Behavioral of XIANSHIDZB is</p><p> type xianshi is array(0 to 31) of std_logic_vector(7 downto 0
13、);--顯示緩沖</p><p> signal qx : xianshi :=((others => "00100000"));</p><p> type state is (clear,ids,dlnf,dcb,ddram1,outdata1,ddram2,outdata2);--ddram2,</p><p> sign
14、al Count : std_logic_vector(15 downto 0);</p><p> signal LCLK_OUT : std_logic;</p><p> signal Counts : integer range 0 to 3000000:=0;--;std_logic_vector(22 downto 0);</p><p>
15、 signal Current_State: state;</p><p> signal tempa : std_logic_vector(4 downto 0):="00000";</p><p><b> begin</b></p><p> process(Clk_Out,clk)----秒脈沖</p&
16、gt;<p><b> begin</b></p><p> if(rising_edge(clk))then</p><p> Counts <= Counts + 1;</p><p> if(Counts=3000000)then --10000000是1秒</p><p> Clk_
17、Out <= not Clk_Out; </p><p><b> end if;</b></p><p><b> end if;</b></p><p> end process;</p><p> qx(2)<= "0011" & R0(7 D
18、OWNTO 4);</p><p> qx(3)<= "0011" & R0(3 DOWNTO 0);</p><p> qx(5)<= "00111010";--:</p><p> qx(7)<= "0011" & R1(7 DOWNTO 4);</p&g
19、t;<p> qx(8)<= "0011" & R1(3 DOWNTO 0);</p><p> qx(10)<= "00111010";--:</p><p> qx(12)<= "0011" & R2(7 DOWNTO 4);</p><p>
20、 qx(13)<= "0011" & R2(3 DOWNTO 0);</p><p> process(Clk,LClk_Out) --LCD用脈沖--LClk_Out,6ms</p><p><b> begin</b></p><p> if(rising_edge(clk))then</p
21、><p> Count <= Count + 1;</p><p> if(Count =0)then</p><p> LClk_Out <= not LClk_Out; end if; end if;</p><p> end process;</p><p> en <
22、;= LClk_Out;</p><p> process(LClk_Out ,Current_State) --液晶驅(qū)動控制器</p><p><b> begin</b></p><p> if rising_edge(LClk_Out )then</p><p> rs <= '0
23、9;;--寫指令</p><p> rw <= '0' ; </p><p> case Current_State is</p><p> when clear=> </p><p> d<="00000001";--01H,清屏 </p>&l
24、t;p> Current_State<=dlnf;</p><p> when dlnf=> </p><p> d<="00111000";--38H--5*7</p><p> Current_State<=ids;</p><p> when id
25、s=></p><p> d<="00000110";--06H: l to r</p><p> Current_State<=dcb;</p><p> when dcb=></p><p> d<="00001100";--0cH</p><
26、;p> Current_State<=ddram1;--準(zhǔn)備寫入地址</p><p> when ddram1=> --顯示第一行</p><p> d<="10000000"+tempa(3 downto 0);</p><p> Current_State<=outdata1;--ddram2;<
27、/p><p> when outdata1=> </p><p><b> rs<='1';</b></p><p> d<=qx(conv_integer(tempa));</p><p> tempa<=tempa+1;</p><p> if
28、tempa="10000" then </p><p> Current_State<=ddram2;</p><p><b> else </b></p><p> Current_State<=ddram1;</p><p><b> end if;</b>
29、;</p><p> when ddram2=> --顯示第2行</p><p> d<="11000000"+tempa(3 downto 0);</p><p> Current_State<=outdata2;</p><p> when outdata2=> RS<
30、='1';</p><p> d<=qx(conv_integer(tempa)); </p><p> tempa<=tempa+1;</p><p> if tempa="00000" then</p><p> Current_State<=ddram1;else <
31、;/p><p> Current_State<=ddram2; end if;</p><p> when others => null;</p><p><b> end case;</b></p><p><b> end if;</b></p><p
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)字時鐘(數(shù)字邏輯)課程設(shè)計報告
- 數(shù)字時鐘(數(shù)字邏輯)課程設(shè)計報告
- 江蘇大學(xué)數(shù)字邏輯課程設(shè)計數(shù)字時鐘
- 數(shù)字電子課程設(shè)計--數(shù)字時鐘
- 數(shù)字時鐘課程設(shè)計
- 數(shù)字時鐘課程設(shè)計
- 課程設(shè)計--數(shù)字時鐘
- 數(shù)字時鐘課程設(shè)計
- 數(shù)字時鐘課程設(shè)計
- 數(shù)字時鐘課程設(shè)計
- 數(shù)字時鐘課程設(shè)計
- 數(shù)字時鐘課程設(shè)計--數(shù)字時鐘的設(shè)計與制作
- eda數(shù)字時鐘課程設(shè)計
- eda數(shù)字時鐘課程設(shè)計
- 數(shù)字時鐘課程設(shè)計報告
- 數(shù)字時鐘課程設(shè)計論文
- 數(shù)字時鐘課程設(shè)計報告
- 數(shù)字時鐘課程設(shè)計報告
- 數(shù)字時鐘課程設(shè)計3
- 數(shù)字時鐘課程設(shè)計報告
評論
0/150
提交評論