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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于QuartusⅡ開發(fā)環(huán)境與VHDL語言的16路可調彩燈控制器的設計

電子設計 ? 來源:郭婷 ? 作者:電子設計 ? 2019-05-03 07:35 ? 次閱讀

近年來,FPGACPLD發(fā)展迅速,隨著集成電路制造工藝的不斷進步,高性價比的FPGA/CPLD器件推陳出新,使FPGA/CPLD成為當今硬件設計的重要途徑,與傳統(tǒng)電路設計方法相比,FPGA/CPLD具有功能強大、開發(fā)周期短、投資少,便于追蹤市場變化及時修改產品設計以及開發(fā)工具智能化等特點。在諸多FPGA/CPLD的設計語言中,VHDL語言作為一種主流的硬件描述語言,具有很強的電路描述和建模能力,能從多個層次對數字系統(tǒng)進行建模和描述,從而大大簡化了硬件設計任務,提高了設計效率和可靠性,并在語言易讀性和層次化、結構化設計方面,表現出了強大的生命力和應用潛力。

QuartusⅡ是Altera公司在21世紀初推出的FPGA/CPLD集成開發(fā)環(huán)境,是Altera公司前一代FPGA/CPLD集成開發(fā)環(huán)境Max+PlusⅡ的更新?lián)Q代產品,其界面友好,使用便捷,功能強大,為設計者提供了一種與結構無關的設計環(huán)境,使設計者能方便的進行設計輸入、快速處理和器件編程

本文在QuartusⅡ開發(fā)環(huán)境下,用VHDL語言設計了一種可用于控制16路彩燈,具有4種彩燈變換模式,且變換速度可調的彩燈控制器

1 16路可調速彩燈控制囂設計思路

16路可調逮彩燈控制器根據功能可分為3個部分,如圖1所示。其中,8 Hz分頻部分用于對頻率為10 MHz的時鐘信號進行分頻,獲得頻率為8 Hz的時鐘信號CLK8。CLK8作為速度控制部分的基準時鐘,通過計數分頻方式又可獲得頻率分別為4 Hz,2 Hz和1 Hz的時鐘信號,然后由調速信號選擇其中之一作為彩燈時鐘信號CLKQ,CLKQ即為彩燈控制部分的基準時鐘,用于決定彩燈變換的速度,由此實現調速信號SPD對彩燈變換速度的控制,使彩燈可調速。

基于QuartusⅡ開發(fā)環(huán)境與VHDL語言的16路可調彩燈控制器的設計

彩燈控制部分通過輸出1個16位二進制數(即彩燈輸出信號Q)來控制16個彩燈,每一位二進制數對應1個彩燈的開關,當該位數字為“1”時燈亮,該位數字為“O”時燈滅。彩燈的變換共設置4種模式:

sO模式:只亮1個燈,從最左端逐個移動到最右端,即輸出信號Q從第15位開始將1個“1”依次移動到第0位;

s1模式:只亮1個燈,從最右端逐個移動到最左端,即輸出信號Q從第0位開始將1個“1”依次移動到第15位;

s2模式:亮2個燈,同時從左右兩端向中間移動,即輸出信號Q從第15位開始將1個“1”依次移動到第8位,同時從第O位開始將1個“1”依次移動到第7位;

s3模式:亮2個燈,同時從中間向左右兩端移動,即輸出信號Q從第8位開始將1個“1”依次移動到第15位,同時從第7位開始將1個“1”依次移動到第0位。

四種模式依次循環(huán),若復位信號RST輸入為高電平,則循環(huán)中斷,輸出信號Q置零,彩燈全滅,RST恢復為低電平后,再次從sO模式開始循環(huán)。

2 16路可調速彩燈控制器的實現

本文所設計的16路可調速彩燈控制器,其電路符號如圖2所示,其中clk為10 MHz時鐘信號輸入端,rst為復位控制端,spd為調速信號輸入端,q為彩燈控制信號輸出端。

