本次学习主要向配合basys2实行。

上次学习vga的rgb三个output都是1位的,但是我看了basys2的rgb分别是332位,这里让我卡顿了很久,

之后通过查资料才知道,rgb的不同大小表示的只是不同的颜色。

vga256其实 vga的基本工作原理都是相同的,这里只是将332通道的rgb表示出来,所以本次代码中单写332通道的rgb

reg [7:0]vga_rgb;

always@(posedge clk_25)
begin
if(!valid)
vga_rgb <= 8'd0;
else
begin
case(x_dis)
10'd0:
begin
if(y_dis >= 10'd0 && y_dis < 10'd30)
vga_rgb <= 8'd0;
else if(y_dis >= 10'd30 && y_dis < 10'd60)
vga_rgb <= 8'd16;
else if(y_dis >= 10'd60 && y_dis < 10'd90)
vga_rgb <= 8'd32;
else if(y_dis >= 10'd90 && y_dis < 10'd120)
vga_rgb <= 8'd48;
else if(y_dis >= 10'd120 && y_dis < 10'd150)
vga_rgb <= 8'd64;
else if(y_dis >= 10'd150 && y_dis < 10'd180)
vga_rgb <= 8'd80;
else if(y_dis >= 10'd180 && y_dis < 10'd210)
vga_rgb <= 8'd96;
else if(y_dis >= 10'd210 && y_dis < 10'd240)
vga_rgb <= 8'd112;
else if(y_dis >= 10'd240 && y_dis < 10'd270)
vga_rgb <= 8'd128;
else if(y_dis >= 10'd270 && y_dis < 10'd300)
vga_rgb <= 8'd144;
else if(y_dis >= 10'd300 && y_dis < 10'd330)
vga_rgb <= 8'd160;
else if(y_dis >= 10'd330 && y_dis < 10'd360)
vga_rgb <= 8'd176;
else if(y_dis >= 10'd360 && y_dis < 10'd390)
vga_rgb <= 8'd192;
else if(y_dis >= 10'd390 && y_dis < 10'd420)
vga_rgb <= 8'd208;
else if(y_dis >= 10'd420 && y_dis < 10'd450)
vga_rgb <= 8'd224;
else
vga_rgb <= 8'd240;
end
10'd40,10'd80,10'd120,
10'd160,10'd200,10'd240,
10'd280,10'd320,10'd360,
10'd400,10'd440,10'd480,
10'd520,10'd560,10'd600,10'd640:
vga_rgb <= vga_rgb + 1'b1;
default: ;
endcase
end
end

assign vga_r = vga_rgb[7:5];
assign vga_g = vga_rgb[4:2];
assign vga_b = vga_rgb[1:0];

这里主要写了将640x480的分辨率,分成256个小格,分别显示不同的颜色

主要代码:10'd40,10'd80,10'd120,
10'd160,10'd200,10'd240,
10'd280,10'd320,10'd360,
10'd400,10'd440,10'd480,
10'd520,10'd560,10'd600,10'd640:
vga_rgb <= vga_rgb + 1'b1;

这里可以理解,每当它所显示的小格的位置发生变化时,rgb+1,则它的颜色就会发生变化。

