99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于CPLD和VHDL實現(xiàn)時間控制器系統(tǒng)的設(shè)計

電子設(shè)計 ? 來源:郭婷 ? 作者:電子設(shè)計 ? 2019-09-25 07:55 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

傳統(tǒng)時間控制器功能簡單,硬件線路多,設(shè)計復(fù)雜,可靠性差。隨著CPLD(復(fù)雜可編程邏輯器件)的飛速發(fā)展,它以其編程方便、集成度高,速度快、價格低等特點越來越受到廣大電子設(shè)計人員的青睞。

本文介紹一種以CPLD為核心、以VHDL為開發(fā)工具的時間控制器,該控制器不僅具有時間功能,而且具有定時器功能,能在00:00~23:59之間任意設(shè)定開啟時間和關(guān)閉時間,其設(shè)置方便、靈活,廣泛應(yīng)用于路燈、廣告燈箱、霓虹燈等處的定時控制。

1 系統(tǒng)設(shè)計方案

1.1 系統(tǒng)總體結(jié)構(gòu)

時間控制器主要由CLOCK(數(shù)字時鐘)、TIMESET(定時器開啟時間和關(guān)閉時間設(shè)置)、COMPARE(比較輸出)、FUNC-CTRL(功能控制模塊)和顯示輸出控制模塊等組成。

系統(tǒng)方框圖如圖l所示。

基于CPLD和VHDL實現(xiàn)時間控制器系統(tǒng)的設(shè)計

FUNC-CTRL模塊控制系統(tǒng)處于不同的功能狀態(tài),并產(chǎn)生不同的控制信號分別控制TIME-SET模塊和CLOCK模塊,而這3個模塊的輸出連接到COMPARE模塊,當(dāng)系統(tǒng)時間處在開啟時間和關(guān)閉時間段時,則定時器輸出端done輸出控制信號,DISP_CTRL(輸出選擇模塊)根據(jù)功能模塊的控制信號選擇不同功能狀態(tài)的時間輸出,通過SELTIME(動態(tài)掃描模塊)和DELED(七段譯碼模塊)驅(qū)動七段數(shù)碼管顯示相應(yīng)的時間。

1.2 系統(tǒng)功能要求

a)具有數(shù)字時鐘功能,用4個數(shù)碼管分別顯示小時、分鐘,并且具有時間校對功能。

b)能方便地設(shè)定定時器的開啟時間和關(guān)閉時間,通過比較器輸出時間控制信號。

c)具有4種功能狀態(tài):系統(tǒng)時間校對狀態(tài)、開啟時間設(shè)定狀態(tài)、關(guān)閉時間設(shè)定狀態(tài)、時鐘正常顯示狀態(tài),通過功能轉(zhuǎn)換鍵(fun)可以使系統(tǒng)在這4種狀態(tài)之間循環(huán)變化,并且可以通過指示燈LED顯示當(dāng)前系統(tǒng)功能狀態(tài),數(shù)碼管顯示相應(yīng)功能狀態(tài)的時間,如當(dāng)前在開啟時間設(shè)定狀態(tài)下,開啟時間設(shè)置指示燈ledon會亮,數(shù)碼管同時顯示當(dāng)前設(shè)置的時間。

d)開啟時間設(shè)定、關(guān)閉時間設(shè)定和時間校對采用共同的時調(diào)節(jié)鍵set_hour和分調(diào)節(jié)鍵set_min;每按一下set_hour鍵,小時就會自動加1,采用24進(jìn)制計數(shù),當(dāng)計數(shù)到23時又會恢復(fù)為00;每按一下set_min鍵,分鐘會自動加1;采用60進(jìn)制計數(shù),當(dāng)計數(shù)到59時,又會恢復(fù)為00。

2 子模塊功能設(shè)計及仿真

2.1 CLOCK模塊

CLOCK模塊內(nèi)部整體框圖如圖2所示。

基于CPLD和VHDL實現(xiàn)時間控制器系統(tǒng)的設(shè)計

其中:SECOND為60進(jìn)制秒計數(shù)器,MINUTE為60進(jìn)制分鐘計數(shù)器,HOUR為24進(jìn)制小時計數(shù)器;clk為標(biāo)準(zhǔn)的1Hz時鐘信號作為秒計數(shù)輸入,秒計數(shù)器的進(jìn)位輸出作為分鐘MINUTE的計數(shù)時鐘,而MINUTE進(jìn)位輸出作為小時HOUR模塊的時鐘輸入;輸入端set_rain、set_hour和en_time分別為校分、校時和時間設(shè)置控制信號。模塊HOUR_MIN把小時和分鐘輸出合成時間輸出信號time[13..0](小時采用24進(jìn)制,只需6位二進(jìn)制表示,分鐘用8位二進(jìn)制表示)。

