搜索
bottom↓
回复: 2

大家看看我的FPGA驱动5‘tft

[复制链接]

出0入0汤圆

发表于 2012-4-20 09:33:33 | 显示全部楼层 |阅读模式
本帖最后由 wwwjjj-1 于 2012-4-20 09:37 编辑

使用黑金开发板(EP2C8Q208C8)

显示横条正常



显示竖条好像地址有问题



仿真图如下 行场极性反的


各位仙人看看哪的问题

程序如下:
module sync_module(

        CLK,RSTn,
        VSYNC_Sig,HSYNC_Sig,Read_Sig,
        Column_Addr_Sig,Row_Addr_Sig,DCLK

);

        input CLK;
        input RSTn;
        output VSYNC_Sig;
        output HSYNC_Sig;
        output Read_Sig;
        output [10:0]Column_Addr_Sig;
        output [10:0]Row_Addr_Sig;
        output DCLK;
       
        reg [10:0] Count_H;
       
        always @(posedge CLK or negedge RSTn)
                if(!RSTn)
               
                                Count_H<=11'd0;
                else if(Count_H>=11'd928)
                        Count_H<=11'd0;
                else
                        Count_H<=Count_H + 1'b1;
       
        reg [10:0]Count_V;
       
        always @(posedge CLK or negedge RSTn)
                if(!RSTn)
                        Count_V<=11'd0;
                else if(Count_V>=11'd525)
                        Count_V<=11'd0;
                else if(Count_H>=11'd928)
                        Count_V<=Count_V + 1'b1;
                       
                       
        assign HSYNC_Sig = (Count_H<11'd88);
        assign VSYNC_Sig = (Count_V<11'd3);
        assign Read_Sig = (HSYNC_Sig<=800) && (VSYNC_Sig<=480);
        //assign Frame_Sig = (Count_V==11'd803)? 1'b1 : 1'b0;
       
        assign DCLK = CLK ;

        assign Column_Addr_Sig = Count_H - 11'd88;
        assign Row_Addr_Sig = Count_V-11'd32;


endmodule

tft手册如下:




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入442汤圆

发表于 2012-4-20 13:10:13 | 显示全部楼层
看到了,信号反了,H/VSync使用的是下降沿,而你写成上升沿了。
        assign HSYNC_Sig = (Count_H<11'd88);
        assign VSYNC_Sig = (Count_V<11'd3);
这样就变成在第88列时/第3帧时同步,然后就变成你那样子了(注意你的竖条中间有一段是回扫信号,说明同步变晚了)。不过你的代码真简单,我写了450行左右。

出0入0汤圆

 楼主| 发表于 2012-4-20 15:41:08 | 显示全部楼层
但如果这样
assign HSYNC_Sig = (Count_H<11'd88) ? 1'b1: 1'b0;
        assign VSYNC_Sig = (Count_V<11'd3)?1'b1: 1'b0;

连上面得效果都没有!!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-24 11:17

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表