版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 題目:數(shù)字鐘設(shè)計(jì)</b></p><p><b> 一、實(shí)驗(yàn)?zāi)康?lt;/b></p><p> 學(xué)習(xí)并掌握數(shù)字鐘的原理、設(shè)計(jì)方法。</p><p><b> 二、實(shí)驗(yàn)內(nèi)容</b></p><p> 計(jì)數(shù)時(shí)鐘由模60秒計(jì)數(shù)器、模60分計(jì)數(shù)器、模2
2、4小時(shí)計(jì)數(shù)器、報(bào)時(shí)模塊、分、時(shí)校定模塊及輸出顯示模塊構(gòu)成??梢圆捎猛接?jì)數(shù)器或異步計(jì)數(shù)器設(shè)計(jì)方法。</p><p><b> 三、實(shí)驗(yàn)要求</b></p><p> 1. 計(jì)時(shí)范圍為0小時(shí)0分0秒至23小時(shí)59分59秒</p><p> 2. 采用6個(gè)8段數(shù)碼管分別顯示小時(shí)十位,小時(shí)個(gè)位、分鐘十位、分鐘個(gè)位、秒十位、秒個(gè)位。</p&
3、gt;<p> 3. 整點(diǎn)報(bào)時(shí),蜂鳴器響5聲,每秒1聲。</p><p> 4. 校時(shí)功能,能夠單獨(dú)校分、校時(shí)。用按鍵控制。</p><p> 5. 具有清零、啟動/停止計(jì)數(shù)的功能。用按鍵控制。</p><p><b> 四、實(shí)驗(yàn)原理</b></p><p> 數(shù)字鐘的基本原理是采用時(shí)鐘源提供的頻
4、率作為秒模塊的時(shí)鐘進(jìn)行計(jì)數(shù),當(dāng)秒模塊計(jì)數(shù)達(dá)到59秒時(shí)為分模塊提供時(shí)鐘,該時(shí)鐘通過狀態(tài)選擇模塊送到分模塊,同理,分模塊向小時(shí)模塊提供時(shí)鐘時(shí)也是如此。整點(diǎn)報(bào)時(shí)模塊是利用分鐘向小時(shí)的進(jìn)位時(shí)鐘脈沖作為觸發(fā)源,利用秒的個(gè)位計(jì)時(shí)以及實(shí)驗(yàn)板提供的時(shí)鐘源頻率達(dá)到報(bào)時(shí)五秒的目的。譯碼顯示模塊則通過8421BCD碼與數(shù)碼管各段的關(guān)系進(jìn)行轉(zhuǎn)化,由于實(shí)驗(yàn)板不支持動態(tài)掃描所以需在秒,分,時(shí)的個(gè)位與十位都添加譯碼顯示模塊。</p><p>
5、<b> 原理框圖如下:</b></p><p><b> 五、模塊設(shè)計(jì)</b></p><p><b> 秒計(jì)數(shù)模塊</b></p><p> library ieee;</p><p> use ieee.std_logic_1164.all;</p>
6、<p> use ieee.std_logic_unsigned.all;</p><p> entity second is</p><p> port(clk,rst:in std_logic;</p><p> enmin:out std_logic;</p><p> shiwei:out std_logic_
7、vector(3 downto 0);</p><p> gewei:out std_logic_vector(3 downto 0));</p><p> end entity second;</p><p> architecture rtl of second is</p><p> signal a,b:std_logic_
8、vector(3 downto 0);</p><p> signal c:std_logic_vector(7 downto 0);</p><p><b> begin</b></p><p> c<=b&a; </p><p> process(clk,rst,c)</p&
9、gt;<p><b> begin</b></p><p> if(rst='1')then</p><p> a<="0000";</p><p> b<="0000";</p><p> enmin<='0
10、9;;</p><p> elsif(clk'event and clk='1')then</p><p><b> a<=a+1;</b></p><p> if(a="1001")then</p><p> a<="0000";<
11、;/p><p><b> b<=b+1;</b></p><p> if(b="0101")then</p><p> b<="0000";</p><p><b> end if;</b></p><p><b&
12、gt; end if;</b></p><p><b> end if;</b></p><p><b> case c is</b></p><p> when "01011001"=>enmin<='1';</p><p>
13、when others=>enmin<=null;</p><p> end case; </p><p> end process;</p><p><b> gewei<=a;</b></p><p> shiwei<=b;</p><p> end arc
14、hitecture rtl;</p><p><b> 其模塊仿真圖為:</b></p><p><b> 分計(jì)數(shù)模塊</b></p><p> library ieee;</p><p> use ieee.std_logic_1164.all;</p><p>
15、 use ieee.std_logic_unsigned.all;</p><p> entity minute is</p><p> port(clk,rst:in std_logic;</p><p> enhour:out std_logic;</p><p> mshiwei:out std_logic_vector(3 d
16、ownto 0);</p><p> mgewei:out std_logic_vector(3 downto 0));</p><p> end entity minute;</p><p> architecture rtl of minute is</p><p> signal m,n:std_logic_vector(3 d
17、ownto 0);</p><p> signal c:std_logic_vector(7 downto 0);</p><p><b> begin</b></p><p> c<=n&m; </p><p> process(clk,rst,c)</p><p>
18、<b> begin</b></p><p> if(rst='1')then</p><p> m<="0000";</p><p> n<="0000";</p><p> enhour<='0';</p>
19、<p> elsif(clk'event and clk='1')then</p><p><b> m<=m+1;</b></p><p> if(m="1001")then</p><p> m<="0000";</p><
20、p><b> n<=n+1;</b></p><p><b> end if;</b></p><p><b> end if;</b></p><p> if(c="01011001")then </p><p> n<=&qu
21、ot;0000";</p><p> m<="0000";</p><p><b> end if;</b></p><p><b> case c is</b></p><p> when "01011001"=>enhour&
22、lt;='1';</p><p> when others=>enhour<=null;</p><p> end case; </p><p> end process; </p><p> mgewei<=m;</p><p> msh
23、iwei<=n;</p><p> end architecture rtl;</p><p><b> 其模塊仿真圖為:</b></p><p><b> 時(shí)計(jì)數(shù)模塊</b></p><p> library ieee;</p><p> use ieee.
24、std_logic_1164.all;</p><p> use ieee.std_logic_unsigned.all;</p><p> entity hour is</p><p> port(clk,rst:in std_logic;</p><p> hshiwei:out std_logic_vector(3 downto
25、 0);</p><p> hgewei:out std_logic_vector(3 downto 0));</p><p> end entity hour;</p><p> architecture rtl of hour is</p><p> signal p,q:std_logic_vector(3 downto 0)
26、;</p><p><b> begin</b></p><p> process(clk,rst)</p><p><b> begin</b></p><p> if(rst='1')then</p><p> p<="0000&
27、quot;;</p><p> q<="0000";</p><p> elsif(clk'event and clk='1')then</p><p><b> p<=p+1;</b></p><p> if(p="1001")then
28、</p><p> p<="0000";</p><p><b> q<=q+1; </b></p><p><b> end if;</b></p><p><b> end if;</b></p><p>
29、if(q="0010" and p="0100")then</p><p> p<="0000";</p><p> q<="0000"; </p><p><b> end if;</b></p><p>
30、 end process;</p><p> hgewei<=p;</p><p> hshiwei<=q;</p><p> end architecture rtl; </p><p><b> 其模塊仿真圖為:</b></p><p><b> 狀態(tài)選擇模塊
31、</b></p><p> library ieee;</p><p> use ieee.std_logic_1164.all;</p><p> use ieee.std_logic_unsigned.all;</p><p> entity set is</p><p> port(sel:
32、in std_logic;</p><p> clk:in std_logic;</p><p> key:in std_logic;</p><p> y:out std_logic);</p><p> end entity set;</p><p> architecture rtl of set is
33、</p><p> signal a:std_logic;</p><p><b> begin</b></p><p> process(sel)is</p><p><b> begin</b></p><p> case sel is</p>&
34、lt;p> when '0'=>a<=clk;</p><p> when '1'=>a<=key;</p><p> when others=>a<=clk;</p><p><b> end case;</b></p><p><
35、b> y<=a;</b></p><p> end process;</p><p> end architecture rtl;</p><p><b> 其模塊仿真圖為:</b></p><p><b> 整點(diǎn)報(bào)時(shí)模塊</b></p><p&
36、gt; library ieee;</p><p> use ieee.std_logic_1164.all;</p><p> use ieee.std_logic_unsigned.all;</p><p> entity alert is</p><p> port(clk:in std_logic;</p>&
37、lt;p> d:in std_logic_vector(3 downto 0);</p><p> en:in std_logic;</p><p> alarm:out std_logic);</p><p> end entity alert;</p><p> architecture rtl of alert is&l
38、t;/p><p> signal enalarm:std_logic;</p><p><b> begin</b></p><p> alarm<=enalarm;</p><p> process(clk,en,d)</p><p><b> begin</b>
39、;</p><p> if(en='1')then</p><p> enalarm<=clk;</p><p><b> end if;</b></p><p> if(d="0101")then</p><p> enalarm<=
40、39;0'; </p><p><b> end if;</b></p><p> end process;</p><p> end architecture rtl;</p><p><b> 其模塊仿真圖為:</b></p><p><b>
41、 譯碼顯示模塊</b></p><p> library ieee;</p><p> use ieee.std_logic_1164.all;</p><p> use ieee.std_logic_unsigned.all;</p><p> entity deled is</p><p>
42、port(num: in std_logic_vector(3 downto 0);</p><p> led:out std_logic_vector(6 downto 0));</p><p> end entity deled;</p><p> architecture rtl of deled is</p><p><b
43、> begin</b></p><p> led<="1111110"when num="0000"else</p><p> "0110000"when num="0001"else </p><p> "1101101"when n
44、um="0010"else</p><p> "1111001"when num="0011"else</p><p> "0110011"when num="0100"else</p><p> "1011011"when num=&quo
45、t;0101"else</p><p> "1011111"when num="0110"else</p><p> "1110000"when num="0111"else</p><p> "1111111"when num="1000&
46、quot;else</p><p> "1111011"when num="1001"else</p><p> "1110111"when num="1010"else</p><p> "0011111"when num="1011"el
47、se</p><p> "1001110"when num="1100"else</p><p> "0111101"when num="1101"else</p><p> "1001111"when num="1110"else</
48、p><p> "1000111"when num="1111";</p><p> end architecture rtl;</p><p><b> 其模塊仿真圖為:</b></p><p><b> 總仿真圖為:</b></p><
49、;p><b> 六、總結(jié)</b></p><p> 這次數(shù)字鐘的設(shè)計(jì)綜合運(yùn)用了VHDL語言,提高與加強(qiáng)了自己的VHDL語言的運(yùn)用能力,加強(qiáng)了對語法,詞法,結(jié)構(gòu)的理解,以及對硬件結(jié)構(gòu)的理解。同時(shí),認(rèn)識到課程設(shè)計(jì)是一個(gè)細(xì)致,需要耐心的過程,如果考慮不夠可能導(dǎo)致能個(gè)結(jié)構(gòu)錯(cuò)誤,所以設(shè)計(jì)前需要認(rèn)真的思考結(jié)構(gòu),語句是否有錯(cuò)誤,及時(shí)改正才能提高效率,所以嚴(yán)謹(jǐn)?shù)膽B(tài)度與扎實(shí)的知識是設(shè)計(jì)成功的關(guān)鍵。&
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)課程設(shè)計(jì)--數(shù)字鐘電子鐘
- 電子鐘課程設(shè)計(jì)----數(shù)字電子鐘的設(shè)計(jì)
- 數(shù)字電子鐘課程設(shè)計(jì)報(bào)告
- 數(shù)字電子鐘課程設(shè)計(jì)報(bào)告
- 數(shù)字電子鐘課程設(shè)計(jì)報(bào)告
- 數(shù)字電子鐘課程設(shè)計(jì)報(bào)告
- 數(shù)字電子鐘設(shè)計(jì)課程設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)---數(shù)字電子鐘設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)--數(shù)字電子鐘設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)---數(shù)字電子鐘設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)----數(shù)字電子鐘設(shè)計(jì)報(bào)告
- 數(shù)字電子鐘課程設(shè)計(jì)
- 數(shù)字電子鐘課程設(shè)計(jì)
- 課程設(shè)計(jì)---數(shù)字電子鐘
- 數(shù)字電子鐘課程設(shè)計(jì)
- 數(shù)字電子課程設(shè)計(jì)---數(shù)字鐘
- 數(shù)字電子鐘課程設(shè)計(jì)
- 數(shù)字電子鐘課程設(shè)計(jì)
- eda課程設(shè)計(jì)報(bào)告---數(shù)字電子鐘
- 單片機(jī)電子鐘課程設(shè)計(jì)---數(shù)字電子鐘
評論
0/150
提交評論