花樣報時數(shù)字鐘_第1頁
花樣報時數(shù)字鐘_第2頁
花樣報時數(shù)字鐘_第3頁
花樣報時數(shù)字鐘_第4頁
花樣報時數(shù)字鐘_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、贛南師院物理與電子信息學(xué)院課程設(shè)計報告書姓名:熊可捷 班級:電子科學(xué)與技術(shù)06級 學(xué)號:060803044 時間:2008年12月25日 論文題目花樣報時數(shù)字鐘課程論文要 求設(shè)計一數(shù)字鐘,實現(xiàn)以下功能:1具有時、分、秒計數(shù)顯示功能,以24小時循環(huán)計時;2具有校時功能,可以分別對時及分進行單獨校時,使其校正到標(biāo)準(zhǔn)時間,并能對計時清零;3具有仿廣播電臺整點報時的功能,整點報時的同時LED燈花樣顯示。一、 系統(tǒng)方案選擇和論證1、數(shù)字鐘系統(tǒng)方案選擇和論證本設(shè)計的總體組成框圖如圖1所示:數(shù)字鐘電路系統(tǒng)由主體電路和拓展電路兩大部分組成。其中,主體電路完成數(shù)字鐘的基本功能,拓展電路完成電路的拓展功能。該系統(tǒng)

2、的工作原理是:震蕩器產(chǎn)生的穩(wěn)定高頻脈沖信號,完成數(shù)字鐘的時間基準(zhǔn),再經(jīng)分頻器輸出標(biāo)準(zhǔn)秒脈沖。秒計數(shù)器計滿60后向分計數(shù)器進位,分計數(shù)器計滿60后向小時計數(shù)進位,小時計數(shù)器按“12翻1”規(guī)律計數(shù)。計數(shù)器的輸出經(jīng)譯碼器送顯示器。計時出現(xiàn)誤差時可以用校時電路進行校時、校分、校秒。拓展電路必須在主體電路正常運行的情況下才能進行功能拓展。采用譯碼器接到分計數(shù)器和秒計數(shù)器相應(yīng)的輸出端,使計數(shù)器運行到差十秒整點報時,利用分頻器輸出的500HZ和1000HZ的信號加到音響電路中,用于模仿電臺報時:每當(dāng)數(shù)字鐘計時快要正點時發(fā)出聲響,按照4低音一高音的順序發(fā)出間斷聲響,以最后一聲高音的時刻為正點時刻。LED燈也依

3、次輪流顯示。在EDA實驗室可以直接通過實驗箱上的頻率脈沖給該電路圖添加所需要的頻率,而不需要我們自己設(shè)計。下面通過硬件中數(shù)字鐘所需要的頻率來設(shè)計電路。實驗中需要的是1HZ的脈沖,通過該脈沖使數(shù)字鐘達到秒信號所需要的頻率設(shè)計過程振蕩器分頻器校時電路時計數(shù)器分計數(shù)器秒計數(shù)器LED燈花樣顯示掃描選位信號譯碼驅(qū)動電路時鐘顯示整點報時圖1多功能數(shù)字鐘系統(tǒng)組成框圖1.1振蕩器設(shè)計方案振蕩器是數(shù)字鐘的核心。振蕩器的穩(wěn)定度及頻率的精確度決定了數(shù)字鐘計時的準(zhǔn)確程度,一般來說,振蕩器的頻率越高,計時精度越高方案一:采用由555集成電路與RC組成多諧振蕩器,以產(chǎn)生符合要求的振蕩脈沖。方案二:采用由石英晶體與邏輯門及

