一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

基于VHDL語言和CPLD器件實(shí)現(xiàn)頻譜電平動態(tài)顯示電路的設(shè)計(jì)

電子設(shè)計(jì) ? 來源:郭婷 ? 作者:電子設(shè)計(jì) ? 2019-04-26 08:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1.引言

LED點(diǎn)陣顯示屏具有醒目、動態(tài)效應(yīng)好、省電節(jié)能、亮度較高、用途廣等優(yōu)點(diǎn),是現(xiàn)代 化城市的主要標(biāo)志之一。利用VHDL硬件描述語言設(shè)計(jì)了以CPLD器件為核心的控制電路, 在LED點(diǎn)陣屏上實(shí)現(xiàn)了音頻信號的頻譜型電平動態(tài)顯示, 而且具有顯示模式多樣化、易編程 修改,顏色可變、動態(tài)效果好等優(yōu)點(diǎn)。

2.系統(tǒng)組成

本設(shè)計(jì)所用的EPM570T100C5采用了Altera公司的MAXII (Multiple Array Matrix II) 系列器件作為目標(biāo)CPLD,采用雙色8*8LED點(diǎn)陣作為終端顯示器件,配合一些必需的外圍器件 和電路,實(shí)現(xiàn)了對音頻信號的選頻、AD轉(zhuǎn)換、各頻段的電平顯示模式控制、最終實(shí)現(xiàn)了音頻 信號的頻譜型電平的動態(tài)顯示。本系統(tǒng)的基本組成如圖1所示:

基于VHDL語言和CPLD器件實(shí)現(xiàn)頻譜電平動態(tài)顯示電路的設(shè)計(jì)

2.1 音頻輸入與預(yù)處理模塊

由于本設(shè)計(jì)采用8個頻段電平顯示,因此,筆者對音頻信號進(jìn)行了8個中心頻率分別為 100Hz、200Hz、500Hz、1000Hz、1500Hz、3000Hz、6000Hz、12000Hz的帶通電路的選頻處理, 經(jīng)電壓保持電路后送至以ADC0809為核心的八通道8位輸出數(shù)模轉(zhuǎn)換電路,由于ADC0809具有 八個輸入通道,受CPLD輸出的列選信號控制,從而實(shí)現(xiàn)了LED的八根列選線(共陰極)分別 對應(yīng)音頻信號的8個中心頻率,為頻譜型電平顯示實(shí)現(xiàn)了列選掃描控制。

由于列選信號的切換頻率設(shè)定為200Hz,即頻段切換周期為5ms,ADC0809 完全能夠勝 任音頻信號各頻段直流電平的A/D 轉(zhuǎn)換處理,因此,ADC0809 一直處于主動轉(zhuǎn)換狀態(tài),無需 接受CPLD 芯片的轉(zhuǎn)換控制。

2.2 核心控制模塊

本設(shè)計(jì)的核心模塊采用Altera公司的CPLD器件,型號為EPM570T100C5,它基于突破性的 CPLD架構(gòu),提供業(yè)界所有CPLD系列中單個I/O管腳最低成本和最小功耗。這些器件采用新的 查表(LUT)體系,采用TSMC的0.18μm嵌入Flash工藝,使其裸片尺寸僅為同樣工藝器件的1/4, 而且包括非易失性Flash存儲模塊和JTAG控制電路。

本電路采用12MHz的有源晶振,為CPLD提供主時鐘。EPM570T100C5芯片主要集成了分頻、 列選掃描、按鍵去抖、數(shù)字電平信號的線性比較、顯示模式控制、顯示數(shù)據(jù)ROM等功能模塊。

分頻電路對12MHz時鐘信號進(jìn)行分頻處理后得到200Hz的列選計(jì)數(shù)脈沖,送至74HC138譯 碼器的輸入端和ADC0809的通道地址選擇控制端,實(shí)現(xiàn)8*8LED點(diǎn)陣的列掃描動態(tài)控制和 ADC0809的通道選擇控制。

按照人眼的視覺習(xí)慣,線性比較電路主要負(fù)責(zé)將A/D轉(zhuǎn)換后的8位數(shù)據(jù)電平信號(共256 個組態(tài))轉(zhuǎn)換為8個梯級的數(shù)據(jù)信號,經(jīng)顯示模式控制電路處理后作為地址數(shù)送至顯示數(shù)據(jù) ROM,從而直接調(diào)用ROM中寄存的顯示模式數(shù)據(jù)。

2.3 輸出與顯示模塊

本設(shè)計(jì)采用雙色(紅色和綠色)8*8LED 點(diǎn)陣作為終端顯示器件,在CPLD 的ROM 數(shù)據(jù)控 制下,8*8LED 點(diǎn)陣的每個像素點(diǎn)能產(chǎn)生紅色、綠色、$(紅綠混合色),能夠再現(xiàn)顏色 的多樣化。

