趙杰
(商洛學(xué)院電子信息與電氣工程學(xué)院,陜西商洛 726000)
隨著技術(shù)的發(fā)展,多種接口協(xié)議現(xiàn)已廣泛用于各大領(lǐng)域,從航空航天、國防軍事到民用通信、多媒體技術(shù)等都涉及到接口的應(yīng)用[1-2]。常見的有A/D、D/A、SPI、IIC、CAN、VGA、PCI等。一般的實(shí)現(xiàn)方式以專用接口芯片或單片機(jī)、DSP控制實(shí)現(xiàn)為主[3-8]。專用芯片需要為各接口協(xié)議專門配置,會(huì)增加系統(tǒng)成本。單片機(jī)在很多簡單控制上可以處理,但是計(jì)算速度和性能很有限[9]。例如使用單片機(jī)進(jìn)行A/D、D/A轉(zhuǎn)換,進(jìn)行一個(gè)采樣周期中必須完成的很多操作步驟才能實(shí)現(xiàn)。由于單片機(jī)指令的指令周期長,因此對于速度稍高的器件就無法控制[10],DSP等器件處理能力相對較強(qiáng)。單片機(jī)、DSP等若要實(shí)現(xiàn)多種接口同時(shí)控制難度較大,而且后期擴(kuò)展接口不方便。本文利用FPGA允許重復(fù)擦寫、在線配置靈活的特性[11-12],對常見的A/D、D/A和VGA三種接口實(shí)現(xiàn)同時(shí)控制。利用主流硬件描述語言Verilog HDL描述接口控制功能,頂層設(shè)計(jì)采用原理圖方式來實(shí)現(xiàn),而且系統(tǒng)允許后期擴(kuò)展接口。
本文以控制TLC549芯片為例。TLC549是8位A/D轉(zhuǎn)換器,采用開關(guān)電容逐次逼近的方式實(shí)現(xiàn)模數(shù)轉(zhuǎn)換。本文設(shè)計(jì)使用該芯片采集模擬電壓信號(hào),進(jìn)行模數(shù)轉(zhuǎn)換,將轉(zhuǎn)換后數(shù)值通過數(shù)碼管顯示,主要過程如下:
1)產(chǎn)生AD采集時(shí)鐘信號(hào)clk以及數(shù)碼管掃描時(shí)鐘ioclk,初始化A/D。
2)AD采樣,當(dāng)cs<=0時(shí),開 CS片選,當(dāng)cs<=1時(shí),關(guān) CS片選。
3)將采集的數(shù)據(jù)data轉(zhuǎn)換為十進(jìn)制數(shù)segdata。
4)數(shù)碼管掃描顯示。
仿真結(jié)果如圖1所示。
圖1 A/D接口控制仿真
本文設(shè)計(jì)使用DA芯片TLC5615將數(shù)字信號(hào)轉(zhuǎn)換為模擬信號(hào),數(shù)據(jù)位12位,其中10位是有效位,2位是填充位,填充位補(bǔ)0即可。主要控制過程如下:
1)初始化 TLC5615。
2)設(shè)置TLC5615片選信號(hào)cs。
3)等待轉(zhuǎn)換完成后拉低片選,即cs為0時(shí)傳送有效數(shù)據(jù)。
仿真結(jié)果如圖2所示。
圖2 D/A仿真結(jié)果圖
本文設(shè)計(jì)可以控制VGA接口,使顯示器顯示色帶,在實(shí)驗(yàn)中使用到了9個(gè)IO口,各用3個(gè)IO口分別代表 vga_r、vga_g、vga_b即紅、綠、藍(lán)三原色信號(hào)。為使色帶便于觀察,不宜顯示太多顏色,選擇少量顏色即可。主要控制過程如下:
1)產(chǎn)生存儲(chǔ)顏色數(shù)值的信號(hào)。
2)要實(shí)現(xiàn)色帶的顯示,必須有有效顯示區(qū)標(biāo)志和有效顯示區(qū)坐標(biāo),即產(chǎn)生同步行同步和場同步信號(hào)(hsync信號(hào)和vsync信號(hào))。
3)根據(jù)顏色存儲(chǔ)數(shù)值,分配給 vga_r、vga_g、vga_b三個(gè)信號(hào),顯示屏顯示的顏色是三種顏色的疊加。
仿真結(jié)果如圖3所示。
本文設(shè)計(jì)用同一個(gè)時(shí)鐘控制VGA接口、ADC接口和DAC接口使各個(gè)現(xiàn)象同時(shí)實(shí)現(xiàn)。頂層設(shè)計(jì)電路原理圖如圖4所示,各接口總體仿真結(jié)果如圖5所示,頂層設(shè)計(jì)在Quartus II中編譯結(jié)果如圖6所示??梢姡词箤P2C5T144C8N這種硬件資源很少的器件,也只消耗了1/4左右的邏輯塊,后續(xù)若要進(jìn)行擴(kuò)展接口控制也很方便。
圖3 VGA接口仿真結(jié)果
圖4 頂層設(shè)計(jì)電路原理圖
圖5 頂層設(shè)計(jì)仿真結(jié)果
圖6 頂層實(shí)體編譯結(jié)果
本文設(shè)計(jì)中采用的自頂向下的設(shè)計(jì)方法,體現(xiàn)了模塊化的設(shè)計(jì)思想。各個(gè)模塊所具有的相對獨(dú)立性更好地保證了系統(tǒng)的穩(wěn)定性,節(jié)約了系統(tǒng)資源。在調(diào)試階段,可根據(jù)某一個(gè)接口模塊的功能實(shí)現(xiàn)情況進(jìn)行調(diào)試。后期也可以方便地進(jìn)行更多接口控制的擴(kuò)展。
參考文獻(xiàn):
[1]李春娟.基于C8051F040單片機(jī)與CAN總線的某自跟蹤雷達(dá)系統(tǒng)控制電路的研制[J].數(shù)字技術(shù)與應(yīng)用,2013(3):34-35.
[2]劉英男,綦聲波,吳學(xué)英,等.海洋氣象觀測用低功耗智能型氣壓傳感器設(shè)計(jì)[J].自動(dòng)化儀表,2016,37(1):96-99.
[3]郎杭,張艷豐.多媒體pci接口控制芯片saa7146a及其應(yīng)用[J].商情,2011(11):64.
[4]孔令榮.基于SPI接口的溫度測量系統(tǒng)[J].電子科技,2013,26(2):79-82.
[5]胡家華,付文廣,郜事成,等.STC15F2K60S2單片機(jī)與CAN總線接口的實(shí)現(xiàn)[J].微型機(jī)與應(yīng)用,2014,33(17):55-58.
[6]花魁,沈捷,周柱,等.基于DM6437的圖像采集與VGA顯示系統(tǒng)設(shè)計(jì)[J].華僑大學(xué)學(xué)報(bào)(自然科學(xué)版),2013,34(1):26-29.
[7]潘興明,石倩,路勝杰,等.基于海明編碼的EEPROM數(shù)據(jù)存取功能的實(shí)現(xiàn)[J].電子設(shè)計(jì)工程,2015,23(7):162-165.
[8]段云強(qiáng).基于DSP與PIC單片機(jī)的CAN總線系統(tǒng)研究[J].電子測試,2016(13):26-27.
[9]白苗潔.基于微控制器的數(shù)字信號(hào)發(fā)生器的設(shè)計(jì)與實(shí)現(xiàn)[J].數(shù)碼世界,2016(6):69.
[10]張英平,張朝陽.基于單片機(jī)的逐次比較型AD轉(zhuǎn)換電路設(shè)計(jì)[J].阜陽師范學(xué)院學(xué)報(bào)(自然科學(xué)版),2014,31(2):54-57.
[11]楊海鋼,孫嘉斌,王慰,等.FPGA器件設(shè)計(jì)技術(shù)發(fā)展綜述[J].電子與信息學(xué)報(bào),2010,32(3):714-727.
[12]張鵬.淺談FPGA器件設(shè)計(jì)技術(shù)發(fā)展綜述[J].電子測試,2014(10):41-43.