4、RC組成的多諧振蕩電路,以產(chǎn)生符合要求的振蕩脈沖。方案二采用石英晶體振蕩器產(chǎn)生的脈沖頻率穩(wěn)定度高且精度很高,適宜于作為要求高精度的時鐘基準(zhǔn)脈沖,作為振蕩器電路。方案一產(chǎn)生的脈沖頻率穩(wěn)定度相對不高,但在要求不是很高的情況,可以采用方案一??紤]到市場方面的原因,石英晶體震蕩不宜采用,這里我們采用方案一。原理圖如圖2圖2 振蕩器原理圖這里選用由555構(gòu)成反對多諧震蕩器,震蕩頻率為fo=1KHZ由f=;假定C1=0.1uf,得到R1=2K;R2=5.1K;為了能使得到的頻率更精確,再加一個阻值為10K的可調(diào)電阻。1.2分頻器的設(shè)計方案分頻器的主要功能有兩個:一是產(chǎn)生標(biāo)準(zhǔn)秒脈沖信號,二是提供擴展電路所需

5、信號,仿廣播電臺報時用的1KHz的高音頻信號和500Hz的低音頻信號等。選用3片中規(guī)模集成電路,計數(shù)器74LS90可以完成上述功能。因每片為1/10分頻,3片級聯(lián)則可獲得所需要的頻率信號,即第一片的Q0輸出頻率為500Hz,第二片的Q3端輸出為10Hz,第三片的Q3端輸出為1Hz。74LS90是二五十進制計數(shù)器,它有兩個時鐘輸入端CP0和CP1。其中CP0和Q0組成一位二進制計數(shù)器,CP1和Q3 Q2 Q1組成五進制計數(shù)器。若將Q0和CP1相連接,時鐘脈沖從CP0輸入,則構(gòu)成十進制計數(shù)器,74LS90有兩個清零端Ro(1),Ro(2)和兩個置9端R9(1),R9(2),它的功能表和管腳示意圖如

6、表1所示。Ro(1)Ro(2)R9(1)R9(2)Q3Q2Q1Q0110*000011*00000*111001*0*0計數(shù)0*0*0*0*00*表1 74LS90功能表原理圖如圖3所示,仿真波形如圖4所示 圖3分頻器原理圖仿真圖如圖4:圖4分頻器仿真圖1.3校時電路的設(shè)計方案當(dāng)數(shù)字鐘接通電源或者計時出現(xiàn)誤差時,需要校正時間。校時是數(shù)字鐘應(yīng)具備的基本功能。這里只進行分和小時校時。對校時電路的要求是,在小時校正時不影響分和秒的正常計數(shù);在分校正時不影響秒和小時的正常計數(shù)。通過門電路實現(xiàn)對進位和校時信號的選擇,用RS觸發(fā)器做開關(guān),可以通過控制RS觸發(fā)器開關(guān)來選擇是正常計時模式或是校時模式。校時電路

7、是由門電路構(gòu)成的組合邏輯電路,可以完全使校時電路能穩(wěn)定地工作。圖4所示?!皶r”、?!胺帧彪娐贰F渲蠸1為?!皶r”用的控制開關(guān),S2為?!胺帧庇玫目刂崎_,他們的控制功能表如表2.3.1所示。校時脈沖采用采用分頻器輸出的1Hz脈沖。校時電路原理圖如圖5所示,仿真圖如圖6所示。S1R1S2R2功能0×0×計數(shù)0×10校分100×校時表2圖5校時電路原理圖圖6校時電路仿真圖1.4時分秒計數(shù)器的設(shè)計方案由于考慮到采用各種計數(shù)器集成塊組成時序邏輯電路,雖然原理簡單,但連線繁多,占用芯片非常多的I/O口,電路穩(wěn)定性較差,而采用AHDL語言構(gòu)建的模塊穩(wěn)定性好,而且連線少