2.2 TIME_SET模塊

開啟時問模塊主要設(shè)置定時器殲啟時間,可以設(shè)定具體幾時幾分,而關(guān)閉時間則設(shè)定定時器關(guān)閉時間,起始時間設(shè)定模塊與結(jié)束時間設(shè)定模塊功能相同,采用同一個TIME_SET模塊。該模塊由一個24進(jìn)制小時計數(shù)器和一個60進(jìn)制分鐘計數(shù)器組成,當(dāng)控制端EN為高電平時,通過調(diào)節(jié)鍵set_hour和set_min分別設(shè)置小時和分鐘信號,從而設(shè)置開啟時問和關(guān)閉時間,并產(chǎn)生時間信號data[13..0]。仿真結(jié)果如圖3所示。

基于CPLD和VHDL實現(xiàn)時間控制器系統(tǒng)的設(shè)計

2.3 COMPARE模塊

COMPARE模塊實現(xiàn)系統(tǒng)當(dāng)前時間與設(shè)定的開啟時間和關(guān)閉時間的比較,從而輸出定時控制輸出信號。由于系統(tǒng)時間的小時和分鐘分別采用24進(jìn)制和60進(jìn)制方式,分3種情況討論:

a)當(dāng)系統(tǒng)設(shè)定的開啟時間小于關(guān)閉時間時,只要當(dāng)前系統(tǒng)時間大于等于開啟時間而小于關(guān)閉時間,則輸出端co的輸出信號為高電平,否則為低電平。

b)當(dāng)系統(tǒng)設(shè)定的開啟時間大于關(guān)閉時間時,則當(dāng)系統(tǒng)時間大于等于關(guān)閉時間而小于開啟時間時,輸出端co為低電平,否則為高電平。

c)如果開啟時間等于關(guān)閉時間,則輸出端co為低電平,仿真結(jié)果如圖4。

該模塊部分VHDL源程序如下:

基于CPLD和VHDL實現(xiàn)時間控制器系統(tǒng)的設(shè)計

2.4 FUNC_CTRL模塊

利用功能轉(zhuǎn)換鍵(fun)使系統(tǒng)處在不同的功能狀態(tài):系統(tǒng)時間校對狀態(tài)、開啟時間設(shè)定狀態(tài)、關(guān)閉時間設(shè)定狀態(tài)、正常顯示狀態(tài)。利用功能轉(zhuǎn)換鍵實現(xiàn)4個功能狀態(tài)之間循環(huán)變化,并產(chǎn)生相應(yīng)的控制信號(en_time、en_on、en_off)去控制CLOCK模塊、TIME_SET、模塊和DISP_CTRL模塊等。在調(diào)整過程中,只有被選擇到的功能狀態(tài)指示燈被點亮,其他燈不亮,在正常模式狀態(tài)下,狀態(tài)燈都不亮。

其部分源程序如下:

基于CPLD和VHDL實現(xiàn)時間控制器系統(tǒng)的設(shè)計

基于CPLD和VHDL實現(xiàn)時間控制器系統(tǒng)的設(shè)計

2.5 顯示控制模塊

1)DISP_CTRL模塊

該模塊根據(jù)功能控制模塊輸出的控制信號en_on、en_off的值來選擇輸出信號,當(dāng)en_on=l時,輸出值為定時器的開啟時問信號,當(dāng)en_off=1時,輸出值為定時器的關(guān)閉時間信號,en_time=1時,輸出值為系統(tǒng)時間校對信號,其他情況則輸出系統(tǒng)時間。

2)SELTIME模塊及DELED模塊

時間顯示的4個數(shù)碼管采用動態(tài)掃描輸出,一般只要每個掃描頻率超過人的眼睛視覺暫留頻率24 Hz以上就可以達(dá)到點亮單個顯示而不閃爍,掃描頻率采用1 kHz信號。動態(tài)掃描輸出信號通過BCD-七段顯示譯碼器(DELED)連接到數(shù)碼管顯示具體數(shù)字。

動態(tài)掃描的部分程序如下(其中clk1為掃描時鐘輸入信號,sel為數(shù)碼管片選信號):

基于CPLD和VHDL實現(xiàn)時間控制器系統(tǒng)的設(shè)計

