• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Basys開(kāi)發(fā)板的VGA顯示控制設(shè)計(jì)※

      2014-09-25 03:05:46徐彬詹華群
      關(guān)鍵詞:數(shù)碼管計(jì)數(shù)器時(shí)序

      徐彬,詹華群

      (江西科技師范大學(xué)通信與電子學(xué)院,南昌330000)

      引 言

      如今隨著液晶顯示器的出現(xiàn),越來(lái)越多的數(shù)字產(chǎn)品開(kāi)始使用液晶作為顯示終端?;赩GA標(biāo)準(zhǔn)的顯示器仍是目前普遍使用的顯示器。若驅(qū)動(dòng)此類(lèi)顯示器,需要很高的掃面頻率,以及極短的處理時(shí)間。正是由于這些特點(diǎn),所以可以用FPGA來(lái)實(shí)現(xiàn)對(duì)VGA顯示器的驅(qū)動(dòng)。

      雖然VGA專(zhuān)用芯片具有更穩(wěn)定的VGA時(shí)序和更多的顯示模式可供選擇,但設(shè)計(jì)和使用VGA顯示控制更具有以下優(yōu)勢(shì):

      ①使用芯片更少,節(jié)省板上資源,減小布線(xiàn)難度;

      ②當(dāng)進(jìn)行高速數(shù)據(jù)傳輸時(shí),具有更小的高頻噪聲干擾;

      ③FPGA(現(xiàn)場(chǎng)可編程門(mén)陣列)設(shè)計(jì)VGA接口可以將要顯示的數(shù)據(jù)直接送到顯示器,節(jié)省了計(jì)算機(jī)的處理過(guò)程,加快了數(shù)據(jù)的處理速度,節(jié)約了硬件成本。

      1 系統(tǒng)整體設(shè)計(jì)框架

      VGA顯示控制整體設(shè)計(jì)方案框圖如圖1所示,將其劃分為電源模塊、時(shí)鐘電路模塊、VGA接口模塊、字庫(kù)/圖庫(kù)模塊、顯示器等。再利用Verilog語(yǔ)言對(duì)FPGA的各個(gè)子模塊進(jìn)行編程設(shè)計(jì),同時(shí)對(duì)各個(gè)子模塊的功能分別進(jìn)行調(diào)試,最后將所有調(diào)試成功的子模塊并在一個(gè)頂層模塊下,最終實(shí)現(xiàn)VGA顯示控制設(shè)計(jì)。

      圖1 VGA顯示控制整體設(shè)計(jì)方案框圖

      2 VGA顯示控制的FPGA實(shí)現(xiàn)

      2.1 存儲(chǔ)功能模塊

      存儲(chǔ)功能模塊的主要功能是存儲(chǔ)圖片色彩信息,其存儲(chǔ)媒介為FPGA內(nèi)部的硬核塊RAM,塊RAM是以硬核的方式內(nèi)嵌到FPGA芯片中的,不占用芯片的邏輯資源,是FPGA芯片內(nèi)部的一種寶貴資源。FPGA內(nèi)嵌的塊RAM組件可配置為單口RAM、雙口RAM、分布式ROM、塊ROM和先進(jìn)先出存儲(chǔ)器FIFO等存儲(chǔ)結(jié)構(gòu)。

      本文只進(jìn)行圖片的顯示,所以使用單口的塊ROM存儲(chǔ)圖片信息,如果想實(shí)現(xiàn)更復(fù)雜的設(shè)計(jì),如文字的滾動(dòng)顯示、圖片的動(dòng)畫(huà)顯示等,可以使用雙口RAM進(jìn)行設(shè)計(jì)。由于圖片信息比較大,而B(niǎo)ASYS板子上的資源又有限,這就要求圖片不易過(guò)大。搜集的各種資料和不斷的實(shí)驗(yàn)結(jié)果表明,大小在8 192字節(jié)內(nèi)的圖片是可以顯示的。這里第一幅圖選用自己的名字徐彬。圖片信息大小為:63×32×8=16 128位。第二幅選用江西科技師范大學(xué)。圖片信息大小為120×50×8=48 000位。尋找到圖片后,利用Xilinx ISE中的IP核生成工具Core Generator生成單口ROM,如圖2所示。

      圖2 單口ROM圖

      將要顯示的圖片信息存儲(chǔ)到塊ROM中。第一幅圖片選擇數(shù)據(jù)寬度為8,深度為2 016的ROM。第二幅圖片選擇的ROM數(shù)據(jù)寬度為8,深度為6 000。在工程里使用IP核生成工具生成單口ROM,在生成過(guò)程中處理好ROM的數(shù)據(jù)寬度和深度。塊存儲(chǔ)的時(shí)候,需要加載的是一個(gè).coe文件來(lái)初始化存儲(chǔ)器的內(nèi)容,這時(shí)候需要用到Image2Lcd軟件,取圖片的色彩信息保存為.coe文件初始化到ROM中。

      2.2 VGA控制模塊

      時(shí)序的驅(qū)動(dòng)是設(shè)計(jì)VGA顯示控制的一個(gè)重要問(wèn)題,關(guān)系到設(shè)計(jì)是否成功。時(shí)序若不正確,則不能夠正確地顯示,有時(shí)候甚至還會(huì)損害顯示設(shè)備。因此,時(shí)序的設(shè)計(jì)必須嚴(yán)格遵循VGA的標(biāo)準(zhǔn),在此設(shè)計(jì)中使用的分辨率為800×600,要求像素時(shí)鐘為50MHz。

      圖3 VGA時(shí)序圖

      根據(jù)VGA時(shí)序的標(biāo)準(zhǔn)行、場(chǎng)同步信號(hào)有4種狀態(tài),時(shí)序圖如圖3所示,具有同步脈沖信號(hào)(Sync)、顯示后沿信號(hào)(Back porch)、I顯示的時(shí)間間隔(Display interval)、顯示前沿(Front porch),這4種狀態(tài)具有很清晰的時(shí)序規(guī)律。設(shè)置兩個(gè)計(jì)數(shù)器,模為1056的行計(jì)數(shù)器和模628的列計(jì)數(shù)器,系統(tǒng)時(shí)鐘為50MHz用來(lái)控制行計(jì)數(shù)器,通過(guò)計(jì)數(shù)器的值來(lái)控制行信號(hào)HSYNC,然后在通過(guò)行信號(hào)HSYNC來(lái)控制列計(jì)數(shù)器,通過(guò)計(jì)數(shù)器的值來(lái)控制列信號(hào)VSYNC。

      2.3 ROM讀取控制模塊

      ROM讀取控制模塊是VGA顯示設(shè)備和存儲(chǔ)數(shù)據(jù)信息ROM之間的通道,為了使VGA顯示設(shè)備能夠準(zhǔn)確地顯示圖片信息,必須嚴(yán)格遵循顯示設(shè)備的掃描規(guī)律,產(chǎn)生相應(yīng)的顯示信息。

      首先,在程序中通過(guò)兩次例化分別調(diào)用存儲(chǔ)在FPGA內(nèi)嵌ROM中的兩幅圖,然后在程序中通過(guò)坐標(biāo)定位將圖片顯示到想要顯示的區(qū)域。本文的兩幅圖片分別將顯示區(qū)域定在從屏幕的(500,350)坐標(biāo)到(563,382)坐標(biāo)區(qū)域內(nèi)從屏幕的(400,350)坐標(biāo)到(520,400)坐標(biāo)區(qū)域內(nèi)。

      因?yàn)樵O(shè)計(jì)實(shí)現(xiàn)的功能是利用鍵盤(pán)上的按鍵對(duì)兩幅圖進(jìn)行切換,所以不必?fù)?dān)心顯示區(qū)域有重疊而產(chǎn)生覆蓋現(xiàn)象。在圖片的顯示過(guò)程中,每當(dāng)坐標(biāo)計(jì)數(shù)器刷新到圖片顯示指定區(qū)域內(nèi)時(shí),就要判斷相應(yīng)掃描點(diǎn)所包含的圖片信息,將其賦給RGB進(jìn)行色彩的顯示。

      3 PS2顯示控制器的FPGA實(shí)現(xiàn)

      3.1 PS/2傳輸協(xié)議

      PS/2鍵盤(pán)到主機(jī)單向通信的原理如下:PS/2主從設(shè)備之間采用雙向同步串行的機(jī)制進(jìn)行數(shù)據(jù)傳輸,從設(shè)備的晶振時(shí)鐘信號(hào)作為通信過(guò)程中的同步時(shí)鐘信號(hào),鍵盤(pán)發(fā)送到主機(jī)的每一幀數(shù)據(jù)包含11位二進(jìn)制代碼,每位數(shù)據(jù)在鍵盤(pán)時(shí)鐘的下降沿被主機(jī)從數(shù)據(jù)線(xiàn)上讀走。PS/2傳輸協(xié)議如圖4所示。

      圖4 PS/2傳輸協(xié)議

      這11位數(shù)據(jù)的含義分別是:START為起始位,總是為0,以作設(shè)備同步之用;8個(gè)數(shù)據(jù)位DATA0~DATA7低位在前;PARTTY為奇校驗(yàn)位;STOP為停止位,總是為1。正如鍵按下就會(huì)有掃描碼(通碼)發(fā)往主機(jī)一樣,只要鍵一釋放,就會(huì)有掃描碼(斷碼)發(fā)往主機(jī)。

      每個(gè)按鍵都被分配了唯一的通碼和斷碼。PS/2鍵盤(pán)第二套掃描碼中,大多數(shù)按鍵的通碼只有一個(gè)字節(jié),一幀就可以發(fā)完,這些按鍵的斷碼一般是在通碼前面加個(gè)F0h,所以這些兩個(gè)字節(jié)的斷碼就需要兩幀來(lái)發(fā)送。比如G鍵的通碼34h、G鍵的斷碼F0h34h,按下G鍵后,然后松開(kāi)G鍵,鍵盤(pán)就會(huì)依次向主機(jī)發(fā)送34h、F0h34h。但此次設(shè)計(jì)所用到的輸入按鍵是通碼有兩個(gè)字節(jié),斷碼有三個(gè)字節(jié)的特殊按鍵。

      3.2 鍵盤(pán)按鍵控制實(shí)現(xiàn)

      設(shè)計(jì)中只用到了兩個(gè)按鍵——左鍵和右鍵,而且實(shí)驗(yàn)只需用左鍵控制第一幅圖片的顯示,右鍵控制第二幅圖片的顯示。因此,只需要在程序中檢測(cè)到這兩個(gè)按鍵的通碼即可,即檢測(cè)到左鍵的通碼到來(lái)即顯示徐彬二字的圖片,當(dāng)松開(kāi)按鍵時(shí),不需要考慮其斷碼需要帶來(lái)某種操作,繼續(xù)保持第一幅圖片的顯示。

      當(dāng)檢測(cè)到右鍵的通碼到來(lái)即顯示江西科技師范大學(xué)的圖片,當(dāng)松開(kāi)按鍵時(shí),也不需要考慮其斷碼需要帶來(lái)的某種操作,繼續(xù)保持住第二幅圖片的顯示。而對(duì)其余的按鍵在本次設(shè)計(jì)中暫不需要考慮。

      4 數(shù)碼管動(dòng)態(tài)顯示控制

      4.1 數(shù)碼管點(diǎn)亮控制

      數(shù)碼管按其段數(shù)分可七段數(shù)碼管和八段數(shù)碼管,它們的區(qū)別在于八段數(shù)碼管比七段數(shù)碼管多一個(gè)發(fā)光的二極管單元,即多一個(gè)小數(shù)點(diǎn)顯示段。按照顯示“8”的個(gè)數(shù),又可分為1位、2位、4位等數(shù)碼管。

      數(shù)碼管按發(fā)光二極管的連接方式可分為共陽(yáng)極數(shù)碼管和共陰極數(shù)碼管。共陽(yáng)數(shù)碼管指將所有發(fā)光二極管的陽(yáng)極連接到一起形成一個(gè)公共陽(yáng)極數(shù)碼管。共陽(yáng)數(shù)碼管應(yīng)用時(shí),應(yīng)將公共陽(yáng)極接到+5V或+3.3V,若某一段的發(fā)光二極管的陰極為低電平,則相應(yīng)段就點(diǎn)亮,若為高電平,則相應(yīng)段就不被點(diǎn)亮。共陰數(shù)碼管指將所有發(fā)光二極管的陰極接到一起形成一個(gè)公共陰極的數(shù)碼管。共陰數(shù)碼管應(yīng)用時(shí)應(yīng)將公共陰極接地,若某一段發(fā)光二極管的陽(yáng)極為高電平,則相應(yīng)段就被點(diǎn)亮,若某段的陽(yáng)極為低電平時(shí),則相應(yīng)段就不被點(diǎn)亮。

      可以看出數(shù)碼管是共陽(yáng)極的4位數(shù)管碼,即給低電平時(shí)數(shù)碼管點(diǎn)亮,如圖5所示。

      4.2 數(shù)碼管數(shù)字顯示控制:

      由于所有數(shù)碼管共用一個(gè)段選,為了能夠獨(dú)立顯示每位數(shù)碼管,只能用位選來(lái)區(qū)分不同的數(shù)碼管。即每次只將某一位數(shù)碼管的位選置為有效,其他的數(shù)碼管位選都無(wú)效。此時(shí)的段選決定了該位數(shù)碼管的顯示內(nèi)容,然后在下一時(shí)刻,置下一位數(shù)碼管的位選有效,而其他的數(shù)碼管位選都無(wú)效。依此類(lèi)推,不斷循環(huán)往復(fù)。

      每次位選刷新速度比較快,同時(shí)由于數(shù)碼管自身的余輝特性,使每位數(shù)碼管在其變暗之前就又會(huì)被重新刷新,因此人眼則無(wú)法感覺(jué)到數(shù)碼管變暗。如果刷新頻率低于一定值,則人眼會(huì)感覺(jué)到數(shù)碼管在閃爍。所以,一般刷新頻率會(huì)在60Hz~1kHz之間,這樣多位數(shù)碼管顯示比較理想。

      圖5 數(shù)碼管點(diǎn)亮

      該設(shè)計(jì)是在開(kāi)發(fā)板Basys上進(jìn)行實(shí)驗(yàn),其是共陽(yáng)極的4位數(shù)碼管,而在此項(xiàng)目工程中只需使用到1個(gè)數(shù)碼管,所以在動(dòng)態(tài)顯示中將其他的3位數(shù)碼管置1屏蔽不亮。程序如下:

      這樣即實(shí)現(xiàn)了實(shí)驗(yàn)所想達(dá)到的要求。

      以上是對(duì)位選的一個(gè)介紹,而對(duì)于段選,數(shù)碼管可以顯示從0到f這16個(gè)字符,只需要分別對(duì)0到f進(jìn)行編碼顯示。本次設(shè)計(jì)不需要如此復(fù)雜,由于只用到1和2兩個(gè)數(shù)字,因此,對(duì)1和2進(jìn)行段選編碼即可。程序如下:

      這樣即實(shí)現(xiàn)了實(shí)驗(yàn)所想達(dá)到的要求。

      5 實(shí)驗(yàn)結(jié)果

      5.1 實(shí)驗(yàn)的環(huán)境

      實(shí)驗(yàn)的環(huán)境包括:

      ①開(kāi)發(fā)工具:Xilinx ISE 9.1。

      ②開(kāi)發(fā)語(yǔ)言:硬件描述語(yǔ)言verilog HDL。

      ③目標(biāo)板:Xilinx公司Basys開(kāi)發(fā)板。

      5.2 實(shí)驗(yàn)結(jié)果

      如圖6、圖7所示,屏幕上顯示兩幅圖片,利用鍵盤(pán),通過(guò)控制鍵盤(pán)的左右鍵實(shí)現(xiàn)對(duì)兩幅圖片的切換,并使用數(shù)碼管顯示。當(dāng)按下左鍵的時(shí)候屏幕出現(xiàn)第一幅圖片(徐彬)并且數(shù)碼管顯示為1,當(dāng)按下右鍵的時(shí)候屏幕出現(xiàn)第二幅圖片(江西科技師范大學(xué))并且數(shù)碼管顯示為2。

      圖6 實(shí)驗(yàn)圖一

      圖7 實(shí)驗(yàn)圖二

      實(shí)驗(yàn)結(jié)果已經(jīng)達(dá)到了預(yù)想的效果。如果增加塊ROM的容量,則可以顯示更大的圖片,更改方便,也可以調(diào)整圖片的顯示位置。

      結(jié) 語(yǔ)

      利用FPGA完成VGA顯示控制,可以使圖像的顯示脫離PC機(jī)的控制,形成體積小、功耗低的格式嵌入式系統(tǒng)(便攜式設(shè)備或手持設(shè)備),應(yīng)用于地面勘測(cè)、性能檢測(cè)等方面,具

      有重要的現(xiàn)實(shí)意義。該技術(shù)方案已經(jīng)在工業(yè)現(xiàn)場(chǎng)中有多種實(shí)際應(yīng)用。

      本文為期刊縮略版,全文見(jiàn)本刊網(wǎng)站www.mesnet.com.cn。

      [1] 張亞平,賀占莊.基于FPGA的VGA顯示模式設(shè)計(jì)[J] .計(jì)算機(jī)技術(shù)與發(fā)展,2007,17(6).

      [2] 劉福奇.FPGA嵌入式項(xiàng)目開(kāi)發(fā)實(shí)踐[M] .北京:電子工業(yè)出版社,2009.

      [3] 張明.Verilog HDL實(shí)用教程[M] .成都:電子科技大學(xué)出版社,1999.

      [4] 潘松,黃繼業(yè).EDA技術(shù)實(shí)用教程[M] .北京:科學(xué)出版社,1999:262-265.

      [5] 基于IP Core的Block RAM設(shè)計(jì)[EB/OL] .[2013-08] .http://wenku.baidu.com/view/1e6f13e49b89680203d825fc.html.

      [6] 夏宇聞.Verilog數(shù)字系統(tǒng)設(shè)計(jì)教程[M] .北京:北京航空航天大學(xué)出版社,2006.

      [7] 夏宇聞.復(fù)雜數(shù)字電路與系統(tǒng)的Verilog HDL設(shè)計(jì)技術(shù)[M] .北京:北京航空航天大學(xué)出版社,1998.

      [8] 王志輝,林水生.基于FPGA的鍵盤(pán)掃描模塊的設(shè)計(jì)實(shí)現(xiàn)[J] .集成電路應(yīng)用,2006,67(5).

      [9] 吳蓬勃,張啟民,王朝陽(yáng),等.基于FPGA的VGA圖像控制器設(shè)計(jì)[J] .東北電力大學(xué)學(xué)報(bào),2006,26(4).

      [10] XILINX ROM使用教程[EB/OL] .[2013-08] .http://wenku.baidu.com/view/22744b4de518964bcf847c93.html

      猜你喜歡
      數(shù)碼管計(jì)數(shù)器時(shí)序
      時(shí)序坐標(biāo)
      煤氣與熱力(2022年2期)2022-03-09 06:29:30
      基于Sentinel-2時(shí)序NDVI的麥冬識(shí)別研究
      Arduino編程
      電腦報(bào)(2019年2期)2019-09-10 07:22:44
      MC9S08FL16單片機(jī)數(shù)碼管靜態(tài)顯示分析
      單片機(jī)控制的四位數(shù)碼管動(dòng)態(tài)顯示編程
      基于Qt的數(shù)碼管數(shù)字編碼系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
      一種毫米波放大器時(shí)序直流電源的設(shè)計(jì)
      電子制作(2016年15期)2017-01-15 13:39:08
      計(jì)數(shù)器競(jìng)爭(zhēng)冒險(xiǎn)及其處理的仿真分析
      DPBUS時(shí)序及其設(shè)定方法
      河南科技(2014年15期)2014-02-27 14:12:36
      宝鸡市| 济宁市| 富阳市| 呼玛县| 昆山市| 阿坝县| 湖南省| 会理县| 乐清市| 吉林省| 宝山区| 思南县| 揭阳市| 许昌县| 韶山市| 靖江市| 故城县| 庄浪县| 扶风县| 汉阴县| 岳池县| 平南县| 浠水县| 金坛市| 漳州市| 博乐市| 张家界市| 永和县| 永平县| 池州市| 武定县| 韩城市| 明星| 油尖旺区| 武宁县| 遵义县| 图木舒克市| 凌云县| 万山特区| 邯郸县| 酒泉市|