8、,節(jié)省了芯片的I/O口,因此采用VHDL語言構(gòu)建模塊的方法。小時計數(shù)原理圖如圖7所示,仿真圖如圖8所示圖7小時計數(shù)器原理圖圖8小時計數(shù)器仿真圖分計數(shù)原理圖如圖9所示,仿真圖如圖10所示圖9分計數(shù)器原理圖圖10分計數(shù)器仿真圖秒計數(shù)原理圖如圖11所示,仿真圖如圖12所示圖11秒計數(shù)器原理圖圖12秒計器數(shù)仿真圖1.5掃描顯示模塊的設(shè)計方案在這里我們采用動態(tài)掃描顯示方法。通過信號選通器選通計數(shù)器的某一位經(jīng)譯碼器到相應(yīng)的那個數(shù)碼管顯示出來,其他各位不顯示,在下一選通脈沖到來時選擇下一位到數(shù)碼管顯示,如此循環(huán)。當(dāng)這個選通脈沖頻率足夠大時人眼就感覺不出六個數(shù)碼管的交替亮滅,從而實現(xiàn)六位數(shù)的顯示。我們選用的七

9、段譯碼驅(qū)動器(74LS48)和數(shù)碼管(LED)是共陰極接法(需要輸出高電平有效的譯碼器驅(qū)動)。譯碼顯示電路如圖13所示。·· 圖13譯碼顯示電路掃描信號電路原理圖如圖14,仿真圖如圖15圖14掃描信號電路原理圖圖15掃描信號電路仿真圖譯碼驅(qū)動電路原理圖如圖16,仿真圖如圖17圖16譯碼驅(qū)動電路原理圖圖17譯碼驅(qū)動電路仿真圖整點報時及LED燈花樣顯示模塊原理圖如圖18,仿真圖如圖19所示。 圖18整點報時及LED燈花樣顯示電路原理圖圖19整點報時及LED燈花樣顯示電路仿真圖1.6總原理圖各模塊設(shè)計確定后,得數(shù)字鐘總原理圖如圖20圖20數(shù)字鐘總原理圖數(shù)字鐘總原理仿真圖如圖21圖

10、21數(shù)字鐘總原理仿真圖二、系統(tǒng)安裝與調(diào)試2.1輸入與輸出端接口(1)SETMIN,SETHOUR、RESET分別接按鍵開關(guān);(2)A、B、C、D、E、F、G分別與數(shù)碼管的a,b,c,d,e,f,g輸入端相連;(3)LAMP0,LAMP1,LAMP2分別和LED相接;(4)時鐘信號CLK接1HZ,掃描信號CLKDSP接32HZ以上頻率信號(含32HZ);(5)掃描片地址信號SEL0,SEL1,SEL2分別和字符點陣顯示模塊的四位掃描驅(qū)動地址SEL0SEL3的低三位相連,最高位地址接“0”,也可以懸空;(6)接口SPEAKER同實驗箱的SPEAKER相接;2.2性能測試與分析電路編譯完成后下載到A

11、ltera公司的EPM7128SLC84-15芯片中.數(shù)碼顯示管顯示正常,說明掃描顯示模塊正確。數(shù)碼管顯示數(shù)字從000000開始,秒、分、時顯示正確,在輸入為1Hz的時鐘脈沖下經(jīng)與標(biāo)準(zhǔn)表對照,秒計時的周期為1秒鐘。為了在短時間內(nèi)測試秒、分、時進位是否正確,加大輸入脈沖頻率。顯示管顯示秒、分、時進位正確。數(shù)字從000000一直進位到235959后回到0000000,在每小時的59分的51、53、55、57、秒蜂鳴器鳴低音,59秒鳴高音,同時LED燈循環(huán)顯示,完全符合設(shè)計要求中的“仿廣播電臺整點報時”這一要求。按動SETMIN,SETHOUR分別實現(xiàn)對分和時的調(diào)整,手動校時功能正確,兩者不相影響。