基于QuartusⅡ開發(fā)環(huán)境與VHDL語言的16路可調彩燈控制器的設計

本文所設計的16路可調速彩燈控制器的VHDL代碼如下所示:

基于QuartusⅡ開發(fā)環(huán)境與VHDL語言的16路可調彩燈控制器的設計

基于QuartusⅡ開發(fā)環(huán)境與VHDL語言的16路可調彩燈控制器的設計

基于QuartusⅡ開發(fā)環(huán)境與VHDL語言的16路可調彩燈控制器的設計

基于QuartusⅡ開發(fā)環(huán)境與VHDL語言的16路可調彩燈控制器的設計

值得注意的是,本文設計的16路可調速彩燈控制器使用了數據循環(huán)算法,較以往的case when語句,更加簡潔,實現的功能更加強大,其具有如下特點:

(1)在硬件驗證時,將速度控制端spd的pin腳接到撥碼開關上,從而實現彩燈變換速度快慢的手動控制,在更進一步的設計中,也可以通過對spd信號的內部控制,實現各種變換速度的自動調整。

(2)該設計采用數據移位的方式實現彩燈的變換,更有利于彩燈變換模式的擴展。該設計雖然只設計了4種變換模式,但可以根據需要輕松的擴展至6~8種模式,甚至更多。

(3)8 Hz分頻部分的分頻比很大,不適于計算機仿真驗證,在仿真時需要調小分頻比,在硬件驗證時再恢復較大的分頻比。

3 仿真結果分析

本文設計的16路可調速彩燈控制器在QuartusⅡ開發(fā)環(huán)境下進行了仿真驗證,仿真波形如圖3所示。仿真結果分析如下:

基于QuartusⅡ開發(fā)環(huán)境與VHDL語言的16路可調彩燈控制器的設計

(1)clk為時鐘信號,由時鐘信號的上升沿觸發(fā)分頻器計數;

(2)rst為復位信號輸入端,當其為高電平時,彩燈控制輸出信號q清零,rst恢復為低電平后彩燈控制輸出信號q從sO模式重新開始循環(huán);

(3)spd為調速信號輸入端,對應于spd的“00”,“01”,“10”,“11”這4個數值,彩燈變換的速度分別為1 Hz,2 Hz,4 Hz,8 Hz;

(4)q為彩燈控制信號輸出端,由圖3可知,該設計成功地實現了4種變換模式的循環(huán)和各種變換速度的調節(jié)。

4 結語

設計的16路可調速彩燈控制器在QuartusⅡ開發(fā)環(huán)境下進行了仿真驗證后,下載到湖北眾友科技實業(yè)股份有限公司的ZYllEDAl3BE實驗箱中進行了硬件驗證,該實驗箱使用ACEXlK系列EPlK30QC208芯片作為核心芯片,實驗證明設計正確,功能完整,運行穩(wěn)定。另外,本文所設計的16路可調速彩燈控制器可根據需要增加更多的變換模式,使彩燈更加絢麗多姿。

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

    關注

    1625

    文章

    21628

    瀏覽量

    601252
  • 分頻器
    +關注

    關注

    43

    文章

    447

    瀏覽量

    49753
  • vhdl
    +關注

    關注

    30

    文章

    816

    瀏覽量

    128046
