掃描二維碼
隨時(shí)隨地手機(jī)看文章
0 引言
近年來,F(xiàn)PGA/CPLD發(fā)展迅速,隨著集成電路制造工藝的不斷進(jìn)步,高性價(jià)比的FPGA/CPLD器件推陳出新,使FPGA/CPLD成為當(dāng)今硬件設(shè)計(jì)的重要途徑,與傳統(tǒng)電路設(shè)計(jì)方法相比,F(xiàn)PGA/CPLD具有功能強(qiáng)大、開發(fā)周期短、投資少,便于追蹤市場(chǎng)變化及時(shí)修改產(chǎn)品設(shè)計(jì)以及開發(fā)工具智能化等特點(diǎn)。在諸多FPGA/CPLD的設(shè)計(jì)語言中,VHDL語言作為一種主流的硬件描述語言,具有很強(qiáng)的電路描述和建模能力,能從多個(gè)層次對(duì)數(shù)字系統(tǒng)進(jìn)行建模和描述,從而大大簡(jiǎn)化了硬件設(shè)計(jì)任務(wù),提高了設(shè)計(jì)效率和可靠性,并在語言易讀性和層次化、結(jié)構(gòu)化設(shè)計(jì)方面,表現(xiàn)出了強(qiáng)大的生命力和應(yīng)用潛力。
QuartusⅡ是Altera公司在21世紀(jì)初推出的FPGA/CPLD集成開發(fā)環(huán)境,是Altera公司前一代FPGA/CPLD集成開發(fā)環(huán)境Max+PlusⅡ的更新?lián)Q代產(chǎn)品,其界面友好,使用便捷,功能強(qiáng)大,為設(shè)計(jì)者提供了一種與結(jié)構(gòu)無關(guān)的設(shè)計(jì)環(huán)境,使設(shè)計(jì)者能方便的進(jìn)行設(shè)計(jì)輸入、快速處理和器件編程。
本文在QuartusⅡ開發(fā)環(huán)境下,用VHDL語言設(shè)計(jì)了一種可用于控制16路彩燈,具有4種彩燈變換模式,且變換速度可調(diào)的彩燈控制器。
1 16路可調(diào)速彩燈控制囂設(shè)計(jì)思路
16路可調(diào)逮彩燈控制器根據(jù)功能可分為3個(gè)部分,如圖1所示。其中,8 Hz分頻部分用于對(duì)頻率為10 MHz的時(shí)鐘信號(hào)進(jìn)行分頻,獲得頻率為8 Hz的時(shí)鐘信號(hào)CLK8。CLK8作為速度控制部分的基準(zhǔn)時(shí)鐘,通過計(jì)數(shù)分頻方式又可獲得頻率分別為4 Hz,2 Hz和1 Hz的時(shí)鐘信號(hào),然后由調(diào)速信號(hào)選擇其中之一作為彩燈時(shí)鐘信號(hào)CLKQ,CLKQ即為彩燈控制部分的基準(zhǔn)時(shí)鐘,用于決定彩燈變換的速度,由此實(shí)現(xiàn)調(diào)速信號(hào)SPD對(duì)彩燈變換速度的控制,使彩燈可調(diào)速。
彩燈控制部分通過輸出1個(gè)16位二進(jìn)制數(shù)(即彩燈輸出信號(hào)Q)來控制16個(gè)彩燈,每一位二進(jìn)制數(shù)對(duì)應(yīng)1個(gè)彩燈的開關(guān),當(dāng)該位數(shù)字為“1”時(shí)燈亮,該位數(shù)字為“O”時(shí)燈滅。彩燈的變換共設(shè)置4種模式:
sO模式:只亮1個(gè)燈,從最左端逐個(gè)移動(dòng)到最右端,即輸出信號(hào)Q從第15位開始將1個(gè)“1”依次移動(dòng)到第0位;
s1模式:只亮1個(gè)燈,從最右端逐個(gè)移動(dòng)到最左端,即輸出信號(hào)Q從第0位開始將1個(gè)“1”依次移動(dòng)到第15位;
s2模式:亮2個(gè)燈,同時(shí)從左右兩端向中間移動(dòng),即輸出信號(hào)Q從第15位開始將1個(gè)“1”依次移動(dòng)到第8位,同時(shí)從第O位開始將1個(gè)“1”依次移動(dòng)到第7位;
s3模式:亮2個(gè)燈,同時(shí)從中間向左右兩端移動(dòng),即輸出信號(hào)Q從第8位開始將1個(gè)“1”依次移動(dòng)到第15位,同時(shí)從第7位開始將1個(gè)“1”依次移動(dòng)到第0位。
四種模式依次循環(huán),若復(fù)位信號(hào)RST輸入為高電平,則循環(huán)中斷,輸出信號(hào)Q置零,彩燈全滅,RST恢復(fù)為低電平后,再次從sO模式開始循環(huán)。
2 16路可調(diào)速彩燈控制器的實(shí)現(xiàn)
本文所設(shè)計(jì)的16路可調(diào)速彩燈控制器,其電路符號(hào)如圖2所示,其中clk為10 MHz時(shí)鐘信號(hào)輸入端,rst為復(fù)位控制端,spd為調(diào)速信號(hào)輸入端,q為彩燈控制信號(hào)輸出端。
本文所設(shè)計(jì)的16路可調(diào)速彩燈控制器的VHDL代碼如下所示:
值得注意的是,本文設(shè)計(jì)的16路可調(diào)速彩燈控制器使用了數(shù)據(jù)循環(huán)算法,較以往的case when語句,更加簡(jiǎn)潔,實(shí)現(xiàn)的功能更加強(qiáng)大,其具有如下特點(diǎn):
(1)在硬件驗(yàn)證時(shí),將速度控制端spd的pin腳接到撥碼開關(guān)上,從而實(shí)現(xiàn)彩燈變換速度快慢的手動(dòng)控制,在更進(jìn)一步的設(shè)計(jì)中,也可以通過對(duì)spd信號(hào)的內(nèi)部控制,實(shí)現(xiàn)各種變換速度的自動(dòng)調(diào)整。
(2)該設(shè)計(jì)采用數(shù)據(jù)移位的方式實(shí)現(xiàn)彩燈的變換,更有利于彩燈變換模式的擴(kuò)展。該設(shè)計(jì)雖然只設(shè)計(jì)了4種變換模式,但可以根據(jù)需要輕松的擴(kuò)展至6~8種模式,甚至更多。
(3)8 Hz分頻部分的分頻比很大,不適于計(jì)算機(jī)仿真驗(yàn)證,在仿真時(shí)需要調(diào)小分頻比,在硬件驗(yàn)證時(shí)再恢復(fù)較大的分頻比。
3 仿真結(jié)果分析
本文設(shè)計(jì)的16路可調(diào)速彩燈控制器在QuartusⅡ開發(fā)環(huán)境下進(jìn)行了仿真驗(yàn)證,仿真波形如圖3所示。仿真結(jié)果分析如下:
(1)clk為時(shí)鐘信號(hào),由時(shí)鐘信號(hào)的上升沿觸發(fā)分頻器計(jì)數(shù);
(2)rst為復(fù)位信號(hào)輸入端,當(dāng)其為高電平時(shí),彩燈控制輸出信號(hào)q清零,rst恢復(fù)為低電平后彩燈控制輸出信號(hào)q從sO模式重新開始循環(huán);
(3)spd為調(diào)速信號(hào)輸入端,對(duì)應(yīng)于spd的“00”,“01”,“10”,“11”這4個(gè)數(shù)值,彩燈變換的速度分別為1 Hz,2 Hz,4 Hz,8 Hz;
(4)q為彩燈控制信號(hào)輸出端,由圖3可知,該設(shè)計(jì)成功地實(shí)現(xiàn)了4種變換模式的循環(huán)和各種變換速度的調(diào)節(jié)。
4 結(jié)語
設(shè)計(jì)的16路可調(diào)速彩燈控制器在QuartusⅡ開發(fā)環(huán)境下進(jìn)行了仿真驗(yàn)證后,下載到湖北眾友科技實(shí)業(yè)股份有限公司的ZYllEDAl3BE實(shí)驗(yàn)箱中進(jìn)行了硬件驗(yàn)證,該實(shí)驗(yàn)箱使用ACEXlK系列EPlK30QC208芯片作為核心芯片,實(shí)驗(yàn)證明設(shè)計(jì)正確,功能完整,運(yùn)行穩(wěn)定。另外,本文所設(shè)計(jì)的16路可調(diào)速彩燈控制器可根據(jù)需要增加更多的變換模式,使彩燈更加絢麗多姿。
摘要:目前大眾出行所攜帶行李箱上下樓梯過于不便,普通行李箱不易提攜,為此設(shè)計(jì)了一款爬樓行李箱。該爬樓行李箱通過5l單片機(jī)輸出具有不同占空比的PwM脈沖信號(hào)到直流電機(jī)驅(qū)動(dòng)裝置,帶動(dòng)驅(qū)動(dòng)輪及履帶轉(zhuǎn)動(dòng),從而實(shí)現(xiàn)爬樓的功能。同時(shí)...
關(guān)鍵字: 結(jié)構(gòu)設(shè)計(jì) 調(diào)速 定位許多有經(jīng)驗(yàn)的設(shè)計(jì)人員都知道,通過簡(jiǎn)單地將補(bǔ)償引腳連接在一起,使用峰值電流模式控制器通常更容易實(shí)現(xiàn)均流。我們可以通過這種方式獲得合理的精度,因?yàn)殡娏髂J娇刂破魃系难a(bǔ)償電壓與峰值電感電流成正比,后者與輸出電流有關(guān)。將補(bǔ)償引腳...
關(guān)鍵字: 電壓 同步降壓穩(wěn)壓器 控制器設(shè)計(jì) DC摘要:針對(duì)傳統(tǒng)基于單片機(jī)設(shè)計(jì)的出租車計(jì)費(fèi)器系統(tǒng)的諸多不足,提出了一種利用VHDL設(shè)計(jì)的基于CPLD的出租車計(jì)費(fèi)器系統(tǒng)的設(shè)計(jì)方案。該方案模擬了出租車的啟動(dòng)、停止、暫停、換擋等功能,并用動(dòng)態(tài)掃描電路顯示出租車所走的里程及其所...
關(guān)鍵字: VHDL CPLD 出租車計(jì)費(fèi)器 QuartusII