12、按下RESET鍵,時間回歸到000000,說明計時清零功能正常。整個性能測試結(jié)束,各項要求都已達到。這次課程設(shè)計取得圓滿成功。電路調(diào)試:在計算機上編譯好電路圖后,通過與EDA實驗箱上的芯片來實現(xiàn)功能。1、 首先在計算機上進行仿真,看是否能實現(xiàn)功能。2、 通過軟件上編譯出來的圖,再在硬件上進行實現(xiàn)。本試驗中將CLK接在硬件實驗箱上的頻率脈沖1KHZ上,RESET,SETMIN、SETHOUR接在按鍵開關(guān)上,其中,RESET是為了清零,使數(shù)字鐘可以回到00 00 00的狀態(tài)。而SETMIN是給分校時,每按一下鍵增加一分鐘,SETHOUR是給時校時,每按一下鍵就增加一小時。CLKDSP是給秒提供頻率

13、的脈沖。接在硬件的頻率脈沖那,給它固定1HZ的脈沖。SPEAKER接在硬件的揚聲器接口,LAMP2.0接在硬件實驗箱上的3個LED指示燈上,SEL2.0接在實驗箱上的SEL0、SEL1、SEL2三個接口上。而LED6.0接在數(shù)碼管旁邊的a b c d e f g上。通過掃描顯示的方法使六個數(shù)碼管以人的肉眼看過去全亮的方式進行數(shù)碼顯示。3、 按上面接好線后,通過計算機上的運行程序,觀察實驗的結(jié)果。4、 經(jīng)測試,電路可以正常計時,并顯示,調(diào)整無誤。實驗結(jié)果分析與討論實驗結(jié)果:在數(shù)碼管上的后六個數(shù)碼管上依次顯示了時、分、秒。LED指示燈在每走一秒就循環(huán)亮一個,三個燈一直循環(huán)亮下去,每次都只有一個亮著

14、。揚聲器在59的時候都低聲響一下,然后到整點的時候就開始持續(xù)響,一直延續(xù)到10秒后。分析討論:該數(shù)字鐘雖然實現(xiàn)了功能,但是只能進行加的調(diào)整,要進行減調(diào)整幾乎不可能在現(xiàn)有的電路基礎(chǔ)上改進,只能重新設(shè)計,這是一開始就沒考慮到的。并且分和秒實現(xiàn)的功能是一樣的,如果都用同一模塊,就可以簡化設(shè)計,但對秒計時來說,該模塊有較多不需要的功能,在實際生產(chǎn)的時候,應(yīng)該分開設(shè)計。不過總的來說此次課程設(shè)計還是達到了目的,滿足了它所需的要求。所以課程設(shè)計基本上成功。實驗心得體會:本次課程設(shè)計中主要用到的是24進制和60進制。計數(shù)器需要我們能充分掌握同步和異步之間的區(qū)別,以及置數(shù)和清零的區(qū)別。對它們有了透徹的了解才能夠

15、充分的把所需要的進制給弄出來。通過此次課程設(shè)計也讓我充分的了解的掃描顯示電路的用法,及具體的實現(xiàn)過程。由于本數(shù)字鐘有6位數(shù)字需要顯示,如果用普通的一個輸出對應(yīng)一個譯碼驅(qū)動器和一個數(shù)碼管的靜態(tài)顯示方法,那么僅七端碼輸出就需要多達42個I/O口和數(shù)碼管連線,顯然這將占據(jù)大量I/O口,連線也很麻煩。而采用動態(tài)掃描顯示的方法僅需7根數(shù)碼管連線就能實現(xiàn)多位顯示需求,通過本設(shè)計深刻感受到動態(tài)掃描顯示方法的優(yōu)越性。起初設(shè)計的時候是考慮用硬件實現(xiàn),但是真正等到電路設(shè)計好開始焊接的時候就發(fā)現(xiàn),這個電路過于復(fù)雜,光芯片就多達20多快,還有6個數(shù)碼管,考慮到大量芯片集成于一塊電路板,電路內(nèi)部易產(chǎn)生干擾;電路過于復(fù)雜