2.6 1 Hz標(biāo)準(zhǔn)時鐘產(chǎn)生模塊

系統(tǒng)時鐘輸入信號CLK1K為1 kHz信號,它可作為動態(tài)掃描時鐘信號,如果把1 kHz信號經(jīng)過3個10分頻器FEN10便可得到標(biāo)準(zhǔn)的1 Hz時鐘信號,作為系統(tǒng)時間模塊的標(biāo)準(zhǔn)秒輸入信號。

3 系統(tǒng)部分功能仿真

各部分模塊完成后生成圖形符號,在MAX+PLUSⅡ中采用圖形法把各部分連接起來,如圖1所示,對系統(tǒng)部分模塊進(jìn)行功能仿真,圖5為系統(tǒng)時間設(shè)置仿真圖。

基于CPLD和VHDL實現(xiàn)時間控制器系統(tǒng)的設(shè)計

在fun功能轉(zhuǎn)換鍵上升沿來之后,系統(tǒng)時間調(diào)整指示燈ledtime變?yōu)楦咂?,系統(tǒng)當(dāng)前處在數(shù)字時鐘校正狀態(tài),set_min是分鐘設(shè)置端,sel[1..O]是片選信號,led[6..0]為數(shù)碼管的輸入信號,從圖中可知符合功能要求。由于篇幅限制,略去其余模塊的仿真圖。

本系統(tǒng)采用的CPLD芯片為Altera公司的EPF10KLC84-3芯片,用VHDL和MAX+PLUSⅡ10.0軟件工具開發(fā)。設(shè)計輸入完成后,進(jìn)行整體的編譯和邏輯仿真,然后進(jìn)行轉(zhuǎn)換、延時仿真生成配置文件,最后下載至CPLD器件,完成結(jié)構(gòu)功能配置,實現(xiàn)其硬件功能。

4 結(jié)束語

