ChrisChan 发表于 2012-4-15 22:41:22

大家熟知的256色VGA驱动代码问题请教...

本帖最后由 ChrisChan 于 2012-4-15 22:44 编辑

本人菜鸟,FPGA尚未入门,遇到问题,还请菜鸟,大虾们各种指点...

话说大家应该都熟悉这段代码的:(640*480下显示256种43*30的颜色块)reg VGA_RGB_r;

always @(posedge clk or negedge rst_n)
        if(!rst_n) VGA_RGB_r <= 8'd0;
        else if(Valid_sig)
                case(X_Addr)
                11'd0:if(Y_Addr>=11'd0 && Y_Addr<11'd30) VGA_RGB_r <= 8'd0;
                else if(Y_Addr>=11'd30 && Y_Addr<11'd60) VGA_RGB_r <= 8'd16;
                else if(Y_Addr>=11'd60 && Y_Addr<11'd90) VGA_RGB_r <= 8'd32;
                else if(Y_Addr>=11'd90 && Y_Addr<11'd120) VGA_RGB_r <= 8'd48;
                else if(Y_Addr>=11'd120 && Y_Addr<11'd150) VGA_RGB_r <= 8'd64;
                else if(Y_Addr>=11'd150 && Y_Addr<11'd180) VGA_RGB_r <= 8'd80;
                else if(Y_Addr>=11'd180 && Y_Addr<11'd210) VGA_RGB_r <= 8'd96;
                else if(Y_Addr>=11'd210 && Y_Addr<11'd240) VGA_RGB_r <= 8'd112;
                else if(Y_Addr>=11'd240 && Y_Addr<11'd270) VGA_RGB_r <= 8'd128;
                else if(Y_Addr>=11'd270 && Y_Addr<11'd300) VGA_RGB_r <= 8'd144;
                else if(Y_Addr>=11'd300 && Y_Addr<11'd330) VGA_RGB_r <= 8'd160;
                else if(Y_Addr>=11'd330 && Y_Addr<11'd360) VGA_RGB_r <= 8'd176;
                else if(Y_Addr>=11'd360 && Y_Addr<11'd390) VGA_RGB_r <= 8'd192;
                else if(Y_Addr>=11'd390 && Y_Addr<11'd420) VGA_RGB_r <= 8'd208;
                else if(Y_Addr>=11'd420 && Y_Addr<11'd450) VGA_RGB_r <= 8'd224;
                else VGA_RGB_r <= 8'd240;
                11'd40,11'd80,11'd120,11'd160,11'd200,11'd240,11'd280,11'd320,
                11'd360,11'd400,11'd440,11'd480,11'd520,11'd560,11'd600,11'd640:
                        VGA_RGB_r <= VGA_RGB_r+1'b1;
                default:;
                endcase
        else VGA_RGB_r <= 8'd0;
       
assign VGA_RGB = VGA_RGB_r;以上是关键部分代码,问题在第28行,开始自己写代码时不小心忘记写了,最后折腾半天,加上非显示区RGB8位置0这条代码后,结果显示成功了...
但自己想不明白这是什么微妙关系...

peixiuhui 发表于 2012-4-16 08:08:04

不加的话,你扫屏是不是只扫一遍。
页: [1]
查看完整版本: 大家熟知的256色VGA驱动代码问题请教...