久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2519|回復: 0
打印 上一主題 下一主題
收起左側

基于FPGA的VGA圖片動態顯示設計

[復制鏈接]
跳轉到指定樓層
樓主
ID:311912 發表于 2020-1-1 13:36 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
1 緒論
隨著電子技術和集成工藝水平的不斷提高,微處理器的運算與控制能力也有了顯著的提升,由于越來越多的電子產品對功耗有著苛刻的要求,導致目前微處理器的帶負載能力比較弱,通常輸出電壓為mV級,這也制約了它們在顯示應用領域的發展。目前,在數據采集和顯示控制領域,FPGA正好彌補了微處理器帶負載能力弱的缺點,且它在VGA(Video Graphics Array)信號處理中也有著大量的應用。
VGA(VideoGraphics Array)是IBM在1987年隨PS/2機一起推出的一種視頻傳輸標準,具有分辨率高、顯示速率快、顏色豐富等優點,在彩色顯示器領域得到了廣泛的應用。不支持熱插拔,不支持音頻傳輸。
Quartus II 是Altera公司的綜合性PLD/FPGA開發軟件,支持原理圖、VHDL、Verilog HDL以及AHDL(Altera Hardware Description Language)等多種設計輸入形式,內嵌自有的綜合器以及仿真器,可以完成從設計輸入到硬件配置的完整PLD設計流程。
CycloneIII 系列FPGA是Altera的低成本系列FPGA。Cyclone III FPGA具有一下特性:新的可編程構架通過設計實現低成本,嵌入式存儲資源支持各種存儲器應用和數字信號處理(DSP)實施,支持串行、總線和網絡接口及各種通信協議,使用PLL管理片內和片外系統時序,支持單端I/O標準和差分I/O技術,支持LVDS信號等等。
本次課程設計是基于FPGA的VGA圖像顯示控制器設計,采用QuartusII 9.0 軟件工具,并以Altera 公司的CycloneIII 系列FPGA的器EP3C10E144C8為主實現硬件平臺的設計。該控制器采用Verilog HDL 實現相關的控制功能,這大大提升了系統的實時性和可靠性,在大規模嵌入式系統設計中具有較高的工程價值和很好的應用前景。
2系統方案設計與工作原理
2.1方案設計及框圖
本次課程設計采用模塊化設計方法,我們對VGA圖像顯示控制器按功能進行層次劃分。本次課程設計主要由以下模塊組成:圖像數據存儲ROM模塊、鎖相環PLL輸出25MHz時鐘模塊、分頻模塊、選擇模塊、VGA圖像顯示模塊。2.1設計框圖
2.2工作原理
根據VGA的顯示協議,可以選擇不同的顯示分辨率。本設計選擇的是640 X 480 X 60Hz 的分辨率,相對應時鐘頻率為25.175MHz。常見的彩色顯示器一般有CRT(陰極射線管)構成,彩色是由R、G、B(紅:Red,綠:Green,藍:Blue)三基色組成,用逐行掃描的方式解決圖像顯示。掃描是從屏幕的左上方開始的,從左到右,從上到下,進行掃描。每掃完一行,電子束回到屏幕的左邊下一行的起始位置,在這期間,CRT對電子束進行行消隱,每行結束時,用行同步信號進行行同步;掃描完所有行,用場同步信號進行場同步,并使掃描回到屏幕的左上方,同時進行場消隱,預備下一場的掃描。
對于普通的VGA顯示器,其引出線共含五個信號:R、G、B是三基色信號;HS是行同步信號;VS是場同步信號。
根據相應協議,在VGA時序控制模塊對行掃描信號HS和場掃描信號VS進行相應的時序控制。然后利用四選一模塊從ROM內存地址里面取出對應圖片的像素點的三基色數據,傳輸的VGA顯示屏。利用分頻模塊和四選一模塊使得圖片進行動態顯示。


