欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      基于FPGA的數(shù)字鐘課程設(shè)計

      時間:2019-05-14 17:16:54下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《基于FPGA的數(shù)字鐘課程設(shè)計》,但愿對你工作學(xué)習(xí)有幫助,當然你在寫寫幫文庫還可以找到更多《基于FPGA的數(shù)字鐘課程設(shè)計》。

      第一篇:基于FPGA的數(shù)字鐘課程設(shè)計

      計算機與信息工程系

      《脈沖與數(shù)字電路》 課程設(shè)計報告

      專業(yè)

      通信工程

      班級

      B090507

      學(xué)號

      B09050722

      姓名

      張亞威

      報告完成日期

      2011/06/24

      指導(dǎo)教師

      秦玉潔

      評語:

      成績:

      批閱教師簽名:

      批閱時間:

      1.任務(wù)和設(shè)計要求

      設(shè)計具有時、分、秒計數(shù)顯示,以24小時循環(huán)計時的時鐘電路,帶有清零和校準功能;

      2.設(shè)計原理

      采用硬件描述語言Verilog 進行編程,實現(xiàn)20MHZ晶振到1HZ的分頻;采用verilog語言實現(xiàn)數(shù)字表功能實現(xiàn)的各個模塊;通過各個模塊的代碼生成相應(yīng)的模塊原理圖;再將各個模塊生成的原理圖進行疊加組成一個數(shù)字表系統(tǒng);

      3.系統(tǒng)設(shè)計

      設(shè)計的數(shù)字表有6個輸入,16個輸出;

      6個輸入中,有一個是時鐘信號,開發(fā)板上的28號引腳輸入的50MHZ的時鐘信號;一個清零端,當數(shù)字表正常顯示時,按下清零端可以實現(xiàn)

      數(shù)字鐘整體電路圖:

      4.各個模塊設(shè)計

      基于EP1C6Q240C8的數(shù)字鐘設(shè)計,有6個模塊組成: Fdiv 分頻模塊

      Control 模式選擇模塊 Tune 校正模塊 Zoushi 時間正常運行模塊 Saomiao 數(shù)碼管動態(tài)掃描模塊; Decoder BCD譯碼模塊;

      Fdiv 模塊:

      功能:實現(xiàn)20MHZ的時鐘信號分成10KHZ的信號和1HZ的信號;

      輸入:clk 為20MHZ的時鐘信號; 輸出:f10000HZ 為10KH的時鐘信號;

      F1HZ 為1HZ的時鐘信號; Fdiv 模塊代碼:

      module fdiv(clk,f10000Hz,f1Hz);output f10000Hz,f1Hz;input clk;reg f10000Hz,f1Hz;integer CNT1=0,CNT2=0;always@(posedge clk)

      begin

      if(CNT1<1999)

      begin

      CNT1=CNT1+1;

      f10000Hz<=1'b0;

      end

      else

      begin

      CNT1=0;

      f10000Hz<=1'b1;

      end

      end

      always@(posedge f10000Hz)

      begin

      if(CNT2<9999)

      begin

      CNT2=CNT2+1;

      f1Hz<=1'b0;

      end

      else

      begin

      CNT2=0;

      f1Hz<=1'b1;

      end

      end endmodule fdiv 模塊波形仿真:

      由于實際的分頻波形仿真中,由于要將20MHZ的分成1HZ的,需要將信號縮小20 000 000倍,因此,此處采用將20HZ的先分成10HZ,然后再將10HZ的分成1HZ的時鐘信號;在仿真中這樣整,在實際演示中再改下代碼,實現(xiàn)真正的20MHZ到1HZ的分頻;它們只是一個倍數(shù)關(guān)系而已;

      Control 模塊:

      功能:實現(xiàn)電子表的正常顯示及時間校正模式的轉(zhuǎn)換;

      輸入:key 模式修改鍵,每來一個高電平,mode加一次。如果mode 的值為2,則mode被賦值為 1;

      Reset 復(fù)位鍵,如果reset 為 1,則mode 被賦值為0; 輸出:mode 用于輸出到下一級模塊,進行模式判斷; Control 模塊源代碼:

      module control(mode,key,reset);input key,reset;output[1:0] mode;reg[1:0] mode;always@(posedge key)begin

      if(reset)

      begin

      mode<=2'b00;

      end

      else

      begin

      mode<=mode+2'b01;

      if(mode==2)

      begin

      mode<=2'b00;

      end

      end end endmodule Control 模塊波形仿真

      Tune 模塊

      功能:實現(xiàn)秒分時的校正;

      輸入:Mode 為模式選擇,mode為0時是正常顯示時間模式;mode 為1時,是秒、分、時加一模式。Mode為2時,是時分秒減一模式;

      Ht 為時調(diào)節(jié)輸入;

      mt 為分調(diào)節(jié)輸入;

      St 為秒調(diào)節(jié)輸入;

      輸出:Aa 為秒的個位;

      Ba 為秒的十位;

      Da 為分鐘的個位;

      Ea 為分鐘的十位;

      Ga 為小時的個位;

      Ha 為小時的十位; Tune 調(diào)時模塊源代碼:

      module tune(mode,ht,mt,st,aa,ba,da,ea,ga,ha);input[1:0] mode;input ht;input mt;input st;output[3:0] aa;output[2:0] ba;output[3:0] da;output[2:0] ea;output[3:0] ga;output[1:0] ha;reg[3:0] aa,da,ga;reg[2:0] ba,ea;reg[1:0] ha;

      always@(posedge st)begin

      if(mode==1)

      begin

      aa<=aa+1;

      if(aa==9)

      begin

      ba<=ba+1;

      aa<=0;

      end

      if(ba==5&&aa==9)

      ba<=0;

      end

      else if(mode==2)

      begin

      aa<=aa-1;

      if(aa==0)

      begin

      ba<=ba-1;

      aa<=9;

      end

      if(ba==0&&aa==0)

      ba<=5;

      end end always@(posedge mt)begin

      if(mode==1)

      begin

      da<=da+1;

      if(da==9)

      begin

      ea<=ea+1;

      da<=0;

      end

      if(ea==5&&da==9)

      ea<=0;

      end

      else if(mode==2)

      begin

      da<=da-1;

      if(da==0)

      begin

      ea<=ea-1;

      da<=9;

      end

      if(ea==0&&da==0)

      ea<=5;

      end end always@(posedge ht)begin

      if(mode==1)

      begin

      ga<=ga+1;

      if(ga==9)

      begin

      ha<=ha+1;

      ga<=0;

      end

      if(ha==2&&ga==3)

      begin

      ha<=0;

      ga<=0;

      end

      end

      else if(mode==2)

      begin

      ga<=ga-1;

      if(ga==0)

      begin

      ha<=ha-1;

      ga<=9;

      end

      if(ga==0&&ha==0)

      begin

      ga<=3;

      ha<=2;

      end

      end end

      endmodule Tune

      調(diào)時模塊仿真波形:

      Mode 為0 時,ht,mt,st均不起作用;

      Mode 為1時,小時加到23,ht再來一個上升沿,小時變?yōu)?;

      Mode 為1時,秒、分加到59,st、mt再來一個上升沿,秒、分變成0;

      Mode 為2時,小時減到0,ht再來一個上升沿,小時變?yōu)?3;

      Mode 為2時,秒、分減到0,st、mt再來一個上升沿,秒、分變成59;

      Zou shi模塊:

      功能:實現(xiàn)時間的正常顯示及校正顯示;

      正常顯示,當秒加到59時,1HZ的脈沖信號CLK1再來一個上升沿,秒變?yōu)?,同時分加一;

      當正常顯示時,復(fù)位端來一個上升沿的脈沖,顯示變成輸入端輸入的數(shù)據(jù);

      Mode 變成模式1時,顯示變成輸入端輸入的數(shù)據(jù);

      Mode 變成模式2時,顯示變成輸入端輸入的數(shù)據(jù);

      Sao miao模塊:

      功能:實現(xiàn)數(shù)碼管的動態(tài)掃描;

      輸入:clk10K 輸入10KHZ的時鐘信號作為數(shù)碼管的動態(tài)掃描時鐘信號;

      a[3..0] 上一級輸出的秒的個位;

      b[2..0] 上一級輸出的秒的十位;

      c[3..0] 上一級輸出的分秒之間的標志位;

      d[3..0] 上一級輸出的分的個位;

      e[2..0] 上一級輸出的分的十位;

      f[2..0] 上一級輸出的秒的時分之間的標志位; g[3..0] 上一級輸出的時的個位;

      h[2..0] 上一級輸出的時的個位;

      輸出:zx[3..0]數(shù)碼管將要顯示的4位BCD碼;

      Zw[7..0]八位數(shù)碼管動態(tài)掃描輸出; Sao miao 數(shù)碼管掃描模塊源代碼:

      module saomiao(a,b,c,d,e,f,g,h,f10000HZ,zx,zw);input f10000HZ;input[3:0] a,d,g,c,f;input[2:0] b,e;input[1:0] h;output[3:0] zx;output[7:0] zw;reg[3:0] zx;

      reg[7:0] zw;reg[2:0] slip;always@(posedge f10000HZ)begin

      if(slip==100)

      slip<=4'b000;

      else

      slip<=slip+1'b1;end always@(slip)begin

      case(slip)

      4'd0:begin zw=8'b11111110;zx=a;end

      4'd1:begin zw=8'b11111101;zx=b;end

      4'd2:begin zw=8'b11111011;zx=c;end

      4'd3:begin zw=8'b11110111;zx=d;end

      4'd4:begin zw=8'b11101111;zx=e;end

      4'd5:begin zw=8'b11011111;zx=f;end

      4'd6:begin zw=8'b10111111;zx=g;end

      4'd7:begin zw=8'b01111111;zx=h;end

      default:zw=8'bx;

      endcase end endmodule Sao miao 數(shù)碼管掃描模塊仿真波形:

      Zx顯示的是上一級輸出的4位BCD碼,此處是以十進制的形式顯示的;

      Decoder 模塊:

      功能:將上一級輸出的4為BCD碼轉(zhuǎn)換成數(shù)碼管能正常顯示的數(shù)據(jù);

      輸入:zx[3..0]上一級輸出的4位BCD碼; 輸出:seg[6..0]數(shù)碼管能正常顯示的數(shù)據(jù);

      Decoder 譯碼模塊源代碼: module decoder(zx,seg);input[3:0] zx;output[6:0] seg;reg[6:0] seg;always@(zx)begin case(zx)4'b0000: seg<=7'b0111111;4'b0001: seg<=7'b0000110;4'b0010: seg<=7'b1011011;4'b0011: seg<=7'b1001111;4'b0100: seg<=7'b1100110;4'b0101: seg<=7'b1101101;4'b0110: seg<=7'b1111101;4'b0111: seg<=7'b0000111;4'b1000: seg<=7'b1111111;4'b1001: seg<=7'b1101111;4'b1010: seg<=7'b1000000;

      default:seg<=7'bx;

      endcase end endmodule Decoder 譯碼模塊仿真波形:

      輸入的4位BCD碼從0~10,則數(shù)碼管顯示0~9和一橫標志位;

      5.系統(tǒng)調(diào)試與性能分析

      在第一次做好之后,下載到開發(fā)板里面,出現(xiàn)了問題,不能下載成功;最初認為是下載器的驅(qū)動沒有安裝好,后來經(jīng)過認真的分析是因為在選擇芯片的時候,選錯了芯片;在進行了芯片的正確選擇,以及引腳的正確配置后,成功的加生成的.sof文件下載到了開發(fā)板中;

      6.設(shè)計過程中遇到的問題及解決方法。

      程序完全調(diào)時成功后,下載到開發(fā)板中,顯示全部為0,可能是時鐘分頻的問題;解決方法是修改源代碼,進行正確的時鐘信號分頻;

      第二篇:FPGA課程設(shè)計多功能數(shù)字鐘講解

      多功能數(shù)字鐘

      開課學(xué)期:2014—2015 學(xué)年第二學(xué)期 課程名稱: FPGA課程設(shè)計

      學(xué) 院: 信息科學(xué)與工程學(xué)院

      專 業(yè): 集成電路設(shè)計與集成系統(tǒng)

      班 級: 學(xué) 號: 姓 名:

      任課教師:

      2015 年 7 月 21 日

      說 明

      一、論文書寫要求與說明

      1.嚴格按照模板進行書寫。自己可以自行修改標題的題目 2.關(guān)于字體:

      a)題目:三號黑體加粗。

      b)正文:小四號宋體,行距為1.25倍。

      3.嚴禁抄襲和雷同,一經(jīng)發(fā)現(xiàn),成績即判定為不及格?。?/p>

      二、設(shè)計提交說明

      1.設(shè)計需要提交“電子稿”和“打印稿”;

      2.“打印稿”包括封面、說明(即本頁內(nèi)容)、設(shè)計內(nèi)容三部分;訂書機左邊裝訂。

      3.“電子稿”上交:文件名為 “FPGA課程設(shè)計報告-班級-學(xué)號-姓名.doc”,所有報告發(fā)送給班長,由班長統(tǒng)一打包后統(tǒng)一發(fā)送到付小倩老師。

      4.“打印稿”由班長收齊后交到:12教305辦公室; 5.上交截止日期:2015年7月31日17:00之前。

      第一章

      緒論....................................................................................................................3 關(guān)鍵詞:FPGA,數(shù)字鐘....................................................................................................3 第二章 FPGA的相關(guān)介紹...............................................................................................4 2.1 FPGA概述........................................................................................................4 2.2 FPGA特點...........................................................................................................4 2.3 FPGA設(shè)計注意...................................................................................................5 第三章 Quartus II與Verilog HDL相關(guān)介紹..................................................................7 3.1 Quartus II..............................................................................................................7 3.2 Verilog HDL......................................................................................................7 第四章 設(shè)計方案..............................................................................................................8 4.1數(shù)字鐘的工作原理..............................................................................................8 4.2 按鍵消抖.............................................................................................................8 4.3時鐘復(fù)位..............................................................................................................8 4.4時鐘校時..............................................................................................................8 4.5數(shù)碼管顯示模塊。..............................................................................................8 第五章 方案實現(xiàn)與驗證..................................................................................................9 5.1產(chǎn)生秒脈沖..........................................................................................................9 5.2秒個位進位..........................................................................................................9 5.3按鍵消抖..............................................................................................................9 5.4復(fù)位按鍵設(shè)置....................................................................................................10 5.5 數(shù)碼管顯示。...................................................................................................10 5.6 RTL結(jié)構(gòu)總圖....................................................................................................11 第六章 實驗總結(jié)............................................................................................................14 第七章 Verilog HDL源代碼附錄..................................................................................15

      第一章

      緒論

      現(xiàn)代社會的標志之一就是信息產(chǎn)品的廣泛使用,而且是產(chǎn)品的性能越來越強,復(fù)雜程度越來越高,更新步伐越來越快。支撐信息電子產(chǎn)品高速發(fā)展的基礎(chǔ)就是微電子制造工藝水平的提高和電子產(chǎn)品設(shè)計開發(fā)技術(shù)的發(fā)展。前者以微細加工技術(shù)為代表,而后者的代表就是電子設(shè)計自動化(electronic design automatic, EDA)技術(shù)。

      本設(shè)計采用的VHDL是一種全方位的硬件描述語言,具有極強的描述能力,能支持系統(tǒng)行為級、寄存器傳輸級和邏輯門級這三個不同層次的設(shè)計;支持結(jié)構(gòu)、數(shù)據(jù)流、行為三種描述形式的混合描述,覆蓋面廣,抽象能力強,因此在實際應(yīng)用中越來越廣泛。ASIC是專用的系統(tǒng)集成電路,是一種帶有邏輯處理的加速處理器;而FPGA是特殊的ASIC芯片,與其它的ASIC芯片相比,它具有設(shè)計開發(fā)周期短、設(shè)計制造成本低、開發(fā)工具先進、標準產(chǎn)品無需測試、質(zhì)量穩(wěn)定以及可實時在線檢測等優(yōu)點。

      在控制系統(tǒng)中,鍵盤是常用的人機交換接口,當所設(shè)置的功能鍵或數(shù)字鍵按下的時候,系統(tǒng)應(yīng)該完成該鍵所對應(yīng)的功能。因此,按鍵信息輸入是與軟件結(jié)構(gòu)密切相關(guān)的過程。根據(jù)鍵盤結(jié)構(gòu)的不同,采用不同的編碼方法,但無論有無編碼以及采用什么樣的編碼,最后都要轉(zhuǎn)換成為相應(yīng)的鍵值,以實現(xiàn)按鍵功能程序的轉(zhuǎn)移。[1] 鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便,而且大大地擴展了鐘表原先的報時功能。諸如定時自動報警、定時啟閉電路、定時開關(guān)烘箱、通斷動力設(shè)備,甚至各種定時電氣的自動啟用等,所有這些都是以鐘表數(shù)字化為基礎(chǔ)的。因此研究數(shù)字鐘以及擴大其應(yīng)用有著非?,F(xiàn)實的意義。

      關(guān)鍵詞:FPGA,數(shù)字鐘

      第二章 FPGA的相關(guān)介紹

      FPGA(Field-Programmable Gate Array),即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點。

      2.1 FPGA概述

      系統(tǒng)設(shè)計師可以根據(jù)需要通過可編輯的連接把FPGA內(nèi)部的邏輯塊連接起來,就好像一個電路試驗板被放在了一個芯片里。一個出廠后的成品FPGA的邏輯塊和連接可以按照設(shè)計者而改變,所以FPGA可以完成所需要的邏輯功能。

      FPGA一般由3種可編程電路和一個用于存放編程數(shù)據(jù)的靜態(tài)存儲器SRAM組成。這3種可編程電路是:可編程邏輯模塊(CLB--Configurable Logic Block)、輸入/輸出模塊(IOB--I/O Block)和互連資源(IR—Interconnect Resource)??删幊踢壿嬆KCLB是實現(xiàn)邏輯功能的基本單元,它們通常規(guī)則的排列成一個陣列,散布于整個芯片;可編程輸入/輸出模塊(IOB)主要完成芯片上的邏輯與外部封裝腳的接口,它通常排列在芯片的四周;可編程互連資源包括各種長度的連接線段和一些可編程連接開關(guān),它們將各個CLB之間或CLB、IOB之間以及IOB之間連接起來,構(gòu)成特定功能的電路。

      FPGA一般來說比ASIC(專用集成芯片)的速度要慢,無法完成復(fù)雜的設(shè)計,而且消耗更多的電能。但是他們也有很多的優(yōu)點比如可以快速成品,可以被修改來改正程序中的錯誤和更便宜的造價。廠商也可能會提供便宜的但是編輯能力差的FPGA。因為這些芯片有比較差的可編輯能力,所以這些設(shè)計的開發(fā)是在普通的FPGA上完成的,然后將設(shè)計轉(zhuǎn)移到一個類似于ASIC的芯片上。另外一種方法是用CPLD(復(fù)雜可編程邏輯器件備)。

      2.2 FPGA特點

      FPGA的基本特點主要有:

      1)采用FPGA設(shè)計ASIC電路,用戶不需要投片生產(chǎn),就能得到合用的芯片。

      2)FPGA可做其它全定制或半定制ASIC電路的中試樣片。3)FPGA內(nèi)部有豐富的觸發(fā)器和I/O引腳。

      4)FPGA是ASIC電路中設(shè)計周期最短、開發(fā)費用最低、風(fēng)險最小的器件之一。5)FPGA采用高速CHMOS工藝,功耗低,可以與CMOS、TTL電平兼容??梢哉f,F(xiàn)PGA芯片是小批量系統(tǒng)提高系統(tǒng)集成度、可靠性的最佳選擇之一。編程互連資源IR可以將FPGA內(nèi)部的CLB和CLB之間、CLB和IOB之間連接起來,構(gòu)成各種具有復(fù)雜功能的系統(tǒng)。

      FPGA是由存放在片內(nèi)RAM中的程序來設(shè)置其工作狀態(tài)的,因此,工作時需要對片內(nèi)的RAM進行編程。用戶可以根據(jù)不同的配置模式,采用不同的編程方式。

      加電時,F(xiàn)PGA芯片將EPROM中數(shù)據(jù)讀入片內(nèi)編程RAM中,配置完成后,F(xiàn)PGA進入工作狀態(tài)。掉電后,F(xiàn)PGA恢復(fù)成白片,內(nèi)部邏輯關(guān)系消失,因此,F(xiàn)PGA能夠反復(fù)使用。FPGA的編程無須專用的FPGA編程器,只須用通用的EPROM、PROM編程器即可。當需要修改FPGA功能時,只需換一片EPROM即可。這樣,同一片F(xiàn)PGA,不同的編程數(shù)據(jù),可以產(chǎn)生不同的電路功能。因此,F(xiàn)PGA的使用非常靈活。

      FPGA有多種配置模式:并行主模式為一片F(xiàn)PGA加一片EPROM的方式;主從模式可以支持一片PROM編程多片F(xiàn)PGA;串行模式可以采用串行PROM編程FPGA;外設(shè)模式可以將FPGA作為微處理器的外設(shè),由微處理器對其編程。

      2.3 FPGA設(shè)計注意

      不管你是一名邏輯設(shè)計師、硬件工程師或系統(tǒng)工程師,甚或擁有所有這些頭銜,只要你在任何一種高速和多協(xié)議的復(fù)雜系統(tǒng)中使用了FPGA,你就很可能需要努力解決好器件配置、電源管理、IP集成、信號完整性和其他的一些關(guān)鍵設(shè)計問題。不過,你不必獨自面對這些挑戰(zhàn),因為在當前業(yè)內(nèi)領(lǐng)先的FPGA公司里工作的應(yīng)用工程師每天都會面對這些問題,而且他們已經(jīng)提出了一些將令你的設(shè)計工作變得更輕松的設(shè)計指導(dǎo)原則和解決方案。

      本次實驗所采用的FPGA器件是Altera Cyclone V 5CSEMA5F31C6N

      FPGA實物圖

      FPGA數(shù)碼管介紹,每節(jié)數(shù)碼管低電平點亮高電平熄滅。LED序號如下圖所示:

      根據(jù)上圖所示的順序,可以得出顯示的數(shù)組代碼。

      4'd0: HEX0=7'b1000000;4'd1: HEX0=7'b1111001;4'd2: HEX0=7'b0100100;4'd3: HEX0=7'b0110000;4'd4: HEX0=7'b0011001;4'd5: HEX0=7'b0010010;4'd6: HEX0=7'b0000010;4'd7: HEX0=7'b1111000;4'd8: HEX0=7'b0000000;4'd9: HEX0=7'b0010000;

      //0 低電平點亮高電平熄滅 //1 //2 //3 //4 //5 //6 //7 //8 //9 default: HEX0=7'b1111111;//不符合條件的顯示零

      第三章 Quartus II與Verilog HDL相關(guān)介紹

      3.1 Quartus II Quartus II 是Altera公司的綜合性PLD/FPGA開發(fā)軟件,原理圖、VHDL、VerilogHDL以及AHDL(Altera Hardware 支持Description Language)等多種設(shè)計輸入形式,內(nèi)嵌自有的綜合器以及仿真器,可以完成從設(shè)計輸入到硬件配置的完整PLD設(shè)計流程。Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模塊庫,使用戶可以充分利用成熟的模塊,簡化了設(shè)計的復(fù)雜性、加快了設(shè)計速度。對第三方EDA工具的良好支持也使用戶可以在設(shè)計流程的各個階段使用熟悉的第三方EDA工具。

      Quartus II 軟件擁有友好的界面,使用便捷,功能強大,當中可編程邏輯設(shè)計環(huán)境采用完成集成化,是先進的EDA工具軟件。該軟件具備諸多特點(例如:開放性,與結(jié)構(gòu)無聯(lián)系,多平臺設(shè)計,完全集成化,設(shè)計庫豐富、工具模塊化等),支持原理圖、VHDL、VerilogHDL以及AHDL等多種設(shè)計輸入形式。Quartus II能夠在多系統(tǒng)上使用,為用戶的設(shè)計方式提供了完善的圖形界面。具有運行速度快,界面統(tǒng)一,功能集中,學(xué)用簡單等特點。

      圖形或HDL編輯Analysis & Synthesis(分析與綜合)Filter(適配器)Assembler(編程文件匯編)編輯器Timing Analyzer(時序分析器)設(shè)計輸入綜合或編譯適配器件下載仿真

      3.2 Verilog HDL

      Verilog HDL是一種硬件描述語言(HDL:Hardware Description Language),以文本形式來描述數(shù)字系統(tǒng)硬件的結(jié)構(gòu)和行為的語言,用它可以表示邏輯電路圖、邏輯表達式,還可以表示數(shù)字邏輯系統(tǒng)所完成的邏輯功能。Verilog HDL和VHDL是世界上最流行的兩種硬件描述語言,都是在20世紀80年代中期開發(fā)出來的。前者由Gateway Design Automation公司(該公司于1989年被Cadence公司收購)開發(fā)。兩種HDL均為IEEE標準。

      第四章 設(shè)計方案

      4.1數(shù)字鐘的工作原理

      振蕩器產(chǎn)生穩(wěn)定的高頻脈沖信號,作為數(shù)字鐘的時間基準,然后經(jīng)過分頻器輸出標準秒脈沖。秒計數(shù)器滿60后向分計數(shù)器進位,分計數(shù)器滿60后向小時計數(shù)器進位,小時計數(shù)器按照“24翻0”規(guī)律計數(shù)。計數(shù)滿后各計數(shù)器清零,重新計數(shù)。計數(shù)器的輸出分別經(jīng)譯碼器送數(shù)碼管顯示。計時出現(xiàn)誤差時,可以用校時電路校時、校分??刂菩盘栍扇齻€獨立按鍵輸入。輸入信號選擇FPGA器件上的50MHZ時鐘信號。

      4.2 按鍵消抖

      因為按鍵的物理結(jié)構(gòu)并非理想式開關(guān),在按鍵按下后會在一個很短的時間內(nèi)出現(xiàn)電平抖動的情況,因此需要對按鍵進行消抖處理。這里的按鍵消抖與單片機中的按鍵消抖問題有所不同,不能采用延時的方法進行按鍵消抖,這里我選用對時鐘脈沖計數(shù)的方式來判斷按鍵是否按下。采用50MHZ時鐘信號,實測160ms的消抖時長較為合適,即8000000個時鐘上升沿。

      4.3時鐘復(fù)位

      按下復(fù)位按鍵后,所有位清零。

      4.4時鐘校時

      時鐘計時過程中,可對時鐘進行校時。本次設(shè)計不考慮對秒位進行校時,分鐘的個位和小時的個位加到10時會自動進位,因此只對分鐘的個位和小時的個位設(shè)置可以加1的校時按鈕,即可實現(xiàn)校時功能。整體比較容易實現(xiàn)。

      4.5數(shù)碼管顯示模塊。

      選擇需要顯示的時鐘位數(shù)作為敏感詞,用上述給出的顯示代碼對時鐘的每一位分別進行顯示處理。

      第五章 方案實現(xiàn)與驗證

      5.1產(chǎn)生秒脈沖

      always@(posedge clk)。。。

      如代碼展現(xiàn),當計數(shù)器count記到50000000個時鐘上升沿的時候,向秒個位進1.count=count+1;

      begin

      end count=0;count_s0=count_s0+1;

      //秒個位計數(shù)

      if(count==32'd50000000)

      //產(chǎn)生一個一秒的脈沖,//敏感詞為50MHZ時鐘上升沿

      5.2秒個位進位

      當秒的個位計數(shù)到10的時候,向秒的十位進位。

      if(count_s0==4'd10)

      begin

      end count_s0=0;count_s1=count_s1+1;

      //產(chǎn)生秒十位進位

      5.3按鍵消抖

      if(!inrst_m0)

      count0=count0+1;if(count0==32'd8000000 &&!inrst_m0)

      begin count0=0;count_m0=count_m0+1;end

      對時鐘秒沖進行計數(shù),計數(shù)達到8000000時,判斷此時的電平是否為0,若還是為0,則判斷按鍵按下,執(zhí)行分鐘個位加1操作。

      5.4復(fù)位按鍵設(shè)置

      begin

      if(!reset)

      begin

      count=0;

      count_s0=0;count_s1=0;

      count_m0=0;count_m1=0;

      count_h0=0;count_h1=0;

      end else

      復(fù)位按鍵按下后所有位置零。

      5.5 數(shù)碼管顯示。

      always@(count_s0)

      begin

      case(count_s0)

      4'd0: HEX0=7'b1000000;

      4'd1: HEX0=7'b1111001;

      4'd2: HEX0=7'b0100100;

      4'd3: HEX0=7'b0110000;

      4'd4: HEX0=7'b0011001;

      4'd5: HEX0=7'b0010010;

      4'd6: HEX0=7'b0000010;

      4'd7: HEX0=7'b1111000;

      4'd8: HEX0=7'b0000000;

      4'd9: HEX0=7'b0010000;

      default: HEX0=7'b1111111;

      endcase end

      //按鍵按下為邏輯0

      //復(fù)位置零

      //秒個位顯示

      //0 低電平點亮高電平熄滅 //1 //2 //3 //4 //5 //6 //7 //8 //9

      //不符合條件的顯示零

      5.6 RTL結(jié)構(gòu)總圖

      顯示部分如下圖:

      判斷主體如下圖:

      部分引腳圖展現(xiàn)

      最終實驗現(xiàn)象:

      第六章 實驗總結(jié)

      其實本次的多功能數(shù)字鐘設(shè)計其實應(yīng)該還有很多其他的方法,比如用到外部中斷功能進行時鐘的校時,采用按鍵輸入加數(shù)碼管閃爍的方式進行校時位的選擇,但限于時間較短,這部分知識空白,所以本次設(shè)計實有所缺陷。

      經(jīng)歷了本次FPGA的設(shè)計,有很多感受,首先就是看了一點數(shù)字鐘設(shè)計方面的資料,遇到很多不理解的地方,于是就需要再和同學(xué)進行研究討論,在討論的過程中,能聽到其他人的思路,感覺特別有意思,同樣的功能,實現(xiàn)的方法有許許多多,努力把自己的想法實現(xiàn),或是選擇一種你喜歡的設(shè)計借鑒一下,兩者都是很好的選擇。

      通過這次設(shè)計實驗,著實培養(yǎng)了我們獨立思考、解決問題的能力,從最一開始的一籌莫展,沒有一點思路,感覺像平底拔樓一樣,從兩手空空到產(chǎn)生一個控制電路,從無到有,這是創(chuàng)造的力量。同時,和其他同學(xué)討論的過程也很重要,要說的還有就是最后實驗成功的喜悅是無可替代的,就好像你親手種的果樹長出了果實,養(yǎng)的雞下了雞蛋,是一種創(chuàng)造的喜悅,整個心就像是一個大箱子里面放著一塊糖,隱隱約約總能感覺到一絲甜蜜。

      數(shù)碼管顯示的數(shù)字鐘是常見的技術(shù),這次基于FPGA的多功能數(shù)字鐘設(shè)計具有很高的工程價值和現(xiàn)實意義。讓我們將知識服務(wù)于生活,將知識用于實踐,鍛煉了我們發(fā)現(xiàn)問題解決問題的能力。

      這次FPGA的多功能數(shù)字鐘設(shè)計,加深了我們對FPGA設(shè)計的理解,培養(yǎng)了我們的邏輯思維和動手操作能力,使我們將知識與技能鏈接起來,使我們每個人的都在不斷進步,提高了專業(yè)技能,提高了動手實踐的綜合能力。

      第七章 Verilog HDL源代碼附錄

      module clock(reset,inrst_m0,inrst_h0,clk,HEX0,HEX1,HEX2,HEX3,HEX4,HEX5);input clk,reset,inrst_m0,inrst_h0;output reg [6:0] HEX0,HEX1,HEX2,HEX3,HEX4,HEX5;reg [31:0] count=0,count0=0,count1=0;reg [3:0] count_s0=0,count_s1=0,count_m0=0,count_m1=0, count_h0=0,count_h1=0;

      //實際寬度為25 always@(posedge clk)begin

      if(!inrst_m0)

      count0=count0+1;if(count0==32'd8000000 &&!inrst_m0)//按鍵消抖

      begin count0=0;count_m0=count_m0+1;end if(!inrst_h0)count1=count1+1;if(count1==32'd8000000 &&!inrst_h0)

      begin count1=0;count_h0=count_h0+1;end

      //按鍵按下為邏輯0

      //復(fù)位置零 if(!reset)begin count=0;count_s0=0;count_s1=0;count_m0=0;count_m1=0;count_h0=0;count_h1=0;end count=count+1;begin else

      if(count==32'd50000000)

      //產(chǎn)生一個一秒的脈沖,end count=0;count_s0=count_s0+1;

      //秒個位計數(shù)

      else if(count_s0==4'd10)

      begin

      end count_s0=0;count_s1=count_s1+1;

      //產(chǎn)生秒十位進位

      else if(count_s1==4'd6)

      begin

      end

      //分個位計數(shù) count_s1=0;count_m0=count_m0+1;else if(count_m0==4'd10)

      begin

      end

      //分十位計數(shù) count_m0=0;count_m1=count_m1+1;else if(count_m1==4'd6)

      begin

      end

      //時個位計數(shù) count_m1=0;count_h0=count_h0+1;else if(count_h0==4'd10)

      begin

      end

      //滿24判斷 count_h0=0;count_h1=count_h1+1;else if(count_h0==4 && count_h1==2)

      begin

      count_h0=0;

      count_h1=0;end

      end

      always@(count_s0)

      begin

      case(count_s0)

      4'd0: HEX0=7'b1000000;

      4'd1: HEX0=7'b1111001;

      4'd2: HEX0=7'b0100100;

      4'd3: HEX0=7'b0110000;

      4'd4: HEX0=7'b0011001;

      4'd5: HEX0=7'b0010010;

      4'd6: HEX0=7'b0000010;

      4'd7: HEX0=7'b1111000;

      4'd8: HEX0=7'b0000000;

      4'd9: HEX0=7'b0010000;

      default: HEX0=7'b1111111;

      endcase end

      always@(count_s1)

      begin

      case(count_s1)

      4'd0: HEX1=7'b1000000;

      4'd1: HEX1=7'b1111001;

      4'd2: HEX1=7'b0100100;

      4'd3: HEX1=7'b0110000;

      4'd4: HEX1=7'b0011001;

      4'd5: HEX1=7'b0010010;

      default: HEX1=7'b1111111;endcase

      //秒個位顯示

      //0 低電平點亮高電平熄滅//1 //2 //3 //4 //5 //6 //7 //8 //9

      //不符合條件的顯示零

      //秒十位顯示

      //0 低電平點亮高電平熄滅//1 //2 //3 //4 //5

      //不符合條件的顯示零

      end

      always@(count_m0)

      begin

      case(count_m0)

      4'd0: HEX2=7'b1000000;

      4'd1: HEX2=7'b1111001;

      4'd2: HEX2=7'b0100100;

      4'd3: HEX2=7'b0110000;

      4'd4: HEX2=7'b0011001;

      4'd5: HEX2=7'b0010010;

      4'd6: HEX2=7'b0000010;

      4'd7: HEX2=7'b1111000;

      4'd8: HEX2=7'b0000000;

      4'd9: HEX2=7'b0010000;

      default: HEX2=7'b1111111;

      endcase end always@(count_m1)

      begin

      case(count_m1)

      4'd0: HEX3=7'b1000000;

      4'd1: HEX3=7'b1111001;

      4'd2: HEX3=7'b0100100;

      4'd3: HEX3=7'b0110000;

      4'd4: HEX3=7'b0011001;

      4'd5: HEX3=7'b0010010;

      default: HEX3=7'b1111111;

      endcase end always@(count_h0)

      begin

      case(count_h0)

      4'd0: HEX4=7'b1000000;4'd1: HEX4=7'b1111001;

      //分個位顯示

      //0 低電平點亮高電平熄滅 //1 //2 //3 //4 //5 //6 //7 //8 //9

      //不符合條件的顯示零

      //分十位顯示

      //0 低電平點亮高電平熄滅 //1 //2 //3 //4 //5

      //不符合條件的顯示零

      //時個位顯示

      //0 低電平點亮高電平熄滅 //1

      4'd2: HEX4=7'b0100100;

      4'd3: HEX4=7'b0110000;

      4'd4: HEX4=7'b0011001;

      4'd5: HEX4=7'b0010010;

      4'd6: HEX4=7'b0000010;

      4'd7: HEX4=7'b1111000;

      4'd8: HEX4=7'b0000000;

      4'd9: HEX4=7'b0010000;

      default: HEX4=7'b1111111;endcase End

      always@(count_h1)

      begin

      case(count_h1)

      4'd0: HEX5=7'b1000000;

      4'd1: HEX5=7'b1111001;

      4'd2: HEX5=7'b0100100;

      default: HEX5=7'b1111111;

      endcase end

      endmodule

      //2 //3 //4 //5 //6 //7 //8 //9

      //不符合條件的顯示零

      //時十位顯示

      //0 低電平點亮高電平熄滅//1 //2

      //不符合條件的顯示零

      第三篇:fpga數(shù)字鐘課程設(shè)計報告

      課程設(shè)計報告

      設(shè)計題目:基于FPGA的數(shù)字鐘設(shè)計

      班級:電子信息工程1301 學(xué)號:20133638 姓名:王一丁

      指導(dǎo)教師:李世平

      設(shè)計時間:2016年1月

      摘要

      EDA(Electronic Design Automation)電子設(shè)計自動化,是以大規(guī)??删幊唐骷樵O(shè)計載體,以硬件描述語言為系統(tǒng)邏輯描述的主要表達方式,通過相關(guān)的軟件,自動完成軟件方式設(shè)計得電子系統(tǒng)到硬件系統(tǒng),最終形成集成電子系統(tǒng)或?qū)S眉尚酒?。本次課程設(shè)計利用Quartus II 為設(shè)計軟件,VHDL為硬件描述語言,結(jié)合所學(xué)知識設(shè)計一個多功能時鐘,具有顯示年、月、日、時、分、秒顯示,計時,整點報時,設(shè)定時間等功能。利用硬件描述語言VHDL 對設(shè)計系統(tǒng)的各個子模塊進行邏輯描述,采用模塊化的思想完成頂層模塊的設(shè)計,通過軟件編譯、邏輯化簡、邏輯綜合優(yōu)化、邏輯仿真、最終完成本次課程設(shè)計的任務(wù)。

      關(guān)鍵詞:EDA VHDL語言 數(shù)字鐘

      目 錄

      摘要 課程設(shè)計目的 課程設(shè)計內(nèi)容及要求 2.1 設(shè)計任務(wù)

      2.2 設(shè)計要求 VHDL程序設(shè)計

      3.1方案論證 3.2 系統(tǒng)結(jié)構(gòu)框圖 3.3設(shè)計思路與方法 3.3.1 狀態(tài)控制模塊 3.3.2 時分秒模塊 3.3.3 年月日模塊 3.3.4 顯示模塊 3.3.5脈沖產(chǎn)生模塊 3.3.6 揚聲器與鬧鐘模塊

      3.4 RTL整體電路 4 系統(tǒng)仿真與分析

      課程設(shè)計總結(jié),包括.收獲、體會和建議 6 參考文獻 1 課程設(shè)計目的

      (1)通過設(shè)計數(shù)字鐘熟練掌握EDA軟件(QUARTUS II)的使用方法,熟練進行設(shè)計、編譯,為以后實際工程問題打下設(shè)計基礎(chǔ)。

      (2)熟悉VHDL 硬件描述語言,提升分析、尋找和排除電子設(shè)計中常見故障的能力。

      (3)通過課程設(shè)計,鍛煉書寫有理論根據(jù)的、實事求是的、文理通順的課程設(shè)計報告。課程設(shè)計內(nèi)容及要求

      2.1 設(shè)計任務(wù)

      (1)6個數(shù)字顯示器顯示時分秒,setpin按鍵產(chǎn)生一個脈沖,顯示切換為年月日。

      (2)第二個脈沖可預(yù)置年份,第三個脈沖可以預(yù)置月份,依次第四、五、六、七個脈沖到來時分別可以預(yù)置時期、時、分、秒,第八個脈沖到來后預(yù)置結(jié)束正常從左顯示時分秒。

      (3)up為高時,upclk有脈沖到達時,預(yù)置位加一,否則減一。2.2 設(shè)計要求

      (1)在基本功能的基礎(chǔ)上,鬧鐘在整點進行報時,產(chǎn)生一定時長的高電平。

      (2)實現(xiàn)鬧鐘功能,可對鬧鐘時間進行預(yù)置,當達到預(yù)置時間時進行報時。

      VHDL程序設(shè)計 3.1方案論證

      該數(shù)字鐘可以實現(xiàn):計時功能、整點報時、鬧鐘和預(yù)置時間功能,因此時鐘系統(tǒng)可分為5個模塊:功能選擇模塊、時分秒計數(shù)模塊、年月日計數(shù)模塊、顯示模塊、揚聲器模塊、脈沖產(chǎn)生模塊。

      (1)功能選擇模塊是有狀態(tài)機構(gòu)成的,功能為依次進行、設(shè)置時間、設(shè)置鬧鐘時間。

      調(diào)整工作狀態(tài):數(shù)字鐘的初始狀態(tài)顯示時分秒,在setpin按鍵產(chǎn)生一個脈沖,顯示切換為年月日。

      設(shè)置時間:第二個脈沖可預(yù)置年份,第三個脈沖可以預(yù)置月份,依次第四、五、六、七個脈沖到來時分別可以預(yù)置時期、時、分、秒。第八個脈沖到來后,預(yù)置結(jié)束恢復(fù)初始狀態(tài),正常顯示時分秒。

      設(shè)置鬧鐘時間:鬧鐘在setpin1按鍵產(chǎn)生第一個脈沖時設(shè)定鬧鐘的時,第二個脈沖設(shè)定分,第三個脈沖設(shè)定秒,第四個脈沖恢復(fù)顯示時分秒。

      (2)時分秒計數(shù)模塊包括正常計時、鬧鐘、整點報時三個功能。

      正常計時功能通過軟件編寫,60進制的秒計數(shù)器,60進制的分計數(shù)器,24進制的時計數(shù)器。時分秒的計數(shù)器具有清0、置數(shù)、進位和計數(shù)功能。其中reset為清0信號,當reset為0時,時分秒的計數(shù)器清0。當set產(chǎn)生第四個脈沖后,連續(xù)產(chǎn)生的set信號使分秒計數(shù)器依次進行置數(shù)。以upclk為時鐘,通過up對預(yù)置位進行控制,當up為高時且upclk有脈沖到來時,預(yù)置位加一,否則減一。當set產(chǎn)生第八個脈沖時,數(shù)字鐘恢復(fù)時分秒的顯示。

      鬧鐘功能是在正常計數(shù)功能上拓展,分為鬧鐘時間預(yù)置和鬧鐘響應(yīng)兩個部分。鬧鐘時間預(yù)置功能:當set1連續(xù)產(chǎn)生脈沖時,依次對鬧鐘的時分秒位進行預(yù)置。以upclk為時鐘,通過up對預(yù)置位進行控制,當up為高時且upclk有脈沖到來時,預(yù)置位加一,否則減一。當set1產(chǎn)生第四個脈沖時,數(shù)字鐘恢復(fù)時分秒的顯示。與此同時在程序中增添變量時計時功能可以持續(xù)運行。鬧鐘響應(yīng)功能:通過預(yù)置后,儲存的變量與計時器模塊的時、分、秒進行比對,當時、分、秒相同時,模塊產(chǎn)生一個一段時間的高電平,傳輸給鬧鐘響應(yīng)模塊。

      整點報時功能:當計數(shù)器中的分位等于59,秒位等于59時,模塊產(chǎn)生一段高電平,輸出給揚聲器模塊進行報時。

      (3)年月日計數(shù)模塊分為年月日計數(shù)功能,年月日預(yù)置數(shù)功能。

      年月日計數(shù)功能:以時位的進位脈沖為計時脈沖,閏年二月份為29天,普通年二月份為28天。一月、三月、五月、七月、八月、十月、十二月為31天,四月、六月、九月、十一月為30天。

      年月日預(yù)置數(shù)功能:當set產(chǎn)生第一個脈沖后,依次進行年月日數(shù)器置數(shù)。以upclk為時鐘,通過up對預(yù)置位進行控制,當up為高時且upclk有脈沖到來時,預(yù)置位加一,否則減一。

      (4)顯示模塊:以時分秒,年月日模塊的輸出、狀態(tài)標志為輸入信號,通過狀態(tài)控制模塊產(chǎn)生的狀態(tài)標志對顯示模塊進行控制,顯示計時、預(yù)置時的不同狀態(tài)。

      (5)揚聲器模塊:輸入信號為分位、秒位和狀態(tài)信號,當計時時鐘到達整點是輸出高電平,其他時刻輸出低電平。

      (6)脈沖產(chǎn)生模塊:對輸入的信號進行1000分頻,產(chǎn)生周期為一秒的時鐘信號,用于數(shù)字鐘的時鐘輸入。

      3.2系統(tǒng)結(jié)構(gòu)框圖

      3.3設(shè)計思路與方法 3.3.1 狀態(tài)控制模塊

      狀態(tài)控制模塊實現(xiàn)對各個功能模塊的整體設(shè)計,包括對時間與日期的顯示與調(diào)整,鬧鐘的顯示與調(diào)整等控制操作。狀態(tài)機的輸入為setpin,setpin1,upclk。狀態(tài)機的狀態(tài)有11種狀態(tài)。g0:鬧鐘設(shè)置時位; g1:鬧鐘設(shè)置分位; g2:鬧鐘設(shè)置秒位;

      s0:時鐘顯示時分秒;s1:時鐘顯示年月日; s2:鐘設(shè)置年; s3:時鐘設(shè)置月; s4:時鐘設(shè)置日; s5:時鐘設(shè)置時; s6:時鐘設(shè)置分; s7:設(shè)置秒

      在產(chǎn)生如上狀態(tài)的同時產(chǎn)生Tlock,flag狀態(tài)標志,此標志用來進行時鐘設(shè)置、鬧鐘設(shè)置與顯示控制。RTL 電路圖

      實現(xiàn)代碼如下: process(upclk)begin if(upclk='1' and upclk'LAST_VALUE='0')then state<=next_state;--實現(xiàn)狀態(tài)變換

      end if;end process;process(state,setpin,setpin1)begin next_state<=state;case(state)is when s0 => Tlock<=“0000”;flag<='1';if(setpin1='1'

      and

      setpin1'LAST_VALUE='0')then next_state<=g0;end if;if(setpin='1'

      and

      setpin'LAST_VALUE='0')

      then next_state<=s1;end if;when s1=> Tlock<=“0001”;flag<='1';if(setpin1='1' and next_state<=g0;end if;if(setpin='1'

      and next_state<=s2;end if;when s2=> Tlock<=“0010”;flag<='1';if(setpin1='1' and next_state<=g0;end if;if(setpin='1'

      and next_state<=s3;end if;

      when s3=> Tlock<=“0011”;flag<='1';if(setpin1='1' and next_state<=g0;end if;

      setpin1'LAST_VALUE='0')then

      then

      setpin1'LAST_VALUE='0')then

      setpin'LAST_VALUE='0')

      then

      setpin1'LAST_VALUE='0')then

      setpin'LAST_VALUE='0')if(setpin='1' and next_state<=s4;end if;

      when s4=> Tlock<=“0100”;flag<='1';if(setpin1='1' and next_state<=g0;end if;if(setpin='1'

      and next_state<=s5;end if;when s5=> Tlock<=“0101”;flag<='1';if(setpin1='1' and next_state<=g0;end if;if(setpin='1'

      and next_state<=s6;end if;when s6=> Tlock<=“0110”;flag<='1';if(setpin1='1' and next_state<=g0;end if;if(setpin='1'

      and

      setpin'LAST_VALUE='0')then

      setpin1'LAST_VALUE='0')then

      then

      setpin1'LAST_VALUE='0')then

      then

      setpin1'LAST_VALUE='0')then

      then

      setpin'LAST_VALUE='0')

      setpin'LAST_VALUE='0')

      setpin'LAST_VALUE='0')next_state<=s7;end if;

      when s7=>

      Tlock<=“0111”;

      flag<='1';if(setpin1='1' and

      setpin1'LAST_VALUE='0')then next_state<=g0;end if;if(setpin='1'

      and next_state<=s0;end if;when g0=> Tlock<=“1000”;flag<='0';if(setpin1='1' and next_state<=g1;end if;if(setpin='1'

      and next_state<=s0;end if;

      when g1=> Tlock<=“1001”;flag<='0';if(setpin1='1' and next_state<=g2;end if;if(setpin='1'

      and next_state<=s0;end if;then

      setpin1'LAST_VALUE='0')then

      setpin'LAST_VALUE='0')

      then

      setpin1'LAST_VALUE='0')then

      setpin'LAST_VALUE='0')

      then

      setpin'LAST_VALUE='0')

      when g2=> Tlock<=“1010”;flag<='0';if(setpin1='1' next_state<=s0;end if;if(setpin='1'

      and

      setpin'LAST_VALUE='0')

      then

      and

      setpin1'LAST_VALUE='0')then next_state<=s0;end if;

      when others=> next_state<=s0;end case;end process;3.3.2 時分秒模塊

      時分秒模塊的輸入為ce(使能端),clk0(系統(tǒng)輸入時鐘),clk1(upclk時鐘),flag(標志位),lock(狀態(tài)位),up(預(yù)置位增減控制),ov(進位位),op(鬧鐘與揚聲器響應(yīng))。

      時分秒模塊的RTL電路圖 時鐘選擇方式:在初始狀態(tài)和顯示年月日的狀態(tài)下,時分秒模塊的時鐘輸入為系統(tǒng)時鐘輸入(clk0),在其他狀態(tài)下,時分秒模塊的時鐘輸入為(upclk時鐘)用來進行置位。

      實現(xiàn)代碼入下:

      process(lock,clk0,clk1)begin if(lock=“0000” or lock=“0001”)then clk<=clk0;--正常計數(shù)時選擇clk0 else clk<=clk1;--預(yù)置的時候clk1 end if;end process;時鐘計時功能,在顯示年月日,時分秒的狀態(tài)時,時鐘正常計數(shù)。當數(shù)字鐘處于置數(shù)狀態(tài)時,年、月、日、時、分、秒時鐘停止計時,各個位顯示預(yù)置數(shù)。在鬧鐘的預(yù)置功能實現(xiàn)的同時,通過增添變量,在設(shè)置鬧鐘的同時保證時鐘的正常計數(shù),在鬧鐘預(yù)置結(jié)束后,恢復(fù)到初始的時鐘顯示。3.2.3 年月日模塊

      年月日模塊分為日期增加和日期減小兩個部分,日期增加:在顯示時分秒,顯示年月日和設(shè)置完秒位的狀態(tài)下,如果是二月,通過函數(shù)判斷是否為閏年,其他月份對大小月進行判斷,大月為31天,小月為30天,代碼如下:

      if(clk'event and clk='1')then if(ce='1')then if(lock=“0000”)or(lock=“0001”)or(lock=“0100”and up='1')then

      if(mon0=“0010”and mon1=“0000”)then

      Feb_add_day(Td0,Td1,tempy0,tempy1,date0,date1);

      elsif((mon0=“0001”and mon0=“0000”)or(mon0=“0011”)or(mon0=“0101”)

      or(mon0=“0111”)or(mon0=“1000”)or(mon0=“0000”and mon1=“0001”)or(mon0=“0010”and mon1=“0001”))then

      oddmonth_add_day(Td0,Td1,date0,date1);

      else evenmonth_add_day(Td0,Td1,date0,date1);

      end if;

      end if;日期減少同理,代碼如下: if(lock=“0100”and up='0')then if(mon0=“0010”and mon1=“0000”)then Feb_add_day(Td0,Td1,tempy0,tempy1,date0,date1);elsif((mon0=“0001”and mon1=“0000”)or(mon0=“0011”)or(mon0=“0101”)or(mon0=“0111”)or(mon0=“1000”)or(mon0=“0000”and mon1=“0001”)

      or(mon0=“0010”and mon1=“0001”))then

      oddmonth_sub_day(Td0,Td1,date0,date1);

      else evenmonth_sub_day(Td0,Td1,date0,date1);

      END IF;

      end if;

      end if;

      end if;當以日位的進位為輸入,當存在輸入脈沖時,通過函數(shù)對月份進行加減,代碼如下: begin

      if(clk'event and clk='1')then

      if(ce='1')then

      if(lock=“0000”)or(lock=“0001”)or(lock=“0011”and up='1')then

      add_month(Tm0,Tm1,mon0,mon1);

      end if;

      if(lock=“0011”and up='0')then

      sub_month(Tm0,Tm1,mon0,mon1);

      end if;

      if(lock=“0000”)or(lock=“0001”)then

      if(mon0=“0010”and mon1=“0001”)then

      sub_year(Ty0,Ty1,year0,year1);

      end if;

      end if;

      if(lock=“0010”and up='1')then

      add_year(Ty0,Ty1,year0,year1);

      end if;

      if(lock=“0010”and up='0')then

      sub_year(Ty0,Ty1,year0,year1);

      end if;

      end if;

      end if;3.2.4 顯示模塊

      顯示模塊的輸入為年、月、日、時、分、秒、lock(狀態(tài)標志),通過if語句,狀態(tài)機一共提供11鐘狀態(tài)。在不同狀態(tài)下,給顯示模塊的年月日時分秒不同的輸入,從而得到要求的顯示。

      顯示電路的RTL電路 代碼如下:

      process(lock,sec0,sec1,min1,min0,hour1,hour0,date0,date1,mon0,mon1,year0,year1)begin if(lock=“0000”)then a0<=sec0;a1<=sec1;b0<=min0;b1<=min1;c0<=hour0;c1<=hour1;end if;if(lock=“0001”)then a0<=date0;a1<=date1;b0<=mon0;b1<=mon1;c0<=year0;c1<=year1;end if;if(lock=“0101”)or(lock=“1000”)then a0<=“1111”;a1<=“1111”;b0<=“1111”;b1<=“1111”;c0<=hour0;c1<=hour1;end if;if(lock=“0110”)or(lock=“1001”)then a0<=“1111”;a1<=“1111”;b0<=min0;b1<=min1;c0<=“1111”;c1<=“1111”;end if;if(lock=“0111”)or(lock=“1010”)then a0<=sec0;a1<=sec1;b0<=“1111”;b1<=“1111”;c0<=“1111”;c1<=“1111”;end if;if(lock=“0010”)then a0<=“1111”;a1<=“1111”;b0<=“1111”;b1<=“1111”;c0<=year0;c1<=year1;end if;if(lock=“0011”)then a0<=“1111”;a1<=“1111”;b0<=mon0;b1<=mon1;c0<=“1111”;c1<=“1111”;end if;if(lock=“0100”)then a0<=date0;a1<=date1;b0<=“1111”;b1<=“1111”;c0<=“1111”;c1<=“1111”;end if;end process;end led_disp_arc;3.2.5脈沖發(fā)生模塊(分頻電路)

      脈沖發(fā)生電路將提供的1000hz頻率分頻成1hz(供系統(tǒng)時鐘)。f1000為1000hz輸入,second_wave為分頻輸出。

      分頻器的RTL電路 代碼如下: process(f1000,cnt)begin if(f1000'event and f1000='1')then if(cnt=“00000011”)then cnt<=“000000000”;second_wave<=not second_wave;else cnt<=cnt+'1';end if;end if;end process;end second_wave_arc;3.2.6 揚聲器模塊

      模塊的輸入為clk(系統(tǒng)時鐘),op(響應(yīng)信號),vcc(鬧鐘使能端),ala(高電平輸出)。當vcc為高時,且當op有響應(yīng)信號輸入(高),鬧鐘產(chǎn)生一定時長的高電平。

      鬧鐘的RTL電路 代碼如下:

      signal temp1:std_logic_vector(3 downto 0);begin process(op,vcc,clk)begin if clk'event and clk='1' then if(vcc='1')then if(temp1=“1111”)then ala<=not ala;

      else

      temp1<=temp1+'1';

      ala<='1';

      end if;

      end if;

      end if;end process;end alarm_arc;

      3.3整體RTL電路

      系統(tǒng)仿真與分析 4.1對基本要求的仿真

      初態(tài)設(shè)置:setpin1=0;up=0;setpin置連續(xù)8個脈沖,f1000為頻率為1000hz的方波。

      分析:在setpin第一次脈沖到來時,顯示年月日,因為數(shù)字鐘是初始狀態(tài)所以年月日均為0。Setpin。第二次脈沖到來時對時進行預(yù)置數(shù),因為up=0,所以設(shè)置時位,時位在不斷地減小,在后面各位預(yù)置的過程中,每一位的預(yù)置過程都是減小。第三次脈沖來到是對分位進行預(yù)置,第四次脈沖到來時對秒位進行預(yù)置。第四次脈沖到來時對年進行預(yù)置,第五次脈沖到來時對月進行預(yù)置,第六次脈沖到來時對日進行預(yù)置。第七次脈沖到來時,數(shù)字鐘顯示時分秒,從仿真結(jié)果可以看出來,此時時鐘是從預(yù)置的時間開始計時的,第八次脈沖到來時,此時時鐘顯示的是年月日,此時顯示的年月日為預(yù)置的年月日。

      從上述分析可以看出,經(jīng)過仿真的程序基本達到數(shù)字鐘的基本要求,系統(tǒng)可靠。

      4.2對鬧鐘狀態(tài)轉(zhuǎn)換的仿真

      初始設(shè)置:初態(tài)設(shè)置:setpin1設(shè)計一個脈沖;up=0;setpin置連續(xù)2個脈沖,f1000為頻率為1000hz的方波。

      當?shù)谝粋€setpin脈沖到來時,顯示年月日,第二個setpin脈沖來臨時時鐘對年進行預(yù)置,此后setpin1的第一個脈沖到來,時鐘的狀態(tài)轉(zhuǎn)為對鬧鐘時間的設(shè)置,達到實驗要求。

      4.3對鬧鐘功能的仿真

      初始設(shè)置:初態(tài)設(shè)置:setpin1設(shè)計三個脈沖;up=0;f1000為頻率為1000hz的方波。

      數(shù)字鐘的原狀態(tài)顯示時分秒,由于未進行初始化,所以時分秒從0開始計時,當setpin1第一個脈沖到來時,數(shù)字鐘對鬧鐘的時刻的時位進行預(yù)置,當setpin1第二個脈沖到來時,數(shù)字鐘對鬧鐘的時刻的分位進行預(yù)置,當setpin1第三個脈沖到來時,數(shù)字鐘對鬧鐘的時刻的秒位進行預(yù)置,當?shù)谒膫€脈沖到來是恢復(fù)顯示時分秒,此時的時分秒已經(jīng)計數(shù)到51秒,符合預(yù)期,在設(shè)置鬧鐘的同時,時鐘依舊計數(shù),達到要求。

      同時從初始時刻,鬧鐘的揚聲器產(chǎn)生一定時長高電平可以看出整點報時功能良好,達到設(shè)計要求。課程設(shè)計總結(jié)(收獲、體會和建議)本次VHDL設(shè)計的數(shù)字鐘定義了三種類型的端口,分別是in、out、buffer。In和out端口使用簡單,buffer端口具有回讀功能,因為buffer類型的端口不能連接到其他類型的端口上,因此不利于子模塊原件例化,不利于大型設(shè)計。

      進程(Process)是VHDL中最為重要的部分,在本次設(shè)計中。我出現(xiàn)了對于時鐘引入,輸出多驅(qū)動,一個進程中不允許出現(xiàn)兩個時鐘沿觸發(fā)的錯誤,這些錯誤在未來的設(shè)計中都是應(yīng)該避免的。順序語句如IF語句、CASE語句、LOOP語句、變量賦值語句等必須出現(xiàn)在進程、函數(shù)或子程序內(nèi)部,而不能單獨出現(xiàn)在進程之外。

      本次實驗讓我對VHDL 語言有了更深的認識,對語言的運用更加熟悉,為未來的實際應(yīng)用打下了良好的基礎(chǔ)。因為實驗室的條件限制,并沒有將程序下載到實際器件中觀察現(xiàn)象,只是通過軟件對系統(tǒng)進行仿真,希望以后可以機會接觸并使用實際器件。6 參考文獻

      1.吳廷鑫.基于FPGA的多功能數(shù)字鐘設(shè)計[J].科技經(jīng)濟市場, 2015,(5): 1-5 2.徐大詔.基于FPGA實現(xiàn)的數(shù)字鐘設(shè)計[J].信息技術(shù), 2009,(12): 101-104 3.張子剛, 盧戈, 田鵬.基于VHDL的數(shù)字時鐘的設(shè)計[J].氣象水文海洋儀器, 2008,(2): 10-14 4.樊永寧, 張曉麗.基于VHDL的多功能數(shù)字鐘的設(shè)計[J].工礦自動化, 2006,(3): 92-94 5.江翠云 基于CPLD和VHDL的數(shù)字鐘的設(shè)計[期刊論文]-硅谷2010(2)

      第四篇:數(shù)字鐘課程設(shè)計

      晶體振蕩器電路

      晶體振蕩器電路給數(shù)字鐘提供一個頻率穩(wěn)定準確的32768Hz的脈沖,可保證數(shù)字鐘的走時準確及穩(wěn)定。不管是指針式的電子鐘還是數(shù)字顯示的電子鐘都使用了晶體振蕩器電路。分頻器電路

      分頻器電路將32768Hz的高頻方波信號經(jīng)74LS4060和74LS250的二分頻的分頻后得到1Hz的方波信號,可以供秒計數(shù)器進行計數(shù)。分頻器實際上也就是計數(shù)器。時間計數(shù)器電路

      時間計數(shù)電路由秒個位和秒十位計數(shù)器、分個位和分十位計數(shù)器及時個位和時十位計數(shù)器電路構(gòu)成,其中秒個位和秒十位計數(shù)器、分個位和分十位計數(shù)器為60進制計數(shù)器,時個位和時十位計數(shù)器可以設(shè)計為12進制計數(shù)器或者24進制計數(shù)器,我們這里根據(jù)自己的意愿設(shè)計成24進制計數(shù)器。譯碼驅(qū)動電路

      譯碼驅(qū)動電路將計數(shù)器輸出的8421BCD碼轉(zhuǎn)換為數(shù)碼管需要的邏輯狀態(tài),并且為保證數(shù)碼管正常工作提供足夠的工作電流。數(shù)碼管

      數(shù)碼管通常有發(fā)光二極管(LED)數(shù)碼管和液晶(LCD)數(shù)碼管,本設(shè)計采用的為LED數(shù)碼管。

      各單元模塊設(shè)計和分析 晶體振蕩器電路

      晶體振蕩器是構(gòu)成數(shù)字式時鐘的核心,它保證了時鐘的走時準確及穩(wěn)定。

      圖2 晶體振蕩器電路圖

      分頻器電路

      通常,數(shù)字鐘的晶體振蕩器輸出頻率較高,為了得到1Hz的秒信號輸入,需要對振蕩器的輸出信號進行分頻。

      通常實現(xiàn)分頻器的電路是計數(shù)器電路,一般采用多級2進制計數(shù)器來實現(xiàn)。例如,將32767Hz的振蕩信號分頻為1HZ的分頻倍數(shù)為32767(2于15極2進制計數(shù)器。時間計數(shù)單元

      時間計數(shù)單元有時計數(shù)、分計數(shù)和秒計數(shù)等幾個部分。

      時計數(shù)單元一般為24進制計數(shù)器計數(shù)器,其輸出為兩位8421BCD碼形式;分計數(shù)和秒計數(shù)單元為60進制計數(shù)器,其輸出也為8421BCD碼。

      本實驗采取了74LS90 用兩塊芯片進行級聯(lián)來產(chǎn)生60進制和24進制

      秒個位計數(shù)單元為10進制計數(shù)器,無需進制轉(zhuǎn)換,只需將Q0與CP1(下降沿有效)相連即可。CP0(下降沒效)與1HZ秒輸入信號相連,Q3可作為向上的進位信號與十位計數(shù)單元的CP1相連。

      秒十位計數(shù)單元為6進制計數(shù)器,需要進制轉(zhuǎn)換。將10進制計數(shù)器轉(zhuǎn)換為6進制計數(shù)器的15),即實現(xiàn)該分頻功能的計數(shù)器相當電路連接,其中Q2可作為向上的進位信號與分個位的計數(shù)單元的CP0相連。

      分個位和分十位計數(shù)單元電路結(jié)構(gòu)分別與秒個位和秒十位計數(shù)單元完全相同,也是分個位計數(shù)單元的Q3作為向上的進位信號應(yīng)與分十位計數(shù)單元的CP0相連,分十位計數(shù)單元的Q2作為向上的進位信號應(yīng)與時個位計數(shù)單元的CP0相連。60進制的連接如圖4所示。時個位計數(shù)單元電路結(jié)構(gòu)仍與秒或個位計數(shù)單元相同,但是要求,整個時計數(shù)單元應(yīng)為24進制計數(shù)器,所以在兩塊74LS90構(gòu)成的100進制中截取24,就得在24的時候進行異步清零。24進制計數(shù)功能的電路如圖5所示。

      圖5 24進制計數(shù)器電路

      主要參考文獻

      《電子技術(shù)基礎(chǔ)》

      康華光

      高教出版社 《電子線路設(shè)計、實驗與測試》

      謝自美

      華中科技大學(xué)出版社 《電子技術(shù)實驗》

      汪學(xué)典

      華中科技大學(xué)出版社 課程設(shè)計摘要 中文摘要

      此次課程設(shè)計以數(shù)字鐘為例,全面的利用了所學(xué)的知識,設(shè)計出了生活中常見的東西。數(shù)字鐘主要有多諧振蕩器、分頻器、計數(shù)器、譯碼器組成。主要芯片有74LS90、CC4511。有多諧振蕩器產(chǎn)生約1Mz信號脈沖。滿24計數(shù)器自動復(fù)位,從而實現(xiàn)24 小時計時。

      關(guān)鍵詞:多諧振蕩器、分頻器、計數(shù)器、74LS90 英文摘要 This design report in detail the digital clock.Making using of our comment study.The digital clock is made of multivibrator type oscillator、divider、counter.Following chips 74LS90 CC4511.When the hour counter reaches the summit of 24,it will return to the beginning point.So ,the whole day is counted.Key word: multivibrator、divider、74LS90

      第五篇:數(shù)字鐘課程設(shè)計

      數(shù)字電子鐘邏輯電路設(shè)計

      一、實驗?zāi)康模?/p>

      1、掌握數(shù)字鐘的設(shè)計方法;

      2、熟悉集成電路的使用方法。

      二、設(shè)計任務(wù)和要求:

      1、設(shè)計一個有“時”,“分”,“秒”(23小時59分59秒)顯示且有校時功能的電子鐘;

      2、用中小規(guī)模集成電路組成電子鐘;

      3、畫出框圖和邏輯電路圖,寫出設(shè)計報告;

      4、選做:①鬧鐘系統(tǒng)。②整點報時。③日歷系統(tǒng)。

      三、方案選擇和論證:

      1.分秒功能的實現(xiàn):用兩片74290組成60進制遞增計數(shù)器 2.時功能的實現(xiàn):用兩片74290組成24進制遞增計數(shù)器 3.定點報時:當分秒同時出現(xiàn)為0時,燈亮。

      4.日歷系統(tǒng):月跟日分別用2片74192實現(xiàn),月份就接成12進制,日則接成31進制,星期由1片74192組成7進制,從星期一至星期天。

      四、方案的設(shè)計:

      1、可調(diào)時鐘模塊:

      秒、分、時分別為60、60和24進制計數(shù)器。用兩片74LS290做一個二十四進制, 輸入計數(shù)脈沖CP加在CLKA’端,把QA與與CPLB’從外部連接起來,電路將對CP按照8421BCD碼進行異步加法計數(shù)。通過反饋端,控制清零端清零,其中個位接成二進制形式,十位接成四進制形式。其電路圖如下:

      同理利用兩片74290組成的六十進制計數(shù)器,如下圖所示

      將兩個六十進制的加法計數(shù)器和一個二十四進制的加法計數(shù)器進行級聯(lián):將秒的十位進位脈沖接到分的個位輸入脈沖,將分的十位進位脈沖接到時的個位輸入脈沖,這樣就可以組成最基本的電路。2.校時電路: 例如說時的校準,開關(guān)1上端接1HZ脈沖,下端接分的進位。當開關(guān)打到上端時電路進入校準功能,當開關(guān)打到下端時電路進入正常計時功能。其電路如總電路圖所示

      3.整點報時:

      分別用2個或非門接到分和秒的各輸出個節(jié)點處,再用一個與非門與報時燈鏈接,當輸出同時為零時,即整點時,報時燈就亮了,起到報時功能。本實驗使用LED發(fā)光(1s),其電路圖如下:

      4日歷系統(tǒng):

      月和日都用2片74192實現(xiàn)。月份功能則接成13進制,因為月份分日都是從1開始計起,所以要求從0001開始,到1101時,立刻清零,清零時應(yīng)該切換到置數(shù)狀態(tài),即將ABCD置1000,通過一個與非門鏈接到LOAD端置零,同時也將計數(shù)器置為0001的狀態(tài)。其電路圖如下所示

      日功能74192三十一進制電路圖:

      總電路圖:

      四、電路調(diào)試:

      調(diào)試這部分工作在EWB仿真軟件上進行。對于電路的調(diào)試應(yīng)該分為幾個部分,分別對電路各個部分的功能都進行調(diào)試,之后,每連接一部分都要調(diào)試一次。在實現(xiàn)日歷系統(tǒng)時,如月份需要顯示燈顯示1~31。一開始以為只把計數(shù)器鏈接成三十一進制即可,結(jié)果顯示燈只顯示0~30,沒有自己預(yù)期的結(jié)果。經(jīng)過仔細思考,要把0去掉不顯示,從1開始顯示,而還要顯示31。經(jīng)過查書,最后,知道開始需置數(shù)成0001狀態(tài),到1000才清零,清零的同時回到置數(shù)0001狀態(tài),通過多次鏈接、測試,終于實現(xiàn)了。

      在實現(xiàn)校時功能過程中,由于之前想得太過復(fù)雜了,浪費了大量時間,最后,經(jīng)過上網(wǎng)搜索,到圖書館查書,簡單的用了個開關(guān)連接到脈沖實現(xiàn)了。

      五、收獲心得體會:

      整個過程花了我不少時間,可當做完時才發(fā)現(xiàn)做這個數(shù)字鐘是多么簡單的一件事,主要是在調(diào)試時花了不少時間,其間換了不少器件,有的器件在理論上可行,但在實際運行中就無法看到效果,所以調(diào)試花了我不少時間,有時無法找出錯誤便更換器件重新接線以使電路正常運行。

      在實際的操作過程中,能把理論中所學(xué)的知識靈活地運用起來,并在調(diào)試中會遇到各種各樣的問題,電路的調(diào)試提高了我們解決問題的能力,學(xué)會了在設(shè)計中獨立解決問題,也包括怎樣去查找問題。似乎所有的事都得自己新手去操作才會在腦海中留下深刻的印象,這個小小的課程設(shè)計讓我可以熟練的操作EWB軟件,也了解了不少器件的功能的應(yīng)用,也加深了對數(shù)字電路認識和理解。

      本次課程設(shè)計主要是用軟件仿真,如果是實際加工電路板就更加鍛煉我們的動手能力了,因此,能力還有待提高。

      下載基于FPGA的數(shù)字鐘課程設(shè)計word格式文檔
      下載基于FPGA的數(shù)字鐘課程設(shè)計.doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進行舉報,并提供相關(guān)證據(jù),工作人員會在5個工作日內(nèi)聯(lián)系你,一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        數(shù)字鐘課程設(shè)計

        南 昌 大 學(xué) 數(shù)字電路與邏輯設(shè)計實驗報告 姓名: 付容 學(xué)號:6100212236 學(xué)院:信息工程學(xué)院 班級:電氣信息I類126班 實驗名稱: 數(shù)字鐘設(shè)計 一、實驗?zāi)康?1、熟悉數(shù)字系統(tǒng)的分析和......

        數(shù)字鐘課程設(shè)計

        ORG 0000H SJMP ONE ORG 0003H LJMP ELEVEN ORG 000BH LJMP NINE ORG 001BH LJMP TEN ONE:LED12 EQU 30H ;數(shù)碼管12顯示緩存 LED34 EQU 31H ;數(shù)碼管34顯示緩存 LED56 EQU 32......

        數(shù)字電路課程設(shè)計 數(shù)字鐘

        摘 要 數(shù)字鐘實際上是一個對標準頻率(1Hz)進行計數(shù)的計數(shù)電路。振蕩器產(chǎn)生的時鐘信號經(jīng)過分頻器形成秒脈沖信號,秒脈沖信號輸入計數(shù)器進行計數(shù),并把累計結(jié)果以“時”、“分”、......

        數(shù)字鐘課程設(shè)計報告

        摘要 數(shù)字電子鐘是一種用數(shù)字顯示秒﹑分﹑時的記時裝置,與傳統(tǒng)的機械時鐘相比,它一般具有走時準確﹑顯示直觀﹑無機械傳動裝置等優(yōu)點,因而得到了廣泛的應(yīng)用。 數(shù)字電子鐘的設(shè)計方法有許......

        數(shù)字鐘課程設(shè)計心得

        一、設(shè)計目的 數(shù)字鐘是一種用數(shù)字電路技術(shù)實現(xiàn)時、分、秒計時的裝置,與機械式時鐘相比具有更高的準確性和直觀性,且無機械裝置,具有更更長的使用壽命,因此得到了廣泛的使用。 數(shù)......

        數(shù)字鐘課程設(shè)計心得

        免費分享創(chuàng)新 數(shù)字鐘課程設(shè)計心得范文 一、設(shè)計目的 數(shù)字鐘是一種用數(shù)字電路技術(shù)實現(xiàn)時、分、秒計時的裝置,與機械式時鐘相比具有更高的準確性和直觀性,且無機械裝置,具有更更......

        數(shù)字電路課程設(shè)計——數(shù)字鐘

        四川工業(yè)科技學(xué)院 電子信息工程學(xué)院課程設(shè)計 專業(yè)名稱:電子信息工程 課程名稱:數(shù)字電路課程設(shè)計 課題名稱:自動節(jié)能燈設(shè)計 設(shè)計人員:蔡志荷 指導(dǎo)教師:廖俊東 2018年1月......

        EDA數(shù)字鐘課程設(shè)計

        課 程 設(shè) 計 報 告 設(shè)計題目:用VHDL語言實現(xiàn)數(shù)字鐘的設(shè)計 班 級:電子1002班 學(xué) 號:20102625 姓 名:于曉 指導(dǎo)教師:李世平、李寧 設(shè)計時間:2012年12月摘要 數(shù)字鐘是一種用數(shù)字電路......