由于一般的I/O 的驅(qū)動能力是有限的,CPLD 中的ROM 輸出的顯示數(shù)據(jù)需要經(jīng)過驅(qū)動電 路后送至8*8LED 點(diǎn)陣的行選端(陽極),列選線(陰極)則受74HC138 輸出的低電平譯碼 信號的控制。

3.軟件設(shè)計(jì)

本設(shè)計(jì)采用Altera 公司的Quartus II 7.0 (32-Bit)集成開發(fā)系統(tǒng),它具有簡潔、合 理的操作界面,多語言支持的環(huán)境及其高效代碼生成編譯內(nèi)核使得所有的設(shè)計(jì)輸人、編譯、 綜合和仿真都可以在項(xiàng)目管理器中完成。另外,QuartusⅡ7.0 (32-Bit)支持幾乎所有的FPGA 和CPLD 芯片,與MATLABDSP Builder 結(jié)合可以進(jìn)行基于FPGA 的DSP 系統(tǒng)開發(fā),是DSP 硬件系統(tǒng)實(shí)現(xiàn)的關(guān)鍵EDA 工具,與SOPC Builder 結(jié)合,可實(shí)現(xiàn)SOPC 系統(tǒng)開發(fā),是一款較受 用戶歡迎的開發(fā)工具。

本文采用VHDL 語言作為硬件描述語言,采用自頂向下的層次化設(shè)計(jì)方法。為了突出各 模塊之間的連接關(guān)系,頂層模塊(Top.tdf)采用原理圖方式對各個功能模塊進(jìn)行綜合和調(diào) 用,如圖2 所示。

基于VHDL語言和CPLD器件實(shí)現(xiàn)頻譜電平動態(tài)顯示電路的設(shè)計(jì)

可以看出,軟件設(shè)計(jì)的功能模塊與系統(tǒng)組成中的核心模塊非常接近。

3.1 分頻與列選 掃描控制模塊

分頻模塊的作用是將12MHz的有源晶振時鐘信號通過軟件設(shè)計(jì)的方法分頻得到200Hz的 列選掃描時鐘信號。 列選掃描控制模塊的作用是設(shè)計(jì)一軟件計(jì)數(shù)器,將200Hz內(nèi)部信號轉(zhuǎn)換為列選掃描信號 (SEL[2 downto 0]),仿真波形如圖3所示。該信號送至74HC138以后能夠動態(tài)選中LED點(diǎn)陣的 某一列(共陰極),送至A/D0809以后能夠選擇相應(yīng)中心頻率的音頻信號進(jìn)行數(shù)模轉(zhuǎn)換。

基于VHDL語言和CPLD器件實(shí)現(xiàn)頻譜電平動態(tài)顯示電路的設(shè)計(jì)

3.2 按鍵去抖模塊

去抖的基本思路是設(shè)計(jì)一個移動寄存器,移位脈沖的周期約為5ms,當(dāng)按鍵輸入的低電 平信號持續(xù)三個以上的脈沖周期時才輸出一個低電平脈沖,達(dá)到去抖的目的。部分程序如下:

--****設(shè)計(jì)一個3位移位D寄存器****--

process(CLK_200Hz)

begin