附錄1:程序
modulevgaV (clk, hs, vs, r, g, b, rgbin, DOUT);
       input clk;
       output hs,vs;
       output r,g,b;
       input[2:0]rgbin;
       output[11:0]DOUT;
       reg[9:0]hcnt,vcnt;      reg r,g,b;       reghs,vs;
       assign DOUT={vcnt[5:0], hcnt[5:0]};
       always @ (posedge clk)
              begin
              if (hcnt<800) hcnt<=hcnt+1;
              else          hcnt<={10{1'b0}};
              end
       always @ (posedge clk)  
              begin
              if (hcnt==640+ 8)   
                     begin
                     if(vcnt<525) vcnt<=vcnt+1;
                     else vcnt<={10{1'b0}};  
                     end  
              end
       always @ (posedge clk)  
              begin
              if ((hcnt>=640+ 8+ 8) &(hcnt<640+ 8+ 8+ 96)) hs<=1'b0;
              else  hs<=1'b1;
              end
       always @ (vcnt)  
              begin
              if ((vcnt>=480+ 8+ 2) &(vcnt<480+8 + 2+ 2)) vs<=1'b0;  
              else vs<=1'b1;  
              end
       always @ (posedge clk)  
              begin
              if (hcnt<640 & vcnt<480)
                     begin
                            r<=rgbin[2];
                            g<=rgbin[1];
                            b<=rgbin[0];
                     end
                     else begin
                     r<=1'b0;
                     g<=1'b0;
                     b<=1'b0;
              end
endendmodule
modulediv(clkin,clkout);
   input clkin;
   output clkout;
   reg[23:0] count;
   reg clkout;
   parameter N=2000000;
   always @(posedge clkin)
   if(count<N-1)
     count<=count+1;
   else
     begin
       count<=0;
       clkout<=~clkout;
     end
endmodule
moduleMUX41a(clk,a,b,c,d,y);
       input      clk;
       input      [2:0]a;
    input     [2:0]b;
    input     [2:0]c;
    input     [2:0]d;
    output [2:0]y;
              reg[2:0]Q;
              reg[2:0]y;
    always@(posedge clk)
              begin     Q<=Q+1;
              end
    always@(a or b or c or d or y)
              begin
              if(Q==3'b000)     y<=a;
              else if(Q==3'b001)     y<=a;
              else if(Q==3'b010)     y<=b;
              else if(Q==3'b011)     y<=b;
              else if(Q==3'b100)     y<=c;
              else if(Q==3'b101)     y<=c;
              else if(Q==3'b110)     y<=d;
              else if(Q==3'b111)     y<=d;
              else y<=a;
              end
endmodule

VGA動態顯示圖片課程設計.doc

8.99 MB, 下載次數: 26, 下載積分: 黑幣 -5

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产人成精品一区二区三 | 嫩草影院网址 | 97日日碰人人模人人澡分享吧 | 日本三级精品 | 少妇一级淫片aaaaaaaaa | h视频免费在线观看 | 黄色成人免费看 | 瑟瑟激情 | 在线免费激情视频 | 亚洲精品在线91 | 亚洲在线一区 | 国产精品一区二区免费 | 亚洲人成在线观看 | 日本五月婷婷 | 成人精品毛片 | 国产高清在线视频 | 激情欧美一区二区三区中文字幕 | 欧美日韩视频在线播放 | 91精品久久久久 | 亚洲欧美日韩电影 | 高清国产一区二区 | 精品一二三 | 色婷婷久久久亚洲一区二区三区 | 成人av电影天堂 | 在线亚洲一区二区 | 久久99精品国产麻豆婷婷 | 日韩男人天堂 | 欧美综合一区二区三区 | 久久另类视频 | 中文字幕乱码一区二区三区 | 欧产日产国产精品视频 | 欧美在线视频网 | 亚洲欧美综合精品另类天天更新 | 国产精品国产三级国产a | 懂色中文一区二区在线播放 | 久久久久久成人 | av黄色在线观看 | 久草免费在线视频 | 日韩高清国产一区在线 | 亚洲免费一区 | 人人天天操 |