該系統(tǒng)運用先進(jìn)的EDA軟件和VHDL,采用模塊法白頂向下的設(shè)計原則,并借助于CPLD實現(xiàn)時間控制器的設(shè)計,充分體現(xiàn)了現(xiàn)代數(shù)字電路設(shè)計系統(tǒng)芯片化,芯片設(shè)計化設(shè)計的思想突破了傳統(tǒng)電子系統(tǒng)的設(shè)計模式,使系統(tǒng)開發(fā)速度快、成本低、系統(tǒng)性能大幅度提高。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 芯片
    +關(guān)注

    關(guān)注

    459

    文章

    52474

    瀏覽量

    440508
  • cpld
    +關(guān)注

    關(guān)注

    32

    文章

    1257

    瀏覽量

    171477
  • vhdl
    +關(guān)注

    關(guān)注

    30

    文章

    820

    瀏覽量

    129932
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    基于CPLDVHDL的智能撥號報警系統(tǒng)的設(shè)計與實現(xiàn)

    本文采用CPLD控制核心實現(xiàn)了智能報警系統(tǒng)。由于利用EDA技術(shù)進(jìn)行系統(tǒng)設(shè)計,外圍器件少、體積小、功耗低、可靠性高。通過修改
    發(fā)表于 02-20 14:34 ?5157次閱讀
    基于<b class='flag-5'>CPLD</b>和<b class='flag-5'>VHDL</b>的智能撥號報警<b class='flag-5'>系統(tǒng)</b>的設(shè)計與<b class='flag-5'>實現(xiàn)</b>

    利用可編程器件CPLD/FPGA實現(xiàn)VGA圖像控制器的設(shè)計方案

    利用可編程器件CPLD/FPGA實現(xiàn)VGA彩色顯示控制器在工業(yè)現(xiàn)場中有許多實際應(yīng)用。以硬件描述語言VHDL對可編程器件進(jìn)行功能模塊設(shè)計、仿真綜合,可
    發(fā)表于 08-30 12:03 ?1330次閱讀
    利用可編程器件<b class='flag-5'>CPLD</b>/FPGA<b class='flag-5'>實現(xiàn)</b>VGA圖像<b class='flag-5'>控制器</b>的設(shè)計方案

    基于CPLD的SPI控制器的研究與實現(xiàn)

    我要做基于CPLD的SPI控制器的研究與實現(xiàn),有沒有會的人,求教,有什么資料推薦點也行
    發(fā)表于 04-27 14:37

    基于VHDL怎么實現(xiàn)交通燈控制器?

    應(yīng)用VHDL語言設(shè)計數(shù)字系統(tǒng),大部分設(shè)計工作可在計算機上完成,從而縮短系統(tǒng)開發(fā)時間,提高工作效率。下面介紹基于VHDL設(shè)計交通燈
    發(fā)表于 10-18 07:21

    如何采用Altera的CPLD器件實現(xiàn)時間統(tǒng)一系統(tǒng)的B碼源設(shè)計?

    如何采用Altera的CPLD器件實現(xiàn)時間統(tǒng)一系統(tǒng)的B碼源設(shè)計?
    發(fā)表于 05-07 06:21

    怎么實現(xiàn)基于CPLD和MT8880的遠(yuǎn)程控制及播音系統(tǒng)設(shè)計?

    介紹了一種基于CPLD和MT8880的遠(yuǎn)程控制及語音通信的解決方案。給出了系統(tǒng)的原理框圖和關(guān)鍵電路, 并對關(guān)鍵電路的工作原理進(jìn)行了說明; 最后給出了系統(tǒng)主機
    發(fā)表于 05-26 07:01

    怎么實現(xiàn)基于CPLD的異步串行通訊控制器的設(shè)計?

    本文在對異步串行通信協(xié)議進(jìn)行分析的基礎(chǔ)上,根據(jù)實際工程的需要,對異步串行通信控制器進(jìn)行了詳細(xì)設(shè)計,并結(jié)合CPLD器件,采用VHDL語言,對設(shè)計方案進(jìn)行了實現(xiàn)和驗證,通過最后時序仿真的波
    發(fā)表于 05-28 06:53

    怎么實現(xiàn)基于CPLD的雙屏結(jié)構(gòu)液晶控制器的設(shè)計?

    液晶控制器原理是什么?怎么實現(xiàn)基于CPLD的雙屏結(jié)構(gòu)液晶控制器的設(shè)計?
    發(fā)表于 06-04 06:09

    CPLD 實現(xiàn)GPIB控制器的設(shè)計

    GPIB 控制器芯片是組建自動測試系統(tǒng)的核心,在測試領(lǐng)域應(yīng)用廣泛。本文擬討論用ALTERA公司的低成本CPLD實現(xiàn) GPIB 控制器的功
    發(fā)表于 07-28 17:16 ?23次下載

    基于CPLD的電梯控制器的設(shè)計

    探討電梯控制技術(shù)的發(fā)展歷史和技術(shù)現(xiàn)狀,仔細(xì)研究CPLD器件的工作原理,開發(fā)流程以及VHDL語言的編程方法;采用單片CPLD器件,在MAX+plusⅡ軟件環(huán)境下,運用
    發(fā)表于 12-27 15:27 ?56次下載

    基于VHDL的DRAM控制器設(shè)計

    本文提出一種新穎的解決方案:利用80C186XL的時序特征,采用CPLD技術(shù),并使用VHDL語言設(shè)計實現(xiàn)DRAM控制器
    發(fā)表于 02-02 11:29 ?1688次閱讀
    基于<b class='flag-5'>VHDL</b>的DRAM<b class='flag-5'>控制器</b>設(shè)計

    基于VHDL的交通燈控制器設(shè)計

     應(yīng)用VHDL語言設(shè)計數(shù)字系統(tǒng),大部分設(shè)計工作可在計算機上完成,從而縮短系統(tǒng)開發(fā)時間,提高工作效率。下面介紹基于VHDL設(shè)計交通燈
    發(fā)表于 05-22 16:33 ?6184次閱讀
    基于<b class='flag-5'>VHDL</b>的交通燈<b class='flag-5'>控制器</b>設(shè)計

    基于VHDL的SDRAM控制器實現(xiàn)

    基于VHDL的SDRAM控制器實現(xiàn)
    發(fā)表于 01-22 13:43 ?12次下載

    VHDL TFT LCD屏控制器CPLD程序免費下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是VHDL TFT LCD屏控制器CPLD程序免費下載。
    發(fā)表于 01-20 17:03 ?5次下載
    <b class='flag-5'>VHDL</b> TFT LCD屏<b class='flag-5'>控制器</b>的<b class='flag-5'>CPLD</b>程序免費下載

    利用MAX II CPLD實現(xiàn)LCD控制器

    電子發(fā)燒友網(wǎng)站提供《利用MAX II CPLD實現(xiàn)LCD控制器.pdf》資料免費下載
    發(fā)表于 11-10 09:36 ?0次下載
    利用MAX II <b class='flag-5'>CPLD</b><b class='flag-5'>實現(xiàn)</b>LCD<b class='flag-5'>控制器</b>