IF(CLK_200Hz'EVENT AND CLK_200Hz='1')THEN

Q<=Keyin&Q(2 downto 1);

END IF;

end process;

flag<=Q(2) or Q(1) or Q(0);

Keyout<='0'when flag='0' else--如果連續(xù)3個CLK后Q仍為低電平,則輸出低電平'1';

END a;

3.3 線性比較模塊

由于A/D轉(zhuǎn)換后的8位數(shù)據(jù)電平信號共有256個組態(tài),而終端顯示模塊為8*8LED點(diǎn)陣, 8*8LED點(diǎn)陣的每列顯示梯級最多為8級,若加上全滅狀態(tài),8*8LED點(diǎn)陣的顯示梯級狀態(tài)共有9 種,因此,需要將A/D轉(zhuǎn)換后的8位數(shù)據(jù)電平信號按照人眼的視覺習(xí)慣轉(zhuǎn)換為9個梯級的數(shù)據(jù) 信號,本設(shè)計(jì)采用函數(shù)(function)的方法實(shí)現(xiàn)了信號轉(zhuǎn)換功能,部分程序如下:

function DATA_YM (indata :std_logic_vector(7 downto 0))

return integer is

variable result :integer range 0 to 8;---比較函數(shù)輸出begin

if indata<16 then result :=0;

elsif indata>=16 and indata<48 then

result :=1;

elsif indata>=48 and indata<80 then

result :=2;

elsif indata>=80 and indata<112 then

result :=3;

elsif indata>=112 and indata<144 then

result :=4;

elsif indata>=144 and indata<176 then

result :=5;

elsif indata>=176 and indata<208 then

result :=6;

elsif indata>=208 and indata<240 then

result :=7;

else

result :=8;

end if;

return result;

end function;

3.4 顯示控制模塊

本模塊由顯示模式控制、顯示數(shù)據(jù)ROM模塊組成。顯示模式控制模塊采用一個Process 進(jìn)程語句循環(huán)定義了12種顯示模式,具體顯示的模式由按鍵按下的次數(shù)決定,即按鍵次數(shù)作 為內(nèi)部計(jì)數(shù)信號,每種計(jì)數(shù)狀態(tài)則對應(yīng)一種ROM地址的起始值,從而實(shí)現(xiàn)了ROM地址能隨按鍵 次數(shù)而變化的確定關(guān)系。

顯示數(shù)據(jù)ROM模塊將所有的顯示模式數(shù)據(jù)以ROM表格數(shù)據(jù)的形式進(jìn)行片內(nèi)存儲,以便根據(jù) A/D轉(zhuǎn)換后的數(shù)據(jù)信號直接調(diào)用該表格數(shù)據(jù)。本模塊的功能仿真如圖4所示:

基于VHDL語言和CPLD器件實(shí)現(xiàn)頻譜電平動態(tài)顯示電路的設(shè)計(jì)

結(jié)果表明,該模塊能夠根據(jù)不同的地址值輸出相應(yīng)的顯示模式數(shù)據(jù),經(jīng)驅(qū)動電路后送至 LED點(diǎn)陣的16個陽極,能實(shí)現(xiàn)相應(yīng)的顯示模式的自動切換或按鍵輸入切換。

4.實(shí)物調(diào)試

筆者利用北京R&C百科融創(chuàng)公司的EDA實(shí)驗(yàn)箱,通過擴(kuò)展導(dǎo)線與外部電路進(jìn)行連接,將程 序下載到芯片EPM570T100C5進(jìn)行實(shí)物模擬調(diào)試,得到如圖5所示的顯示模式位圖。

基于VHDL語言和CPLD器件實(shí)現(xiàn)頻譜電平動態(tài)顯示電路的設(shè)計(jì)

結(jié)果表明,本系統(tǒng)達(dá)到了設(shè)計(jì)要求,完成了音頻信號的頻譜型電平動態(tài)顯示,具有正常 顯示、倒影顯示、單點(diǎn)顯示、雙點(diǎn)顯示等四大類顯示模式,每一大類顯示模式又能實(shí)現(xiàn)單紅 色、單綠色、$(紅綠混合色)三種顏色的自動切換,動態(tài)視覺效果好等特點(diǎn)。

5.結(jié)論

本文基于VHDL硬件描述語言,利用CPLD器件EPM570T100C5和LED點(diǎn)陣屏實(shí)現(xiàn)了對音頻信 號的頻譜顯示,并在電子設(shè)計(jì)的各個階段、各個層次進(jìn)行計(jì)算機(jī)模擬驗(yàn)證,保證設(shè)計(jì)過程的 正確性,拓展了CPLD在顯示領(lǐng)域的應(yīng)用。若將設(shè)計(jì)思路進(jìn)一步深入和擴(kuò)展,則能完成更大屏 幕、更多像素的LED頻譜顯示,能夠方便地應(yīng)用于商店、商場、卡拉OK等公共場所的LED顯示 區(qū)域,從而強(qiáng)化視覺效果。


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

    關(guān)注

    242

    文章

    23848

    瀏覽量

    674269
  • cpld
    +關(guān)注

    關(guān)注

    32

    文章

    1257

    瀏覽量

    171535
  • vhdl
    +關(guān)注

    關(guān)注

    30

    文章

    820

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    基于CPLD和FPGA的VHDL語言電路優(yōu)化設(shè)計(jì)

    語言進(jìn)行CPLD/FPGA設(shè)計(jì)開發(fā),Altera和Lattice已經(jīng)在開發(fā)軟件方面提供了基于本公司芯片的強(qiáng)大開發(fā)工具。但由于VHDL設(shè)計(jì)是行為級設(shè)計(jì),所帶來的問題是設(shè)計(jì)者的設(shè)計(jì)思想與電路
    發(fā)表于 06-18 07:45

    動態(tài)顯示電路的改進(jìn)

    本文主要講述的是動態(tài)顯示電路的改進(jìn)。
    發(fā)表于 04-22 15:32 ?21次下載

    基于CPLD頻譜電平顯示電路設(shè)計(jì)與實(shí)現(xiàn)

    本文基于VHDL硬件描述語言,利用CPLD器件EPM570T100C5和LED點(diǎn)陣屏實(shí)現(xiàn)了對音頻信號的
    發(fā)表于 02-24 14:46 ?28次下載

    基于CPLD頻譜電平顯示電路設(shè)計(jì)與實(shí)現(xiàn)

    本文基于VHDL硬件描述語言,利用CPLD器件EPM570T100C5和LED點(diǎn)陣屏實(shí)現(xiàn)了對音頻信號的
    發(fā)表于 07-17 18:07 ?25次下載

    555動態(tài)顯示LED整點(diǎn)語言報時電路

    555動態(tài)顯示LED整點(diǎn)語言報時電路
    發(fā)表于 10-27 09:47 ?980次閱讀
    555<b class='flag-5'>動態(tài)顯示</b>LED整點(diǎn)<b class='flag-5'>語言</b>報時<b class='flag-5'>電路</b>

    VHDL語言在FPGA/CPLD開發(fā)中的應(yīng)用?

    【摘 要】 通過設(shè)計(jì)實(shí)例詳細(xì)介紹了用VHDL(VHSIC Hardware DescriptionLanguage)語言開發(fā)FPGA/CPLD的方法,以及與電路圖輸入和其它HDL
    發(fā)表于 05-10 19:47 ?1334次閱讀
    <b class='flag-5'>VHDL</b><b class='flag-5'>語言</b>在FPGA/<b class='flag-5'>CPLD</b>開發(fā)中的應(yīng)用?

    采用CPLD/FPGA的VHDL語言電路優(yōu)化原理設(shè)計(jì)

    采用CPLD/FPGA的VHDL語言電路優(yōu)化原理設(shè)計(jì) VHDL(Very High Speed Integrated Circuit Ha
    發(fā)表于 03-19 11:38 ?2692次閱讀
    采用<b class='flag-5'>CPLD</b>/FPGA的<b class='flag-5'>VHDL</b><b class='flag-5'>語言</b><b class='flag-5'>電路</b>優(yōu)化原理設(shè)計(jì)

    基于CPLDVHDL語言數(shù)字鐘(含秒表)設(shè)計(jì)

    利用一塊芯片完成除時鐘源、按鍵、揚(yáng)聲器和顯示器(數(shù)碼管)之外的所有數(shù)字電路功能。所有數(shù)字邏輯功能都在CPLD器件上用VHDL
    發(fā)表于 09-27 15:08 ?366次下載
    基于<b class='flag-5'>CPLD</b>的<b class='flag-5'>VHDL</b><b class='flag-5'>語言</b>數(shù)字鐘(含秒表)設(shè)計(jì)

    數(shù)碼管(動態(tài)顯示)【C語言版】

    數(shù)碼管(動態(tài)顯示)【C語言版】數(shù)碼管(動態(tài)顯示)【C語言版】數(shù)碼管(動態(tài)顯示)【C語言版】數(shù)碼管
    發(fā)表于 12-29 15:51 ?0次下載

    動態(tài)顯示-譯碼器片選實(shí)現(xiàn)【匯編版】

    動態(tài)顯示-譯碼器片選實(shí)現(xiàn)【匯編版】動態(tài)顯示-譯碼器片選實(shí)現(xiàn)【匯編版】動態(tài)顯示-譯碼器片選實(shí)現(xiàn)【匯
    發(fā)表于 12-29 15:51 ?0次下載

    動態(tài)顯示-譯碼器片選實(shí)現(xiàn)【C語言

    動態(tài)顯示-譯碼器片選實(shí)現(xiàn)【C語言動態(tài)顯示-譯碼器片選實(shí)現(xiàn)【C語言
    發(fā)表于 12-29 15:51 ?0次下載

    數(shù)碼管(動態(tài)顯示)【匯編+C語言版】

    數(shù)碼管(動態(tài)顯示)【匯編+C語言版】,與前面的靜態(tài)顯示相呼應(yīng),多種集合,符合C語言和匯編愛好者學(xué)習(xí)。
    發(fā)表于 12-31 10:16 ?0次下載

    動態(tài)顯示-譯碼器片選實(shí)現(xiàn)【C語言+匯編版】

    動態(tài)顯示-譯碼器片選實(shí)現(xiàn)【C語言+匯編版】
    發(fā)表于 12-31 10:36 ?0次下載

    使用單片機(jī)實(shí)現(xiàn)1602液晶動態(tài)顯示的C語言程序免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用單片機(jī)實(shí)現(xiàn)1602液晶動態(tài)顯示的C語言程序免費(fèi)下載。
    發(fā)表于 03-23 13:57 ?13次下載

    使用單片機(jī)實(shí)現(xiàn)數(shù)碼管動態(tài)顯示的C語言實(shí)例免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用單片機(jī)實(shí)現(xiàn)數(shù)碼管動態(tài)顯示的C語言實(shí)例免費(fèi)下載。
    發(fā)表于 04-02 10:28 ?24次下載