FPGA基础之VGA(四)黑白棋盘

一、VGA原理

参见博文VGA(一)

二、黑白棋盘

2.1 棋盘显示算法

根据棋盘中每个小方格行列坐标之和的奇偶性来显示不同的颜色,和是奇数显示白色,偶数显示黑色。

2.2 显示原理

每个小方格包括40X40个像素点,640X480总共可以形成16X12个小方格。在同一个小方格内的像素点应该具有相同的属性,即它们的行列坐标应该相同。具体实现,水平计数器和垂直计数器分别除40,将得到的结果最低位进行异或运算,结果为1显示白色,为0显示黑色。特别注意cnt_hs和cnt_vs要减去无效显示区域的坐标后,再进行除法运算。

三、代码

1、顶层代码如下:
module vga_chessboard (

	input		wire					clk,
	input		wire					rst_n,
	
	output	wire		[7:0]		vga_rgb,
	output	wire					vga_hs,
	output	wire					vga_vs
);

	wire					clk_25m;
	wire					pll_locked;
	
	pll pll_inst (
	
		.areset 			( ~rst_n 	),
		.inclk0 			( clk 		),
		.c0				( clk_25m	),
		.locked 			( pll_locked)
	);

	vga_ctrl vga_ctrl_inst (

		.clk					(clk_25m		),
		.rst_n				(pll_locked	),
                         
		.
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值