基于fpga的vga学习(2)的更多相关文章

  1. 基于fpga的vga学习(3)

    本次学习如何通过vga发送数字.文字.字母, 首先利用建模软件,将想要发送的数据通过数学建模转换,这里我用的软件是PCtoLCD,具体效果如下 这里可以看出,建模将数据装换成0和1,一个字母用16x8 ...

  2. 基于fpga的vga学习(1)

    这次学习我主要掌握了vga的基本运行原理. vga基本概念: VGA时序主要包括两条信号线(HS,VS)的输出——行扫描和场扫描.VGA采用逐行扫描,每个像素对应的点扫描.行与行之间存在消隐以及显示时 ...

  3. 基于FPGA的VGA显示设计(二)

    上一篇:基于FPGA的VGA显示设计(一)     参照 CrazyBingo 的 基于FPGA的VGA可移植模块终极设计代码  的工程代码风格,模块化处理了上一篇的代码,并增加了一点其它图形. 顶层 ...

  4. 基于FPGA的VGA可移植模块终极设计【转】

    本文转载自:http://www.cnblogs.com/lueguo/p/3373643.html 略过天涯   基于FPGA的VGA可移植模块终极设计 一.VGA的诱惑 首先,VGA的驱动,这事, ...

  5. 基于FPGA的VGA显示实验设计

    基于FPGA的VGA显示实验设计 成果展示(优酷视频): 视频: 基于FPGA的VGA显示技术(手机控制) http://v.youku.com/v_show/id_XNjk4ODE3ODUy.htm ...

  6. 基于FPGA的VGA显示静态图片

    终于熬到暑假了,记过三四周的突击带考试,终于为我的大二画上了一个完整的句号,接下来终于可以静心去做自己想做的事情了,前一阵子报了一个线上培训班,学学Sobel边缘检测,之前一直在学习图像处理,但是因为 ...

  7. [置顶] 基于FPGA的VGA简易显存设计&NIOS ii软核接入

    项目简介 本项目基于Altera公司的Cyclone IV型芯片,利用NIOS II软核,2-port RAM与时序控制模块,实现64*48分辨率的显存(再大的显存板载资源m9k不够用) 实现效果如下 ...

  8. 基于FPGA驱动VGA显示图片的小问题

    学习VGA显示图片的过程中,遇到了一个小问题,我在显示屏上开了一个60x60的框,放了一张图片进去显示,但是最终的结果如下图所示. 出现了一个竖黑边,看了看代码,分析了一下逻辑没问题,然而看这个显示那 ...

  9. 基于FPGA的VGA显示设计(一)

    前言 FPGA主要运用于芯片验证.通信.图像处理.显示VGA接口的显示器是最基本的要求了. 原理 首先需要了解 : (1)VGA接口协议:VGA端子_维基百科 .VGA视频传输标准_百度 引脚1 RE ...

随机推荐

  1. SQl 执行效率总结

    SQL执行效率总结 1.关于SQL查询效率,100w数据,查询只要1秒,与您分享: 机器情况 p4: 2.4 内存: 1 G os: windows 2003 数据库: ms sql server 2 ...

  2. phpstorm界面不停的indexing,不停的闪烁

    选择 File->Invalidate Caches / Restart...->Invalidate and Restart,就行了!

  3. Linux rhcsa认证考试试题模拟

    声明: 此套试题是2017年rhcsa考试题库,本题库需配合相对应的机器操作,实验环境在我的网盘下载 考试环境: server.group8.example.com 172.24.8.254/24 s ...

  4. Servlet第三篇(response;request)

    response对象 Tomcat收到客户端的http请求,会针对每一次请求,分别创建一个代表请求的request对象.和代表响应的response对象 那么我们获取浏览器提交过来的数据,找reque ...

  5. Huawei BGP和OSPF双边界重分布(一)

    网络拓扑: PS:本例使用明细前缀列表双边界引入 S5700-LSW1 ================================================================ ...

  6. project3 blockchain

    [概念] 做服务的时候main里面不能单独有东西,都得包起来. Identifier expected是因为没有main函数 雾草,task3还要加proxy, add再干别的.难受!妈的,什么代理模 ...

  7. Find out where to contain the smartforms

    Go to table E071 and give smarforms name and it will give the transport req for that. Run SE03, choo ...

  8. 52-2018 蓝桥杯省赛 B 组模拟赛(一)java

    最近蒜头君喜欢上了U型数字,所谓U型数字,就是这个数字的每一位先严格单调递减,后严格单调递增.比如 212212 就是一个U型数字,但是 333333, 9898, 567567, 313133131 ...

  9. position在IE下的问题

    盒子设置position:absolute;后,子盒子的浮动可以不做清除浮动处理,同样,使用fixed,子盒子也不需要做清除浮动的处理 在IE7下(据说IE6也不行),盒子设置overflow:hid ...

  10. 设计模式学习心得<享元模式 Flyweight>

    享元模式(Flyweight Pattern)主要用于减少创建对象的数量,以减少内存占用和提高性能.这种类型的设计模式属于结构型模式,它提供了减少对象数量从而改善应用所需的对象结构的方式. 享元模式尝 ...