<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 光電顯示 > 設(shè)計(jì)應(yīng)用 > 基于cyclone EP1C6的LED大屏設(shè)計(jì)方案

          基于cyclone EP1C6的LED大屏設(shè)計(jì)方案

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

          3.3 控制單元軟件
          控制單元的是在QUARTUSII環(huán)境下完成,并用硬件描述語(yǔ)言VHDL描述,主要功能是配置、掃描控制電路。該單元的軟件設(shè)計(jì)模塊如圖5所示。

          本文引用地址:http://www.ex-cimer.com/article/169530.htm

          雙端口RAM的配置完全通過(guò)在QUARTUS環(huán)境中設(shè)置菜單實(shí)現(xiàn),配置完成后將自動(dòng)生成一個(gè)VHDL文件,描述的內(nèi)部邏輯功能,在整個(gè)程序設(shè)計(jì)作為一個(gè)元件調(diào)用。
          的掃描模塊的軟件設(shè)計(jì)如下:首先對(duì)FPGA總時(shí)鐘clk進(jìn)行64分頻得到clk1,clk1的低電平其間FPGA讀取雙口RAM的數(shù)據(jù),每4個(gè)clk周期讀一個(gè)16位的數(shù)據(jù),共讀出16個(gè)數(shù)。clk1的高電平期間FPGA進(jìn)行列掃描,每2個(gè)clk周期同時(shí)輸出16個(gè)數(shù)的1位,共32個(gè)周期將這16個(gè)數(shù)由并轉(zhuǎn)串輸出到16根數(shù)據(jù)線上,由于寫RAM的速度低于FPGA對(duì)數(shù)據(jù)的處理速度,剩下的32個(gè)clk周期用于等待完成一個(gè)區(qū)的寫操作。12個(gè)clk1周期后,一行的數(shù)據(jù)全部掃描完畢,F(xiàn)PGA輸出一個(gè)列鎖存信號(hào)給74LS595鎖存這些數(shù)據(jù),同時(shí)輸出行掃描信號(hào)和行鎖存信號(hào),接著掃描第二行,由于采用16根數(shù)據(jù)線進(jìn)行隔8行掃描,整個(gè)電子屏128行只要完成8次行掃描即可,時(shí)序如圖6所示。

          5 結(jié)束語(yǔ)
          通過(guò)采用自頂向下的設(shè)計(jì)思想,運(yùn)用EDA技術(shù)實(shí)現(xiàn)FPGA內(nèi)部雙口RAM的配置和掃描控制電路的設(shè)計(jì),將復(fù)雜的系統(tǒng)設(shè)計(jì)集成在一起,只需一片F(xiàn)PGA就可以實(shí)現(xiàn)所需的功能,高集成度帶來(lái)的不僅是成本降低,還提高了系統(tǒng)的穩(wěn)定性和可靠性。 設(shè)計(jì)已成功應(yīng)用于我院的圖文發(fā)布電子屏,實(shí)踐證明:本系統(tǒng)能以多種播出方式顯示各種字體和型號(hào)的文字和圖形信息,與同類設(shè)計(jì)相比,畫面清晰、性能穩(wěn)定、操作使用簡(jiǎn)單,具有很好的應(yīng)用前景。


          上一頁(yè) 1 2 3 下一頁(yè)

          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();