第一篇:數字鐘試驗報告
數字電子技術課程
設計報告
班級: 學號: 姓名: 指導老師:
2007年11月28日
目錄
一.實驗名稱 二.實驗要求和目的 三.實驗環境 四.功能說明 五.設計方案 六.設計實驗圖 七.模塊代碼及試圖 八.局部功能解釋與設計 九.心得體會 十..參考文獻
一.實驗名稱
簡易數字鐘.二.實驗要求和目的
1.要求:
(1).能驚醒正常的時,分,秒計時功能,分別由6個數碼管顯示24h,60min,60s(2).按下sa鍵時,計時器迅速增加,并按24h循環,計滿23h后再回00.(3).按下sb鍵時,計時器迅速增加,并按60min循環,計滿59min后再回00,但不響”時”進位.(4).利用實驗裝置上的蜂鳴器作整點報時,當計時到達59’50”時開始報時,在59分鐘的第“50”、“52”、“54”、“56”,”58”秒報時,報時頻率選500Hz;在59分鐘的第“60”秒,整點報時,報時頻率選1KHz。
2.目的:掌握各類計數器以及它們相連的設計方法;掌握多個數碼管顯示的原理與方法;掌握FPGA計時的層次化設計方法;掌握使用VHDL語言的設計思想;對整個系統的設計有一個了解..三、實驗環境:
1. 軟件環境:Quartus II 4.2
2. 硬件環境:硬件平臺LP-2900,FPGA芯片為EPF10K10TC144-4
3. 本實驗除時鐘源、按鍵、揚聲器和顯示器(數碼管)之外的所有數字電路功能都是用VHDL語言實現的。這樣設計具有體積小、設計周期短(設計過程中即可實現時序仿真)、調試方便、故障率低、修改升級容易等特點。本設計采用自頂向下、混合輸入方式(原理圖輸入——頂層文件連接和VHDL語言輸入——各模塊程序設計)實現數字鐘的設計、下載和調試.四、功能說明:
1.完成秒/分/時的依次顯示并正確計數;
2.定時鬧鐘:實現整點報時,由蜂鳴器發出報時聲音;
3.設置時間:可以通過按鍵分別對分/時鐘進行調整,通過PS1對秒進行清零。
五、設計方案:
1.數字鐘頂層設計
1.外部輸入要求:輸入信號有10mHz時鐘信號, 低電平有效的秒清零信號CLR、高電平有效的調分信號sa、高電平有效的調時信號sb;
2.外部輸出要求:整點報時信號bbb(59分”50”,”54”,”56”,”58”秒時未500Hz低頻聲,59分60秒時為1kHz高頻聲)、時十位顯示信號t1(a,b,c,d,e,f,g)、時個位顯示信號t0(a ,b,c,d,e,f,g)、分十位顯示信號m1及分個位m0、秒十位s1及秒個位s0;數碼管顯示位選信號SEL0/1/2等三個信號。
設計概要圖:
模塊:
1.mian: 該模塊為60進制計數器,計時輸出為秒的數值.在計時到59時送到進位信號CO,因為硬件有延時,所以模塊MINA在此模塊變為00時加1,符合實際.2.MINA: 該模塊為60進制計數器,計時輸出為分的數值.在EN信號有效時數鐘到來時,計數器加1.在sb按下時,EN信號有效,計數值快速增加,從而實現對分鐘的設置.3.HOUR: 該模塊為24禁止計數器,計時輸出小時的數值.4.SST:此模塊為整點報時提供控制信號.5.BBB:該模塊對應不同的片選信號送出不同的要顯示的數據
6.Sel:該模塊提供數碼管片選信
7.FEN10:這個模塊時實現十分頻
8.DISP:它是七段譯碼器.9.CCC:輸入為10MHz方波,輸出為500Hz和1KHz的方波.六.實驗設計圖:
七.模塊及模塊功能:
1.模塊mian.該模塊為60進制計數器,計時輸出為秒的數值.在計時到59時送到進位信號CO,因為硬件有延時,所以模塊MINA在此模塊變為00時加1,符合實際.模塊代碼: library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity mian is port(clk,clr:in std_logic;sec1,sec0:out std_logic_vector(3 downto 0);co:out std_logic);end mian;architecture mian_arc of mian is begin process(clk,clr)variable cnt1,cnt0:std_logic_vector(3 downto 0);begin if clr='1'then cnt1:=“0000”;cnt0:=“0000”;elsif clk'event and clk='1'then if cnt1=“0101” and cnt0=“1000”then co<='1';cnt0:=“1001”;elsif cnt0<“1001”then cnt0:=cnt0+1;else cnt0:=“0000”;if cnt1<“0101”then cnt1:=cnt1+1;else cnt1:=“0000”;co<='0';end if;end if;end if;sec1<=cnt1;sec0<=cnt0;end process;end mian_arc;
模塊MINA.該模塊為60進制計數器,計時輸出為分的數值.在EN信號有效時數鐘到來時,計數器加1.在sb按下時,EN信號有效,計數值快速增加,從而實現對分鐘的設置.模塊代碼:
library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity mina is port(en,clk:in std_logic;min1,min0:out std_logic_vector(3 downto 0);co:out std_logic);end mina;architecture min_arc of mina is begin process(clk)variable cnt1,cnt0:std_logic_vector(3 downto 0);begin if clk'event and clk='1'then if en='1'then if cnt1=“0101” and cnt0=“1000”then co<='1';cnt0:=“1001”;elsif cnt0<“1001”then cnt0:=cnt0+1;else cnt0:=“0000”;if cnt1<“0101”then cnt1:=cnt1+1;else cnt1:=“0000”;co<='0';end if;end if;end if;end if;min1<=cnt1;min0<=cnt0;end process;end min_arc;
模塊HOUR.該模塊為24禁止計數器,計時輸出小時的數值.設置功能的原理跟MINA模塊相同.模塊代碼:
library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity hour is port(en,clk:in std_logic;h1,h0:out std_logic_vector(3 downto 0));end hour;architecture hour_arc of hour is begin process(clk)variable cnt1,cnt0:std_logic_vector(3 downto 0);begin if clk'event and clk='1'then if en='1'then if cnt1=“0010” and cnt0=“0011”then cnt0:=“0000”;cnt1:=“0000”;elsif cnt0<“1001”then cnt0:=cnt0+1;else cnt0:=“0000”;cnt1:=cnt1+1;end if;end if;end if;h1<=cnt1;h0<=cnt0;end process;end hour_arc;
模塊SST.此模塊為整點報時提供控制信號,當23min,59sec時報時.Q500輸出”1”;秒為00時,Qlk輸出”1”.這兩個信號經過邏輯門實現報時功能.模塊代碼
library ieee;use ieee.std_logic_1164.all;entity sst is port(m1,m0,s1,s0:in std_logic_vector(3 downto 0);clk:in std_logic;q500,qlk:out std_logic);end sst;architecture sst_arc of sst is begin process(clk)begin if clk'event and clk='1' then if m1=“0101” and m0=“1001” and s1=“0101” then if s0=“0000” or s0=“0010” or s0=“0100” or s0=“0110” or s0=“1000” then q500<='1';else q500<='0';end if;end if;if m1=“0000” and m0=“0000” and s1=“0000” and s0=“0000” then qlk<='1';else qlk<='0';end if;end if;end process;end sst_arc;
模塊BBB.該模塊對應不同的片選信號送出不同的要顯示的數據.模塊代碼:
library ieee;use ieee.std_logic_1164.all;entity bbb is port(sec1,sec0,min1,min0,h1,h0:in std_logic_vector(3 downto 0);sel:in std_logic_vector(2 downto 0);q:out std_logic_vector(3 downto 0));end bbb;architecture bbb_arc of bbb is begin process(sel)begin case sel is when“101”=>q<=sec0;when“100”=>q<=sec1;when“011”=>q<=min0;when“010”=>q<=min1;when“001”=>q<=h0;when“000”=>q<=h1;when others =>null;end case;end process;end bbb_arc;
模塊FEN10.這個模塊時實現十分頻.模塊代碼:
library ieee;use ieee.std_logic_1164.all;entity fen10 is port(clk:in std_logic;q:out std_logic);end fen10;architecture fen_arc of fen10 is begin process(clk)variable cnt:integer range 0 to 9;begin if clk'event and clk='1'then if cnt<9 then cnt:=cnt+1;q<='0';else cnt:=0;q<='1';end if;end if;end process;end fen_arc;
模塊sel.該模塊提供數碼管片選信號.模塊代碼:
library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity sel is port(clk:in std_logic;q:out std_logic_vector(2 downto 0));end sel;architecture sel_arc of sel is begin process(clk)variable cnt:std_logic_vector(2 downto 0);begin if clk'event and clk='1' then cnt:=cnt+1;end if;q<=cnt;end process;end sel_arc;
模塊CCC.該模塊的輸入為10MHz方波,輸出為500Hz和1KHz的方波.模塊代碼:
library ieee;use ieee.std_logic_1164.all;entity ccc is port(clk:in std_logic;q500,qlk:out std_logic);end ccc;architecture ccc_arc of ccc is signal x:std_logic;begin process(clk)variable cnt:integer range 0 to 4999;begin if clk'event and clk='1'then if cnt<1999 then cnt:=cnt+1;else cnt:=0;x<=not x;end if;end if;qlk<=x;end process;process(x)variable y:std_logic;begin if x'event and x='1' then y:=not y;end if;q500<=y;end process;end ccc_arc;
模塊DISP.它是七段譯碼器.模塊代碼:
library ieee;use ieee.std_logic_1164.all;entity disp is port(d:in std_logic_vector(3downto 0);q:out std_logic_vector(6 downto 0));end disp;architecture disp_arc of disp is begin process(d)begin case d is when“0000”=>q<=“0111111”;when“0001”=>q<=“0000110”;when“0010”=>q<=“1011011”;when“0011”=>q<=“1001111”;when“0100”=>q<=“1100110”;when“0101”=>q<=“1101101”;when“0110”=>q<=“1111101”;when“0111”=>q<=“0100111”;when“1000”=>q<=“1111111”;when“1001”=>q<=“1101111”;when others=>q<=“0000000”;end case;end process;end disp_arc;
八.局部功能解說及功能
局部三個分頻器,都是10分頻.機器是以10m輸出,為使顯示時數字穩定,所以使用了3個.在這個地方我用了兩個與門,還有一個或門.這樣在按下加時或加分的按鍵時能屏蔽一個分頻器,還有對秒的干擾.這樣就能加速對時或者分的調整.完成實驗要求的一個功能.九.心得體會
這次實驗,自己用心去做,發現其實并不是很難,并且學習了硬件描述語言—vhdl,對于新接觸的知識,通過自己的學習,掌握了基礎編程.自己也到圖書館翻閱了資料.實驗中也遇到一些問題:(1)一開始的分鐘和時鐘計數在未進位的情況下也計數,是為了讓調整時間時走的比秒針快,用了一個非門,致使在未按按鍵時也產生進位.刪除之后正常進位.(2)還有就是引腳分配
就是這三個分配失誤,導致時,分,秒位置顯示顛倒.(3)調整時鐘時會影響到秒鐘.不過通過添加或門屏蔽秒鐘,讓它不產生影響,達到實驗效果.總體來說,自己用心完成了這次實驗,一開始的什么都不清楚,到后來自己用心設計,改良.發現錯誤并改正.實驗結束雖然自己仍還有些不足,有的問題還是問了老師,但是通過以后的學習,相信會彌補上來.十一.參考文獻
<
<<數字邏輯與數字系統>>
<
<
第二篇:數字鐘試驗報告
數字鐘試驗報告
一、實驗目的
利用EDA技術實現數字鐘功能與動態顯示。
二、設計要求
能根據已有的代碼提示,自己修改程序使之實現顯示時,分,秒的數字鐘效果。
三、設計方法與步驟
1.設計輸入(硬件描述語言的輸入方式—VHDL語言)(1).Clk.vhd:
(2).Cnth24.vhd:
(3).Cntm60.vhd:
(4).Disp.vhd:
(5).Shizhong.bdf:
(6).Szz.bdf:
2.引腳分配:
3.編譯:
4.下載:
四、設計過程中出現的問題及解決方法 1.如何將輸出與LED顯示模塊的管腳相連? 答:參看實驗指導書附錄B 2.如何為已編譯通過的 XX.VHD文件生成符號文件? 答:對QUARTUS II進行相關操作,生成于PROJECT中 3.下載后的LED顯示出閃動現象?
答:修改Clk.vhd結構體中的499999改為49999,99改為999 五.心得體會
1.在項目設計前一定要先作總體的規劃,對該項目所包含的模塊與它們的作用要了然于胸,然后方可對各模塊進行設計,最后將各部分加以綜合。
2.熟練掌握對出現的常見程序錯誤進行修改。
3.基本會對程序進行修改使其滿足不同的參數指標要求。4.還要進一步上機實踐。
第三篇:數字鐘
數 子 鐘 的 調 試 與 安 裝 報 告
班級:12級電子信息工程1班 學號: 201272020122 姓名: 任晶
一 實驗要求
用555或晶振做秒脈沖信號源,用計時芯片構成數字鐘,顯示秒,分,時。具有快速校時功能。
具有鬧鐘功能(在任意時刻預置一個時間,當數字鐘顯示的時間與你預置的時間相等時發出“滴,滴,滴“聲音信號。二 實驗原理 時間顯示模塊電路
用三個CD4518作為核心芯片進行級聯,再用邏輯門完成進位,置零等功能。CD4518是雙十進制計數器,有兩個時鐘輸入端,可以同時滿足進位和校時功能,而不會產生干擾,具有置零功能,可以組成六十進制和二十四進制的計數器。
CD4518,該芯片是一種同步加計數器,在一個封裝中含有兩 個可互換二/十進制計數器,其功能引腳分別為1~7和9~15。該計數器是單路系列脈沖輸入(1腳或2腳;9腳或10腳),4路BCD碼信號輸出(3腳~6腳;11腳~14腳)。CD4518有兩個時鐘輸入端CP和EN,若用時鐘上升沿觸發,信號由CP輸入,此時EN端應接高電平“1”,若用時鐘下降沿觸發,信號由EN端輸入,此時CP端應接低電平“0”。
時、分、秒顯示電路模塊設計
1)下圖為秒的電路設計圖,右邊為秒個位,左邊為秒十位??紤]到CD4518為十進制,又CLOCK為上升沿輸入,CLOCK`為下降沿輸入,所以當秒個位為9(四位二進制數ABCD為1001)的時候,秒十位的CLOCK`接低位端,在1001的低位D變為0的時候產生進位。在秒十位的BC端接74LS08,當BC都為高電平時(0110)秒計時清零并產生向分的進位。秒個位的CLOCK`要接高電平,秒十位的CLOCK要接低電平,在實物連接的時候,就是因為秒十位的CLOCK沒有接低電平一直不進位。
U13U14DCD_HEX_DIG_REDDCD_HEX_DIG_RED67584321VDDVDD5V2RST~2CLK2CLK0101RST~1CLK1CLKU1A74LS08D2D2C2B2A1D1C1B1AVDDU124518BP_5VVSS9V110 Hz 5 V 0
2)分的電路
U13U14DCD_HEX_DIG_REDDCD_HEX_DIG_RED67548321VDDVDD5V2RST~2CLK2CLK0101RST~1CLK1CLKU1A74LS08D2D2C2B2A1D1C1B1AVDDU124518BP_5VVSS9
分的時間電路與秒的一樣 3)時的電路 U13U14DCD_HEX_DIG_REDDCD_HEX_DIG_RED48567321VDDVDD5V2RST~2CLK2CLK0101RST~1CLK1CLKU1A74LS08D2D2C2B2A1D1C1B1AVDDU124518BP_5VVSS9
上圖為時的設計電路,與秒、分不一樣的是他是24進制,當時的十位為0﹑1的時候,時個位正常從0-9顯示,當時的十位為2的時候,個位顯示0﹑1﹑2﹑3,然后回到0,因此置零與秒分不一樣,當十位的為2時二進制位0010,各位為為4時二進制位0100,所以十位的B與個位的C端接74LS08,當他們同時為1時清零.2 鬧鐘顯示模塊電路
用4個74LS85作為核心芯片進行級聯,與CD4518的小時,分鐘輸出進行比較,當預置時間與CD4518的輸出時間相等時觸發蜂鳴器。
功能表如下
VCC5VS2Key = Space7126ABCDABCDEFGHVCCS33548CK 1 時鐘電路
Key = Space~LT~RBI~BI/RBOGNDVCCOAOBOCODOEOFOG16***1412345676843U14645U18A0U774LS48N1CLK~1CLK1RST74LS32DU16A74LS08D44692CLK~2CLK2RST 2 鬧鐘電路
4748767049VSS7126ABCDABCDEFGHVDD1A1B1C1D2A2B2C2DVCCOAOBOCODOEOFOGCK***8~LT~RBI~BI/RBOGND16***14三 數字鐘的總體電路圖
U154518BP_5VU2U874LS48N07126ABCDABCDEFGH***0213548CKKey = Space6751~LT~RBI~BI/RBOGNDVCCOAOBOCODOEOFOG16***147574LS32D52VDDU974LS48N1CLK~1CLK1RST2CLK~2CLK2RSTU16B74LS08DS4GND5453U3U18B73558358VSS7126ABCDABCDEFGH***7283548CKVDD1A1B1C1D2A2B2C2DVCCOAOBOCODOEOFOG16***14U134518BP_5V~LT~RBI~BI/RBOGNDU4U1074LS48N507126ABCDU18C29303***3548~LT~RBI~BI/RBOGND
74LS32D1CLK~1CLK1RSTU17B74LS08D62616074VCCOAOBOCODOEOFOG16***14ABCDEFGHCKU5U1174LS48N07163646566VSS72S1Key = Space71262CLK~2CLK2RSTVDD1A1B1C1D2A2B2C2DABCDV1U144518BP_5V35483kHz 5 V VDD5V~LT~RBI~BI/RBOGNDVCCOAOBOCODOEOFOG16***14ABCDEFGHCK36373839404142U6GNDU1274LS48N
VCC5VVCCJ2J1J3J4X42.5 V 654U1***109A3B3A2B2A1B1A0B0AGTBAEQBALTBOAGTBOAEQBOALTB567791082U2***109A3B3A2B2A1B1A0B0AGTBAEQBALTBOAGTBOAEQBOALTB5673151617U3***109432A3B3A2B2A1B1A0B0AGTBAEQBALTBOAGTBOAEQBOALTB5671202122U4***109A3B3A2B2A1B1A0B0AGTBAEQBALTBOAGTBOAEQBOALTB56726VCC5VVCC3029014***LS85N1112***321974LS85NVDD5VVDD3536373874LS85N***4274LS85N2D2C2B2A1D1C1B1AVDD2RST~2CLK2CLK1RST~1CLK1CLKU54518BP_5V2D2C2B2A1D1C1B1AVDD2RST~2CLK2CLK1RST~1CLK1CLKVSSU64518BP_5V
脈沖電路
555定時器成本低,性能可靠,只需要外接幾個電阻、電容,就可以實現多諧振蕩器、單穩態觸發器及施密特觸發器等脈沖產生與變換電路。它也常作為定時器廣泛應用于儀器儀表、家用電器、電子測量及自動控制等方面。
它內部包括兩個電壓比較器,三個等值串聯電阻,一個 RS 觸發器,一個放電管 T 及功率輸出級。它提供兩個基準電壓VCC /3 和 2VCC /3 555 定時器的功能主要由兩個比較器決定。兩個比較器的輸出電壓控制RS 觸發器和放電管的狀態。在電源與地之間加上電壓,當 5 腳懸空時,則電壓比較器 C1 的反相輸入端的電壓為 2VCC /3,C2 的同相輸入端的電壓為VCC /3。若觸發輸入端 TR 的電壓小于VCC /3,則比較器 C2 的輸出為 0,可使 RS 觸發器置 1,使輸出端 OUT=1。如果閾值輸入端 TH 的電壓大于
2VCC/3,同時 TR 端的電壓大于VCC /3,則 C1 的輸出為 0,C2 的輸出為 1,可將 RS 觸發器置 0,使輸出為 0 電平。它的各個引腳功能如下:
1腳:外接電源負端VSS或接地,一般情況下接地。2腳:低觸發端 3腳:輸出端Vo
VSS4腳:是直接清零端。當此端接低電平,則時基電路不工作,此時不論TR、TH處于何電平,時基電路輸出為“0”,該端不用時應接高電平。
5腳:VC為控制電壓端。若此端外接電壓,則可改變內部兩個比較器的基準電壓,當該端不用時,應將該端串入一只0.01μF電容接地,以防引入干擾。6腳:TH高觸發端。
7腳:放電端。該端與放電管集電極相連,用做定時器時電容的放電。
8腳:外接電源VCC,雙極型時基電路VCC的范圍是4.5-16V,CMOS型時基電路VCC的范圍為3-18V。一般用5V。在1腳接地,5腳未外接電壓.上圖為555芯片的內部結構 下圖為555芯片的引腳圖
VCC10R3R12kΩU4555_TIMER_RATEDVCCRSTDIS5VVCC10kΩ50%Key=AOUT12R25.1kΩ13THRTRICON14C110nFGND16C2 100uF-四 調試與安裝
在仿真成功后,就想著實物連接肯定也會沒問題,一開始數碼管的引腳就焊錯了,因為我是按照書上數碼管的管腳在板子的后面焊的,可是在正面插上數碼管時才發現剛好反了,在把整個電路都焊好后,開始運行卻發現6個數碼管都顯示的是零,連計時功能都不能實現。首先想到的是作為秒計時的CD4518是不是出問題了,就測了各個管腳的連線是否正常,有沒有虛焊,電壓是否接上,測完發現都是好的,就想555脈沖是否正常,發現也是好的。就想是不是進位的芯片有影響了,就把與門的連線斷了,可是也不能運行,經過一天的測與修,就是不能運行,很是郁悶。沒辦法之下就把鬧鐘部分的85芯片與4518芯片的連線斷開,又把或門的連線也斷開,先實現秒計時部分,再一步一步往上加,把秒計時連上線后發現只是0至9不能進位,就又把4518芯片的功能又看了一遍,在仿真中一個管腳是懸空的,代表了低電平,可是在實際中是要接低電平的。完成60的秒部分后就把或門與與門的連線上,發現計時部分都好了,就又把鬧鐘部分的線連上了,在仿真中撥碼開關的一端連的是高電平,在實際中卻要接低電平。CMOS管腳不能懸空要接低電平或高電平,否則的話當你的手靠近芯片的時候他會不工作或者出現跳變。Z在校時方面,分的校時才用秒的進位,比較穩定,時的校時,采用高低電平,剛開始的時候有點不穩定,有時會進2位,在開關上幷了電容后就好了。后面又采用了RS觸發器。五 心得體會
經過這段時間的課程設計,學到了很多在課堂上學習不到的東西,經過實踐后加深了對課本知識的理解,同時也學會了一種學習的態度
這次課程設計也再次讓我們看到了理論與實際的差別和聯系,理論知識為我們提供了一個框架,在在實際的操作與運行中,你要能隨機應變不能死搬書上的那一套,也讓我們了解到仿真與實際的差別,理想很豐滿現實很骨感,盡管開始的時候你可能想的很多,想的很好,想的也很簡單,但在實踐的過程中你會碰到各種問題,也學到了如果你連書本上的知識都不能掌握,就談不上實踐了。理論知識固然很重要,然而我們要在實際的過程中發現問題并解決問題,在實踐中提高自己的動手能力和解決問題的能力。
在這次實踐中我也學到了怎樣檢查問題,在你焊接的時候最好把模塊分清楚,一個模塊一個模塊的焊,出了問題一個模塊一個模塊的逐級檢查,也學到了做事要嚴謹,認真,如果你不仔細就有可能會虛焊,或者接錯線,并學會了獨立思考,獨立解決問題的能力,在一周的廢寢忘食的課程設計過程中我收獲了很多,猶記得當我調試成功的那種喜悅,因為這是自己親手設計與實踐后的結晶。盡管你可能一個人能做出來東西,可是如果你在一個團隊里的話會大大提高你的效率,因為當你的伙伴發現錯誤時,你就能及時避免再次發生錯誤,也讓我們知道了。團隊合作的重要性。
第四篇:數字鐘
電子技術課程設計
__24_小時__數字鐘
學院:電子信息工程學院
任課老師:張學成
課程設計:數字鐘
學號:25號
班級:095
姓名:黃偉
目 錄
一、課程設計的設計任務和基本要求??????1
二、總體框圖 ???????????????1
三、選用器件及部分器件使用說明 ??????6
四、功能模塊 ???????????????14
五、總體設計電路圖?????????????17
六、課程設計的心得體會???????????19
七、參考文獻????????????????20
數字鐘
數字鐘是用數字集成電路構成的、用數碼顯示的一種現代計時器,與傳統機械表相比,它具有走時準確、顯示直觀、無機械傳動裝置等特點。因而廣泛應用于車站、碼頭、機場、商店等公共場所。在控制系統中,也常用來作定時控制的時鐘源。
一、課程設計的設計任務與基本要求
用中小規模集成電路設計并制作一臺能顯示時、分、秒的數字鐘。(1)由信號發生器器產生時鐘信號。(2)小時計數器用24進制計數器。
(3)可以用手動校正時間,能分別進行時、分的校正。(4)采用LED顯示時、分、秒。(5)要求電路主要采用中規模集成電路。(6)要求電源電壓+5伏— +10伏。
二、總體框圖
(一)各個模塊及功能
數字式計時器一般都由振蕩器、分頻器、計數器、譯碼器、顯示器等幾部分組成。其中振蕩器和分頻器組成標準秒信號發生器,由不同進制的計數器、譯碼器組成計時系統。秒信號送入計數器進行計數,把累計的結果以“時”、“分”、“秒”的數字顯示出來。“時”顯示由二十四進制計數器、譯碼器、顯示器構成,“分”、“秒”顯示分別由六十進制計數器、譯碼器、顯示器構成。其原理圖如圖6.1.1所示。
1.振蕩器 振蕩器是數字鐘的核心。振蕩器的穩定度及頻率的準確度決定了數字鐘計時的準確程度,通常選用晶振構成振蕩器電路。一般來說,振蕩器的頻率越高,計時精度越高,如果精度要求不高也可以采用集成邏輯門與RC組成的時鐘源振蕩器或由集成定時器555與RC組成的多諧振蕩器。這里選用多諧振蕩器,設振蕩頻率f=1kKz。
圖6.1.1 數字鐘原理框圖
2.分頻器 分頻器的功能是產生標準脈沖信號,因為74LS90是二—五—十進制計數器,所以選用1片就可以完成上述功能,即3片級連則可獲得所需要的頻率信號:第1片的Q0端輸出頻率為1Hz標準秒脈沖信號。如果振蕩頻率為100kHz時,就需要5片74LS90進行級聯。
3.時間計數器 由總系統框圖可知,數字時鐘需要兩個六十進制計數器分別用作“分”和“秒”的計數,還需要一個二十四進制計數器作“小時”的計數。計數器可以采用前面的中規模集成計數器74LS160。
4.校時電路 在計數開始或計時出現誤差時,必須和標準時間校準,這一功能同校時電路完成。校時的方法是給被校的計時電路引入一個超出常規計時許多倍的快速脈沖信號,從而使計時電路快速到達到標準時間。將“秒”信號分別引到“分”和“時”的脈沖輸入端以便快速校準“分”
5.譯碼器、驅動及顯示電路 從數字鐘計數器輸出的信號為8421BCD代碼,需要經譯碼變成七段字形代碼,用七段數碼管顯示出來。七段數碼管分共陰,共陽兩種,這里選用共陰數碼管BS201,相應的譯碼器采用CT74248。由于采用靜態方式顯示,每個數碼管必須有一個相應的譯碼器將8421BCD代碼譯成七段字形代碼。
(二)方案設計及選擇
方案一:由集成邏輯門與RC組成的時鐘源振蕩器或由集成電路定時器555與RC組成的多諧振蕩器作為時間標準信號源。如圖(1)所示。
圖(1)
方案二:振蕩器是數字鐘的核心。振蕩器的穩定度及頻率的精確度決定了數字鐘計時的準確程度,通常選用石英晶體構成的振蕩器電路。石英晶體振蕩器的作用是產生時間標準信號。因此,一般采用石英晶體振蕩器經過分頻得到這一時間脈沖信號。
圖(2)
如圖(2)所示為電子手表集成電路中的晶體振蕩器電路,常取晶振頻率為32768Hz,因其內部有15級2分頻集成電路,所以輸出端正好可得到1Hz的標準脈沖。
信號發生器是數字鐘的核心。它的穩定度及頻率的精確度決定了數字鐘計時的準確程度,在本實驗中我選用555振蕩器產生脈沖經過整形、分步獲得1Hz的脈沖。一般來說,振蕩器的頻率越高,計時精度就越高。
三、選用器件及部分器件的使用說明
74LS90 1片,74LS160 6片,74LS00 19片,74LS08 2片。74LS04 4片
74LS90邏輯框圖
74LS90邏輯符號
74LS90邏輯功能:74LS90是異步二-五-十進制加法計數器,它即可以做二進制加法計數器,有可以做五進制和十進制加法計數器。
通過不同的連接方式,可以實現四種不同的邏輯功能;還可以借助R0(1)、R0(2)對計數器清零,借助S9(1)、S9(2)將計數器置9,其功能如下;
(1)計數脈沖從CP1輸入,QA作為輸出端,為二進制計數器。
(2)計數脈沖從CP2輸入,QD、QC、QB輸出端,為異步五進制加法計數器。(3)若將CP2和QA相連,計數脈沖由CP1輸入,QD、QC、QB、QA作為輸出端。則構成異步8421碼十進制加法計數器。(4)若將CP1和QD相連,計數脈沖由CP2輸入,QD、QC、QB、QA作為輸出端,則構成異步5421碼十進制加法計數器。
(5)清零、置9功能
a)異步清零
當R0(1)、R0(2)均為“1”;S9(1)、S9(2)中有“0”時,實現異步清零功能,即QDQCQBQA=0000。b)置9功能
當S9(1)、S9(2)均為“1”;R0(1)、R0(2)中有“0”時,實現置9功能,即QDQCQBQA=1001
74LS90邏輯功能表
74LS90內部原理圖
74LS02邏輯框圖(異或邏輯框圖)
74LS02邏輯符號
74LS02內部原理圖
74LS02邏輯功能表
異或邏輯功能如下:當A、B不同時,輸出Y為1;而A、B相同時,輸出Y為0。2輸入端四或非門
74LS00邏輯框圖(與非邏輯框圖)
74LS00邏輯符號
74LS00內部原理圖
74LS00邏輯功能表(與非邏輯功能表)
與非門邏輯功能:將A、B先進行與運算,然后將結果求反,最后得到的A、B的與非運算結果.因此,可以把與非運算看作是與運算和非運算的組合.2輸入端四與非門
74LS08邏輯框圖(與門邏輯框圖)
74LS08邏輯符號
74LS08內部原理圖
74LS08邏輯功能表(與門邏輯功能表)
與門邏輯功能:只有決定事物結果的全部條件同時具備時,結果才發生。2輸入端四與門
74LS04邏輯框圖(非門邏輯框圖)
74LS04邏輯符號
74LS04內部原理圖
74LS04邏輯功能表(非門邏輯功能表)
非門邏輯功能:只要條件具備了,結果便不會發生;而條件不具備時,結果一定發生。
四、功能模塊
1.每個模功能塊要分別打印出電路圖,并詳細說明每一模塊的邏輯功能,每一器件的邏輯功能,器件之間的連接關系
(一)振蕩器 振蕩器是數字鐘的核心。振蕩器的穩定度及頻率的準確度決定了數字鐘計時的準確程度,通常選用晶振構成振蕩器電路。一般來說,振蕩器的頻率越高,計時精度越高,如果精度要求不高也可以采用集成邏輯門與RC組成的時鐘源振蕩器或由集成定時器555與RC組成的多諧振蕩器。這里選用石英晶體振蕩器,設振蕩頻率f=1kKz。電路圖如下
(二)分頻器 分頻器的功能是產生標準脈沖信號,因為74LS90是二—五—十進制計數器,第1片的Q3端輸出為1Hz。如果振蕩頻率為100kHz時,就需要5片74LS90進行級聯。電路圖如下圖所示
(三)時間計數器 由總系統框圖可知,數字時鐘需要兩個六十進制計數器分別用作“分”和“秒”的計數,還需要一個二十四進制計數器作“小時”的計數。計數器可以采用前面的中規模集成計數器74LS160。電路圖如下所示
(四)校時電路 在計數開始或計時出現誤差時,必須和標準時間校準,這一功能同校時電路完成。校時的方法是給被校的計時電路引入一個超出常規計時許2倍的快速脈沖信號,從而使計時電路快速到達到標準時間。將震蕩信號分別引到“分”和“時”的脈沖輸入端以便快速校準“分”。電路圖如下所示
三. 總體設計電路圖
1.數字式計時器一般都由振蕩器、分頻器、計數器、譯碼器、顯示器等幾部分組成。其中振蕩器和分頻器組成標準秒信號發生器,由不同進制的計數器、譯碼器組成計時系統。秒信號送入計數器進行計數,把累計的結果以“時”、“分”、“秒”的數字顯示出來?!皶r”顯示由二十四進制計數器、譯碼器、顯示器構成,“分”、“秒”顯示分別由六十進制計數器、譯碼器、顯示器構成。
555振蕩器發生脈沖信號,經過分頻器最后輸出1Hz信號,把分頻器的Q3接到計數器的INA處,使分頻器與計數器相連。然后計數器與顯示器相連,秒、分、時分別對應著。另外還有校正部分,圖見校時電路的電路圖。左邊的開關是時校正,中間的開關是分校正,可以手動校正。
實驗結果:實驗箱上的數字鐘正常運行,已經成功達到了設計的要求和目的。第一次連線沒有顯示出結果,原因是接線處有一處導線接觸不良,經過檢查,成功的排除了故障。當再一次打開數字實驗箱開關后,還是跟第一次一樣,只顯示50秒,然后秒的數字就再運行。經過又一次檢查,發現是秒顯示器的74LS90器件接觸不良,用手按住后,數字鐘正常運行,秒到六十向分進一,分到六十向時進一,時到二十四時,自動回到零。自此,實驗全部完成。
六.課程設計的心得體會
課程設計是培養學生綜合運用所學知識,發現,提出,分析和解決實際問題,鍛煉實踐能力的重要環節,是對學生實際工作能力的具體訓練和考察過程。隨著科學技術發展的日新月異,電子技術在生活中可以說是無處不在。因此做為二十一世紀的大學生來說掌握電子技術是非常之重要?;仡櫞舜握n程設計,至今我仍感慨頗多,的確,從選題到定稿,從理論到實踐,在整整兩周的日子里,可以說是苦多于甜,但是可以學到很多很多東西,同時不僅可以鞏固了以前所學過的知識,而且學到了很多在書本上無法學到的知識。通過這次課程設計使我懂得了理論與實際相結合的重要性,只有理論知識是遠遠不夠的。只有理論與實際相結合才能提高自己的實際動手能力和獨立思考的能力。在設計中遇到的問題有很多,這畢竟是第一次,難免會遇到各種各樣的問題。在這次設計中我發現我所學的知識這遠遠不夠,在今后的學習中我要更加努力奮斗!
這次課程設計終于順利完成了,在設計中遇到了很多問題,最后在百度的幫助下都一一解決。在此我十分感謝百度對我的幫助和支持。
第五篇:數字鐘
數字鐘電子技術課程設計報告
數字電子技術課程設計報告 題 目: 數字鐘的設計與制作
學 年 學 期:
專 業 班 級: 學 號:
姓 名:
指導教師及職稱:講師 時 間: 地點: 設計目的
熟悉集成電路的引腳安排.掌握各芯片的邏輯功能及使用方法.了解面包板結構及其接線方法.了解數字鐘的組成及工作原理.熟悉數字鐘的設計與制作.設計要求 1.設計指標
時間以12小時為一個周期;顯示時,分,秒;有校時功能,可以分別對時及分進行單獨校時,使其校正到標準時間;為了保證計時的穩定及準確須由晶體振蕩器提供表針時間基準信號.2.設計要求
畫出電路原理圖(或仿真電路圖);元器件及參數選擇;電路仿真與調試;.3.制作要求 自行裝配和調試,并能發現問題和解決問題.4.編寫設計報告 寫出設計與制作的全過程,附上有關資料和圖紙,有心得體會.設計原件
設計原理
數字電子鐘由秒信號發生器、“時、分、秒”計數器、譯碼器及顯示器、校時電路等組成。秒信號產生器是由石英晶體振蕩器分頻后得到的。秒計數器到60后,對分計數器送入一個脈沖,進行分計數,分計數器到60后,對時計數器送入一個脈沖,進行時計數,時計數器是12進制計數器,實現對一天12小時計數。數字電子鐘的顯示由計數器、譯碼器經數碼管實現。首先構成一個CB555定時器產生震蕩周期為一秒的標準秒脈沖,由74LS161采用同步預置數法分別組成六十進制的秒記數器、六十進制分記數器、十2進制時記數器,使用74LS48為驅動器。(1)秒信號發生器
秒信號由555定時器組成的多諧振蕩電路來產生,振蕩頻率可通過調解R或C的值來改變。當R=47K,C=10uF。由公式得當Rw=47K時輸出端輸出震蕩頻率為1Hz。周期是1秒,即可作為秒的脈沖輸入標準秒脈沖。555定時器組成的多諧振蕩電路如下:
圖2 555定時器組成的多諧振蕩電路
(2)計數電路
60進制計數器有2片74LS161和74LS00連接而成。可以用于置數法和清零法的反饋。
利用74LS161和74LS00即可以組成60進制計數器作為分和秒計數器,(3)譯碼顯示電路
譯碼顯示器電路由譯碼器74LS48和數碼管組成 三. 制作調試
在制作電路過程中,連接兩點的電線布線要整齊,這樣容易查找錯誤?!?在第一次調試秒部分時,我們發現數碼管沒顯示,經過檢查發現是芯片的電源沒有接。芯片接上電源和接地后,數碼管正常工作。開始沒有注意到555芯片與其他芯片引腳的不同,使得一直沒有脈沖出現。四.總結
通過這次對數字鐘的設計與制作,我了解了設計電路的程序,也了解了關于數字鐘的原理與設計理念。在設計過程中,我更進一步地熟悉了數電課上學過各種芯片的結構、工作原理和其具體的使用方法。在連接六十進制的進位及二十四進制中,我對74LS161置數法和清零法有了更深的了解。在連接二十四進制、六十進制的進位要求熟悉邏輯電路及其芯片各引腳的功能,這樣在電路出錯時便能準確地找出錯誤所在并及時糾正。在調試電路的過程中出錯的主要原因都是接線和芯片的接觸不良以及接線的錯誤,所以接線的時候一定要細心,不要接錯。
在設計電路中,往往是先仿真后連接實物圖,但有時候仿真和電路連接并不是完全一致的
此次的數字鐘設計重在于仿真和接線,雖然能把電路圖接出來,并能正常顯示,但對于電路本身的原理并不是十分熟悉.總的來說,通過這次的設計實驗更進一步地增強了實驗的動手能力.