<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于VHDL語言的99小時定時器設(shè)計(jì)及實(shí)現(xiàn)

          基于VHDL語言的99小時定時器設(shè)計(jì)及實(shí)現(xiàn)

          作者: 時間:2010-07-17 來源:網(wǎng)絡(luò) 收藏

            0 引言

            傳統(tǒng)的硬件連接比較復(fù)雜,可靠性差,而且計(jì)時時間短,難以滿足需要。本設(shè)計(jì)采用可編程芯片和語言進(jìn)行軟硬件設(shè)計(jì),不但可使硬件大為簡化,而且穩(wěn)定性也有明顯提高。由于可編程芯片的頻率精度可達(dá)到50 MHz,因而計(jì)時精度很高。本設(shè)計(jì)采用逐位設(shè)定預(yù)置時間,其最長時間設(shè)定可長達(dá)99小時59分59秒。完全可以滿足用戶的需要,使用也更為方便。

            1 系統(tǒng)原理

            本的核心器件為芯片。該芯片有選位、置位、啟動、復(fù)位、倒計(jì)時等功能,顯示采用2個3位LED數(shù)碼管,并采用共陰接法,可以動態(tài)掃描顯示。其系統(tǒng)原理如圖1所示。

            2 硬件設(shè)計(jì)

            本系統(tǒng)共有兩大模塊,分別為控制/定時模塊和顯示模塊。其中控制/定時模塊包括按鍵的功能定義和計(jì)時的邏輯定義。顯示模塊則包括片選模塊、位掃描模塊和數(shù)碼管譯碼模塊。

            設(shè)計(jì)時可將秒信號輸入控制/定時模塊,此時系統(tǒng)將輸出六個四位BCD碼,以分別表示時、分、秒位。在預(yù)置數(shù)時,計(jì)數(shù)器可以秒的速度遞增,從而實(shí)現(xiàn)逐位預(yù)置數(shù);而在定時倒計(jì)數(shù)時,計(jì)數(shù)器可以秒的速度遞減,從而實(shí)現(xiàn)倒計(jì)時。系統(tǒng)中的位選擇器用于對六位進(jìn)行循環(huán)掃描輸出,并將掃描輸出送到譯碼器。譯碼器模塊可對輸入的四位進(jìn)行譯碼,同時在設(shè)置數(shù)值時用6個LED燈分別指示其所設(shè)置的位。

            該系統(tǒng)硬件由兩部分組成,一部分是EPlC6Q240C8芯片,另一部分是按鍵,譯碼器,LED數(shù)碼管,發(fā)光二極管及可編程芯片的支持電路。圖2所示是其AAA控制定時模塊的引腳排列。其主要功能引腳的定義如下:

            Setw(置位鍵):用于選定所需定時的對應(yīng)位。發(fā)光二極管對應(yīng)七段數(shù)碼管設(shè)置,當(dāng)選定對應(yīng)的位時,相應(yīng)的發(fā)光二極管亮;

            Set(置數(shù)鍵):用于設(shè)置選定位的具體數(shù)值;

            Start鍵:用于設(shè)定好時間后啟動秒表計(jì)時??赏ㄟ^軟件使start按鍵經(jīng)過鎖存器后進(jìn)人AAA模塊。Start觸發(fā)后可產(chǎn)生持續(xù)的高電平;

            ALM(揚(yáng)聲器):可在計(jì)時結(jié)束時發(fā)聲報(bào)警;

            Clr(清零鍵):用于計(jì)時器的清零復(fù)位;

            七段數(shù)碼管用于顯示定時數(shù)字,set模塊用控制數(shù)碼管的掃描頻率。


          上一頁 1 2 3 4 下一頁

          關(guān)鍵詞: FPGA VHDL 定時器 EP1C6Q240C8

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();