OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 1161|回复: 8

[XILINX] 关于领航者7020的hdmi显示

[复制链接]

18

主题

51

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
231
金钱
231
注册时间
2022-10-7
在线时间
70 小时
发表于 2023-12-5 18:39:23 | 显示全部楼层 |阅读模式
160金钱
本帖最后由 Sue43 于 2023-12-5 18:42 编辑

我通过PL端把ddr的摄像头ov5640数据读取出来并传入进 HDMI彩条实验中的video_driver以及HDMI驱动模块,分辨率为1280x720,显示的图像出现错位分层的情况 : 及本该是上面的数据跑到了下面,且每次烧录程序后错位的位置会发生改变    下载.png
是哪里出现了问题?代码如下:
video_driver u_video_driver(
    .pixel_clk      (clk_1x),
    .sys_rst_n      (rst_n),

    .video_hs       (video_hs),
    .video_vs       (video_vs),
    .video_de       (video_de),  //传入ddr的读使能
    .video_rgb      (video_rgb),

    .pixel_xpos     (img_xpos),
    .pixel_ypos     (img_ypos),
    .pixel_data     ({3{vga_data}})//从ddr出来的摄像头数据
    );
//例化HDMI驱动模块
dvi_transmitter_top u_rgb2dvi_0(
    .pclk           (clk_1x),
    .pclk_x5        (clk_5x),
    .reset_n        (rst_n & clk_locked),

    .video_din      (video_rgb),
    .video_hsync    (video_hs),
    .video_vsync    (video_vs),
    .video_de       (video_de),

    .tmds_clk_p     (tmds_clk_p),
    .tmds_clk_n     (tmds_clk_n),
    .tmds_data_p    (tmds_data_p),
    .tmds_data_n    (tmds_data_n),
    .tmds_oen       ()                        //预留的端口,本次实验未用到
    );

最佳答案

查看完整内容[请看2#楼]

理论上直接PLL输出替换原来的动态时钟IP核是没问题的,替换的时候看有没有其它哪里连错了
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

2013

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5617
金钱
5617
注册时间
2018-10-21
在线时间
1591 小时
发表于 2023-12-5 18:39:24 | 显示全部楼层
Sue43 发表于 2023-12-7 08:49
要用上vga的那个动态时钟IP时序才没问题,可是为什么PLL直接输出的相同的频率的时钟接在video_driver里产生 ...

理论上直接PLL输出替换原来的动态时钟IP核是没问题的,替换的时候看有没有其它哪里连错了
回复

使用道具 举报

4

主题

881

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4198
金钱
4198
注册时间
2019-9-4
在线时间
881 小时
发表于 2023-12-6 10:56:37 | 显示全部楼层
帮顶  
回复

使用道具 举报

3

主题

2013

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5617
金钱
5617
注册时间
2018-10-21
在线时间
1591 小时
发表于 2023-12-6 11:45:05 | 显示全部楼层
例程就是5640采集,HDMI 720P显示吧
回复

使用道具 举报

18

主题

51

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
231
金钱
231
注册时间
2022-10-7
在线时间
70 小时
 楼主| 发表于 2023-12-7 08:48:28 | 显示全部楼层
QinQZ 发表于 2023-12-6 11:45
例程就是5640采集,HDMI 720P显示吧

例程是纯PS的,我不希望这样
回复

使用道具 举报

18

主题

51

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
231
金钱
231
注册时间
2022-10-7
在线时间
70 小时
 楼主| 发表于 2023-12-7 08:49:50 | 显示全部楼层
要用上vga的那个动态时钟IP时序才没问题,可是为什么PLL直接输出的相同的频率的时钟接在video_driver里产生时序会有问题呢
回复

使用道具 举报

5

主题

34

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
455
金钱
455
注册时间
2020-11-30
在线时间
66 小时
发表于 2023-12-9 07:52:38 | 显示全部楼层
这个就是数据ov5640写入FIFO,和lcd驱动读取fifo同步问题;
注意在vs来临后再开始使用de写入fifo;
这样才能保证你ov5640的第一个像素数据写入到ddr的第一个像素位置;
并且保证lcd的读取fifo有一定量数据后再开启lcd_driver使能;
产生fifo_rd_req,
lcd的第一个像素点显示ddr对应位置的第一个像素数据
回复

使用道具 举报

5

主题

34

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
455
金钱
455
注册时间
2020-11-30
在线时间
66 小时
发表于 2023-12-10 11:37:48 | 显示全部楼层
图像数据错位一般是输入输出和ddr内部数据不同步问题:
注意vs来临后再开始使用de将ov5640数据写入fifo,保证第一个pix的数据写入ddr
缓存起始位置;

lcd驱动data_req从fifo读取数去数据需要等待fifo内部加载一定量的数据再开启使能;
保证lcd的第一个pix输出的是ddr缓存的起始地址的数据;

回复

使用道具 举报

18

主题

51

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
231
金钱
231
注册时间
2022-10-7
在线时间
70 小时
 楼主| 发表于 2023-12-10 18:37:23 | 显示全部楼层
Winkawaks 发表于 2023-12-10 11:37
图像数据错位一般是输入输出和ddr内部数据不同步问题:
注意vs来临后再开始使用de将ov5640数据写入fifo, ...

好的,谢谢指导
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 17:50

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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