16、,在焊接的過程中難免會產(chǎn)生虛焊等焊接錯誤,所以最終決定軟件實現(xiàn)。這就給了我一個教訓(xùn):做設(shè)計之前一定要先從總體上構(gòu)思電路,電路包含哪些分電路,這些電路要如何實現(xiàn),需要用到哪些芯片,以及這些芯片在市場上是否易于購買等問題都應(yīng)該有個整體的把握。通過這次數(shù)字鐘的設(shè)計,讓我深深感受到了數(shù)字電路的重要性和實用性,也加深了對數(shù)字鐘內(nèi)部電路的認(rèn)識,大大提高了我們的邏輯思維能力,使我們在邏輯電路的分析與設(shè)計上有了很大的進步。加深了我們對組合邏輯電路與時序邏輯電路的認(rèn)識,進一步增進了對一些常見邏輯器件的了解。通過這次課程設(shè)計,更讓我了解了合作精神的重要性。共同研究在學(xué)習(xí)生活中是很重要的。總的來說,通過這次的課程設(shè)

17、計,不僅加深了我們對組合邏輯電路和時序邏輯電路的應(yīng)用,對數(shù)字鐘知識的認(rèn)識,還加深了我們對EDA技術(shù)的應(yīng)用,讓我們體會到了構(gòu)建模塊對于數(shù)字電路分析帶來的方便。還讓我們深深得感受到數(shù)字電子技術(shù)的奧妙,使我們發(fā)現(xiàn)數(shù)字電子技術(shù)原來離我們的生活竟然是如此的近。雖然在設(shè)計的過程中出現(xiàn)了許許多多的挫折麻煩,但是經(jīng)過獨立思考,查閱資料和跟同學(xué)討論研究后,總能解決問題并提出最佳方案,或?qū)υ蟹桨缸顑?yōu)化。讓我們深深得體會到了合作精神的重要性。所以通過這次設(shè)計,不僅加強了我們對課本知識應(yīng)用到實際生活中的能力,還學(xué)到了不少新知識,鍛煉了獨立思考與合作處理問題的能力,積累了新經(jīng)驗,這些都無疑使我受益深遠(yuǎn)。參考文獻:5

18、贛南師范學(xué)院物理與電子信息學(xué)院編 數(shù)字電路實驗指導(dǎo)書1 閻石主編 數(shù)字電子技術(shù)基礎(chǔ)第4版 北京:高等教育出版社,1998年2 謝自美主編 電子線路設(shè)計實驗測試 第3版,武漢:華中科技大學(xué)出版社,2006年4 曹昕燕 周風(fēng)原 聶春燕編 EDA技術(shù)實驗與課程設(shè)計 北京:清華大學(xué)出版社,2006年5電子技術(shù)實驗與課程設(shè)計 趙淑范、王憲偉編著 清華大學(xué)出版社6綜合電子設(shè)計與實踐 王振紅、張常年編著 清華大學(xué)出版社附錄:程序清單1整點報時及LED花樣顯示模塊AHDL源程序(ALERT)LIBRARY ieee;use ieee.std_logic_1164.all;use ieee.std_logic_

