当前位置:   article > 正文

【FPGA入门】第八篇、FPGA驱动VGA实现动态图像移动_基于fpga调整vga显示屏的图像位置

基于fpga调整vga显示屏的图像位置

目录

第一部分、实现效果

第二部分、动态VGA显示的原理

1、将动态显示的区域提前进行赋值

2、图像块的移动是每张图片叠加后的效果

3、如何实现图像块位置的改变

第三部分、系统结构和驱动波形

1、系统的Top-down结构

2、图像块移动的驱动波形

第四部分、代码

1、同步信号驱动vga_driver.v

2、方块移动和rgb输出模块rgb.out.v

3、顶层模块top_vga_move.v

第五部分、总结

1、关于显示的范围无法填满整个屏幕的问题

2、源码地址


第一部分、实现效果

FPGA驱动VGA实现动态图像移动

第二部分、动态VGA显示的原理

        首先,本次测试的效果还是在显示器分辨率为:640*480@60Hz的情况下进行测试。

1、将动态显示的区域提前进行赋值

        如果假设整块屏幕显示的是彩条,这个时候我想要一个图像块在这个彩条图像上移动,那么rgb应该优先被赋值为该图像块的显示内容,然后rgb再被赋值为彩条。

2、图像块的移动是每张图片叠加后的效果

        白色的图像块看起来运动的很流畅,其实是人眼的视觉差,因为分辨为640*480@60Hz,表示电脑屏幕1s的时间要显示60张图片,图像块的移动是因为该图像块在每张图片上的位置都改变一次,因此就能看到白色图像块流畅的移动。

3、如何实现图像块位置的改变

        定义两个计数器,x,y。假设每一帧画面显示完,就让x和y进行加1。当x或者y超过范围时就进行自减,这样就会形成块状碰到屏幕边沿之后图像块返回的动画。

        如果这里没有看懂,可以去参考前面这篇博客。

第三部分、系统结构和驱动波形

        FPGA的设计,清晰的设计思路是最重要的,如何做到时刻保持一个清晰的设计思路,我个人认为最好的解决办法就是将各种结构图,波形时序图用画图软件提前画出来,再去考虑怎么写代码。但是这样的后果就是要花费很多的时间,有时候做个实验要很久,害,鱼与熊掌不可兼得

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/468895
推荐阅读
相关标签