收藏 人收藏

    評論

    相關推薦

    大功率四節(jié)日彩燈控制器

    大功率四節(jié)日彩燈控制器    本例介紹一個大功率四節(jié)日彩燈控制器
    發(fā)表于 07-12 16:44

    彩燈控制器的設計方案

    彩燈控制器的設計方案本設計采用謙價的數字集成電路定時、計數和譯碼,產生循環(huán)
    發(fā)表于 12-17 10:39

    彩燈控制器的設計

    彩燈控制器的設計
    發(fā)表于 08-20 14:51

    Quartus開發(fā)環(huán)境下怎么用VHDL語言設計可變模功能的計數?

    Quartus開發(fā)環(huán)境下,用VHDL語言設計了一種具有清零、置數、使能控制、可逆計數和可變模
    發(fā)表于 04-30 06:44

    基于TTL電路的LED可調彩燈控制器該怎樣去設計?

    基于TTL電路的LED可調彩燈控制器該怎樣去設計?
    發(fā)表于 06-02 06:54

    設計8節(jié)日彩燈控制器的相關資料分享

    任務設計8節(jié)日彩燈控制器,要求在Protues中設計接口電路圖,并編程實現節(jié)日彩燈閃爍方式的控制:通過P1.0到P1.2來
    發(fā)表于 11-10 08:43

    VHDL設計十六路彩燈控制器

    摘要:VHDL設計技術是引起數字系統(tǒng)設計方式發(fā)生突破性變革的技術。本文論述了使用VHDL設計十六路彩燈控制器的過程。VHDL為設計提供了更大
    發(fā)表于 05-23 09:36 ?143次下載

    節(jié)日彩燈控制器

    節(jié)日里用彩燈裝飾和美化環(huán)境可以得到很好的效果。這里介紹的控制器使節(jié)日彩燈具有動感,交替閃亮的彩燈好似流水。它的制作也很簡單。
    發(fā)表于 05-28 10:10 ?183次下載

    彩燈控制器

    彩燈控制器接通電源時,初始瞬間三彩燈均點亮。隨后C1,C2,C3充電,因參數參差至使三個電容不可能同時充至同樣的電壓,設C1首先充至高
    發(fā)表于 12-26 19:29 ?3529次閱讀
    三<b class='flag-5'>路</b><b class='flag-5'>彩燈</b><b class='flag-5'>控制器</b>

    基于TTL電路的LED可調彩燈控制器

    基于TTL電路的LED可調彩燈控制器,電路主要由時間振蕩電路和16通道多路復用器組成可調定時
    發(fā)表于 05-10 11:04 ?5114次閱讀
    基于TTL電路的LED<b class='flag-5'>可調</b><b class='flag-5'>彩燈</b><b class='flag-5'>控制器</b>

    基于EDA技術的彩燈控制器設計

    該設計是以現場可編程邏輯器件(FPGA)為設計載體,以硬件描述語言VHDL)為主要,以原理圖輸入設計為輔的表達方式,以Quartus開發(fā)軟件和EDA試驗箱為設計工具,闡述了
    發(fā)表于 12-04 14:21 ?20次下載
    基于EDA技術的<b class='flag-5'>彩燈</b><b class='flag-5'>控制器</b>設計

    使用VHDL語言設計可變速彩燈控制器

    首先應進行系統(tǒng)模塊的劃分,規(guī)定每一個模塊的功能以及各模塊之間的接口,最終設計方案分為三大模塊:16花樣彩燈控制器、四頻率輸出分頻、四選一
    的頭像 發(fā)表于 10-07 12:06 ?5447次閱讀
    使用<b class='flag-5'>VHDL</b><b class='flag-5'>語言</b>設計可變速<b class='flag-5'>彩燈</b><b class='flag-5'>控制器</b>

    多路彩燈控制器VHDL的實現

    設計一個彩燈控制程序??梢詫崿F四種花型循環(huán)變化,有復位開關。整個系統(tǒng)共有三個輸入信號CLK,RST,SelMode,八個輸出信號控制八個彩燈
    發(fā)表于 07-16 09:21 ?3109次閱讀

    使用QuartusVHDL語言實現的LPC時序的工程文件

    本文檔的主要內容詳細介紹的是使用QuartusVHDL語言實現的LPC時序的工程文件免費下載。
    發(fā)表于 09-18 16:49 ?20次下載
    使用<b class='flag-5'>Quartus</b>和<b class='flag-5'>VHDL</b><b class='flag-5'>語言</b>實現的LPC時序的工程文件

    彩燈控制器multisim仿真源文件下載

    彩燈控制器multisim仿真源文件下載。
    發(fā)表于 02-18 15:36 ?81次下載