19、unsigned.all;ENTITY alert ISPORT(clk : INSTD_LOGIC;dain : INSTD_LOGIC_VECTOR(6 DOWNTO 0);speak: OUTSTD_LOGIC;lamp : OUT STD_LOGIC_VECTOR(2 DOWNTO 0);END alert ;ARCHITECTURE fun OF alert ISsignal count : std_logic_vector( 1 downto 0);signal count1: std_logic_vector( 1 downto 0);BEGINspeaker:process (

20、clk)begin speak <= count1(1);if (clk 'event and clk= '1') thenif (dain = "000000") thenif (count1>="10") then count1<="00"elsecount1 <= count1 + 1;end if; end if;end if;end process speaker;lamper:process(clk)beginif (rising_edge(clk)then if (coun

21、t <= "10") thenif (count ="00") thenlamp <= "001" ;elsif (count = "01") thenlamp <= "010" ;elsif(count="10") then lamp <= "100" ;end if;count <= count + 1;else count <= "00"end if; end if; end process l

22、amper;END fun ;2小時計數(shù)模塊AHDL源程序(HOUR)LIBRARY ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;ENTITY hour ISPORT(clk,reset: INSTD_LOGIC;daout: out std_logic_vector (5 downto 0);END entity hour;ARCHITECTURE fun OF hour ISSIGNAL count: STD_LOGIC_VECTOR( 5 downto 0);BEGIN daout <= coun

23、t; process ( clk,reset) begin if (reset='0') then count <= "000000" elsif (clk' event and clk='1') then if (count(3 downto 0)="1001") then if (count <16#24#) then count<=count + 7; else count<="000000" end if; elsif(count <16#24#) then

24、 count <= count + 1; else count<="000000" end if; end if; end process;END fun;3分計數(shù)模塊AHDL源程序(MINUTE)LIBRARY ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;ENTITY minute ISPORT(clk, clk1,reset,sethour : INSTD_LOGIC;enhour : OUTSTD_LOGIC;daout: out std_logic_vector (6

25、downto 0);END entity minute;ARCHITECTURE fun OF minute ISSIGNAL count: STD_LOGIC_VECTOR( 6 downto 0);BEGIN daout <= count; process ( clk,reset,sethour) begin if (reset='0') then count <= "0000000" elsif (sethour='0') then enhour <= clk1; elsif (clk' event and c

26、lk='1') then if (count(3 downto 0)="1001") then if (count <16#60#) then if (count="1011001") then enhour<='1' count<="0000000" ELSE count<=count+7; end if; else count<="0000000" end if; elsif(count <16#60#) then count <= co

27、unt + 1; enhour<='0' after 100 ns; else count<="0000000" end if; end if; end process;END fun;4秒計數(shù)模塊AHDL源程序(SECOND)LIBRARY ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;ENTITY second ISPORT(clk, reset,setmin : INSTD_LOGIC;enmin : OUTSTD_LOGIC;daout: out std_

28、logic_vector (6 downto 0);END entity second;ARCHITECTURE fun OF second ISSIGNAL count: STD_LOGIC_VECTOR( 6 downto 0);BEGIN daout <= count; process ( clk , reset , setmin) begin - enmin<=k; if (reset='0') then count <= "0000000" elsif (setmin='0') then enmin <= c

29、lk; elsif (clk 'event and clk='1') then if (count(3 downto 0)="1001") then if (count <16#60#) then if (count="1011001") then enmin<='1' count<="0000000" ELSE count<=count+7; end if; else count<="0000000" end if; elsif (count

30、< 16#60#) then count <= count+1; enmin<='0' after 100 ns; else count<="0000000" end if; end if; end process;END fun;5時間設(shè)置模塊AHDL源程序(SELTIME)LIBRARY ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;ENTITY seltime ISPORT(clk1, r

31、eset: INSTD_LOGIC;sec,min : INSTD_LOGIC_VECTOR(6 downto 0);hour : in std_logic_vector (5 downto 0);daout: OUTSTD_LOGIC_vector (3 downto 0);sel : out std_logic_vector ( 2 downto 0);END seltime;ARCHITECTURE fun OF seltime ISSIGNAL count: STD_LOGIC_vector ( 2 downto 0);BEGIN sel <= count; process (

32、clk1,reset) begin if (reset ='0') then count <= "000" elsif (clk1 'event and clk1='1') then if ( count >= "101") then count <= "000" else count <= count + 1; end if; end if; case count is when "000" => daout <= sec(3 downto 0); when "001" => daout(3) <= '0' daout(2 downto 0) <= sec (6 downto 4); when "010" => daout <= min (3 downto 0); when "011" => daout(3) <= '0' daout(2 downto 0) <= min (6 downto 4); when &qu

溫馨提示

  • 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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論