新聞中心

        EEPW首頁(yè) > 光電顯示 > 設(shè)計(jì)應(yīng)用 > 基于FPGA 的立體LED顯示驅(qū)動(dòng)器的設(shè)計(jì)

        基于FPGA 的立體LED顯示驅(qū)動(dòng)器的設(shè)計(jì)

        作者: 時(shí)間:2010-11-23 來(lái)源:網(wǎng)絡(luò) 收藏

          系統(tǒng)硬件結(jié)構(gòu)如圖1 所示。Nios Ⅱ主端口的時(shí)鐘是內(nèi)部總線的時(shí)鐘,本系統(tǒng)采用50 MHz,用流模式傳輸?shù)淖畲髱捘苓_(dá)到100 Mbit/s。在電路設(shè)計(jì)時(shí),首先用硬件描述語(yǔ)言寫(xiě)用戶邏輯,創(chuàng)建Alvalon Slave 接口使之直接和DMA 控制器的主端口相連接, 完成硬件設(shè)計(jì)。再在Nios Ⅱ IDE 環(huán)境下,用C 語(yǔ)言編寫(xiě)DMA 初始化和控制程序,使得流模式的數(shù)據(jù)傳輸在FIFO 與Avalon 總線的接口上,能夠做到無(wú)縫連接。

          2.3 立體 控制器的設(shè)計(jì):

          Avalon 流模式 控制器硬件結(jié)構(gòu)如圖2 所示,用硬件描述語(yǔ)言設(shè)計(jì) 時(shí)序發(fā)生器, 由于LED 各個(gè)像素點(diǎn)的色彩是以RGB 形式的亮度數(shù)據(jù)用二進(jìn)制數(shù)字方式存儲(chǔ)在SDRAM 中的,使用D/T 轉(zhuǎn)換技術(shù)[5]即亮度時(shí)間轉(zhuǎn)換技術(shù)就可以實(shí)現(xiàn)LED 屏的全彩顯示。筆者設(shè)計(jì)了一個(gè)專用的函數(shù)f(i),用此函數(shù)即可統(tǒng)一控制各個(gè)像素點(diǎn)實(shí)現(xiàn)全屏幕所有像素點(diǎn)相互獨(dú)立而又同步的D/T 轉(zhuǎn)換。這里,f(i)作為L(zhǎng)ED_latch 信號(hào)。


        圖2 Avalon 流模式LED 控制器結(jié)構(gòu)圖

          因?yàn)镕IFO 中的數(shù)據(jù)格式是左、右視圖列交叉顯示,因此LED 控制的設(shè)計(jì)是以列驅(qū)動(dòng)的。LED 時(shí)序發(fā)生器的設(shè)計(jì)如圖3 所示,將立體圖像對(duì)中左、右眼圖像幀每個(gè)像素的數(shù)據(jù)用乒乓開(kāi)關(guān)控制存儲(chǔ)在FIFO 緩存之中,以16 個(gè)列像素點(diǎn)的驅(qū)動(dòng)為例,F(xiàn)IFO 緩存之中的左、右視頻數(shù)據(jù)分別各連接一個(gè)16 位可預(yù)置移位寄存器,通過(guò)16 個(gè)時(shí)鐘脈沖的移位產(chǎn)生16 個(gè)像數(shù)的驅(qū)動(dòng)數(shù)據(jù),由片選信號(hào)選擇顯示行數(shù),由D/T 轉(zhuǎn)換函數(shù)f(i)作為L(zhǎng)ED_latch信號(hào)鎖存,F(xiàn)IFO 緩存的數(shù)據(jù)經(jīng)過(guò)8 次移位即可完成1 個(gè)像素的真彩驅(qū)動(dòng)。

        圖3 LED 時(shí)序發(fā)生器內(nèi)部結(jié)構(gòu)圖

          每幀畫(huà)面顯示1 個(gè)立體像素真彩信號(hào)的時(shí)間需要移位8 次, 即250 個(gè)基本周期。如果LED 大屏幕顯示器每秒最多顯示30 幀, 采用1/8 驅(qū)動(dòng)模式和立體像素的1/2時(shí)分復(fù)用, 再考慮選用16 位移位鎖存LED 恒流驅(qū)動(dòng)電路,實(shí)際要求的時(shí)鐘頻率為2 MHz。

          3 系統(tǒng)軟件設(shè)計(jì)與仿真:

          軟件設(shè)計(jì)就是利用SoPC Builder 生成軟件文件,用文本編輯器編寫(xiě)匯編語(yǔ)言或C/C++源程序,用GUNPro 將源程序編譯成可執(zhí)行文件, 并通過(guò)下載電纜對(duì)可執(zhí)行程序進(jìn)行調(diào)試和運(yùn)行。軟件系統(tǒng)分為兩部分:主程序和中斷服務(wù)程序。主程序主要完成系統(tǒng)的初始化,其主要功能是:對(duì)于系統(tǒng)中的每一個(gè)微處理器,從設(shè)備都生成一個(gè)定義該設(shè)備地址的頭文件,為軟件開(kāi)發(fā)創(chuàng)建存儲(chǔ)器映射文件。DMA 的操作都通過(guò)中斷服務(wù)程序執(zhí)行,把需要送出的像素信息排成一行順序送出形成數(shù)據(jù)流,借助于Avalon 流模式外設(shè)的設(shè)計(jì)方法, 實(shí)現(xiàn)一個(gè)Avalon 流模式的LED 控制器。利用DMA 控制器在流模式控制器和SRAM 之間建立一條DMA 傳送通道, 讓硬件來(lái)完成像素信息的自動(dòng)讀取。軟件流程如圖4 所示,部分內(nèi)部時(shí)序仿真如圖5 所示。



        關(guān)鍵詞: FPGA LED 驅(qū)動(dòng)器

        評(píng)論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 通辽市| 安泽县| 三明市| 云梦县| 巩义市| 白沙| 都江堰市| 东丽区| 天气| 宁陕县| 锡林郭勒盟| 读书| 商丘市| 金湖县| 迭部县| 衡山县| 鄂伦春自治旗| 阳城县| 元氏县| 吴川市| 大名县| 巩义市| 平武县| 陵川县| 东阿县| 安平县| 松溪县| 恩平市| 洛川县| 东港市| 万全县| 固安县| 门源| 红河县| 类乌齐县| 旬阳县| 崇阳县| 金湖县| 外汇| 长宁县| 富裕县|