视频信号时序驱动说明--VESA V1.0.13_独木舟216的博客-CSDN博客目录1、屏幕显示原理:2、 驱动显示器:3、VESA时序说明--1080P1、屏幕显示原理:屏幕是一个微型宇宙,有自己的空间和时间规则。远远望去,屏幕上呈现出平滑的二维图像。 近距离观察,它分解成许多独立的原色块:红色、绿色和蓝色。 我们将这种复杂性隐藏在像素的抽象概念背后:我们可以控制的屏幕的最小部分。 典型的高清屏幕是 1920 x 1080:总共 200 万像素。即使是古老的 640x480 VGA 屏幕也有超过 300,0...https://blog.csdn.net/m0_37779673/article/details/1198506451080P时序图:

代码:

module DispTimGen#(parameter  HOR_BW        = 12                       ,parameter  VER_BW        = 11                       ,
//              1080P @ 60Hz 参数值parameter  H_TOTAL       = 2200                     ,parameter  HS_START      = 44                       ,parameter  HDE_START     = 192                      ,parameter  HDE_END       = 2112                     ,parameter  V_TOTAL       = 1125                     ,parameter  VS_START      = 5                        ,parameter  VDE_START     = 41                       ,parameter  VDE_END       = 1121
)(
//===================================    INPUT    =====================================input                               InClk               ,input                               InLocked            ,
//===================================    OUTPUT    ====================================output    reg                       OutVs             ,output    reg                       OutHs             ,output    reg                       OutDe
);//localparam      //======================================================================================
//reg
reg  [               HOR_BW-1:0 ]       HsCnt    =  'd0  ;
reg                                     HsCntEnd =  'b0  ;
reg                                     DispHsEn =  'd0  ;
reg  [               VER_BW-1:0 ]       VsCnt    =  'd0  ;
reg                                     VsCntEnd =  'b0  ;
reg                                     VsEnd    =  'd0  ;
reg                                     DispVsEn =  'd0  ;
reg                                     Rst      =  'd0  ;
always @ (posedge InClk or negedge InLocked) begin //产生Timing计数复位信号if( ! InLocked )Rst <= 1'b1 ;elseRst <= 1'b0 ;
end
//======================================================================================
//              HSync Cnt
always @ ( posedge InClk )beginif(HsCnt[HOR_BW-1:0] == (H_TOTAL - 'd2))HsCntEnd <= 1'd1;else HsCntEnd <= 1'd0;
end
always @( posedge InClk )beginif( Rst )HsCnt[HOR_BW-1:0]           <= 'd0                     ;else beginif( HsCntEnd ) HsCnt[HOR_BW-1:0]       <= 'd0                      ;else  HsCnt[HOR_BW-1:0]       <= HsCnt + 1'b1              ;end
end
//======================================================================================
//              VSync Cnt
always @ ( posedge InClk )beginif( VsCnt[VER_BW-1:0] == (V_TOTAL - 1'b1) )VsCntEnd <= 1'd1;elseVsCntEnd <= 1'd0;
endalways @ (posedge InClk)beginif( Rst )VsCnt[VER_BW-1:0]       <= 'd0                      ;else beginif( HsCntEnd & VsCntEnd )VsCnt[VER_BW-1:0]   <= 'd0                      ;else if ( HsCntEnd )VsCnt[VER_BW-1:0]   <= VsCnt[VER_BW-1:0] + 1'b1 ;end
end
//======================================================================================
//                          Hs      OUTPUT Logic
always @( posedge InClk ) beginif( Rst ) OutHs                       <= 1'b1         ;else beginif ( HsCnt[HOR_BW-1:0] == 'd0 ) OutHs                   <= 1'b0         ;                // HsDeStart - HsSyncStartelse if ( HsCnt[HOR_BW-1:0] == HS_START - 'd1 )OutHs                   <= 1'b1         ;end
end
//======================================================================================
//                         Vs      OUTPUT Logic
always @( posedge InClk )beginif( (VsCnt[VER_BW-1:0] == VS_START - 'd1) & HsCntEnd )VsEnd   <=  'd1     ;else VsEnd   <=  'd0     ;
endalways @(posedge InClk ) beginif( Rst ) beginOutVs                       <= 1'b1         ;end else beginif( VsCnt[VER_BW-1:0] == 'd0 ) OutVs                   <= 1'b0         ;else if( VsEnd )OutVs                   <= 1'b1         ;end
end
//                         De      OUTPUT Logic
always @ (posedge InClk)beginDispHsEn <= ((HsCnt[HOR_BW-1:0] >= HDE_START) & (HsCnt[HOR_BW-1:0] < HDE_END));
endalways @ (posedge InClk) beginDispVsEn <= ((VsCnt[VER_BW-1:0] >= VDE_START) & (VsCnt[VER_BW-1:0] < VDE_END));
endalways @(posedge InClk ) beginif( Rst ) beginOutDe       <= 1'b1                     ;end else beginOutDe       <= (DispVsEn & DispHsEn)    ;end
endendmodule

VESA--1080P时序代码相关推荐

  1. xilinxFPGA-VGA时序+代码实现详解

    xilinxFPGA-VGA时序+代码实现详解 VGA时序详解 VGA接口定义 VGA时序说明 行同步信号HYSNC 场同步信号VYSNC VGA时序查找 HYSNC VYSNC BLANK RGB ...

  2. FLASH(M25P16)-页编程(PP)指令时序代码及仿真波形(内含M25P16仿真模型文件)

    PP指令 pp是页编程指令:需要先打开写使能(0000_0110),发送PP指令号(0000_0010),后面给24位地址,然后接数据,时序图发送如下图所示. PP指令时序代码 //页编程(PP)指令 ...

  3. RGB数字信号VESA标准时序verilog设计

    RGB数字信号VESA标准时序verilog设计 RGB数字信号输出时序有严格标准,产生正确的时序信号可以为输出接口DVI VGA cameralink等视频图像接口芯片链接,实现图像视频源及播放等功 ...

  4. 视频信号时序驱动说明--VESA V1.0.13

    目录 1.屏幕显示原理: 2. 驱动显示器: 3.VESA时序说明--1080P 1.屏幕显示原理: 屏幕是一个微型宇宙,有自己的空间和时间规则. 远远望去,屏幕上呈现出平滑的二维图像. 近距离观察, ...

  5. FPGA—VGA 显示器显示彩条(附代码)

    目录 1. 理论 2. 实操 2.1 顶层设计 2.1.1 模块框图 2.1.2 代码编写 2.1.3 仿真验证 2.2 时钟生成模块 2.3 VGA时序控制模块 2.3.1 模块框图 2.3.2 波 ...

  6. s3c6410 uboot代码分析《一》

    来源:http://hi.baidu.com/__eabi/blog/item/be67533797bc73f014cecb49.html 以下用以记录uboot代码的分析过程,目标是s3c6410, ...

  7. 硬件开发——语音模块开发 (包含语音识别模块代码等资料包 )

    一.语音模块以及硬件模块开发的行情 硬件模块的开发--常用:语音模块 语音模块STC11L08XE 比如 人脸识别打卡器--虹膜识别(购买方式) 语音识别(购买方式) 车牌识别(购买方式) 华为手机( ...

  8. STC89C52单片机AD/DA介绍与代码演示

    目录 AD/DA介绍 硬件电路模型 硬件电路图 运算放大器 运放电路 AD原理 DA原理 AD/DA性能指标 XPT2046的使用介绍与配置 XPT2046的时序 代码解释 AD/DA介绍 AD(An ...

  9. autojs免root脚本引擎开发的发送通知和去除通知代码,值得参考学习

    说明 本文提供的代码仅供参考.不建议用于生产环境. 可能有些地方在最新版本的Auto.js上面需要做修改,才能运行. Auto.js简介 Auto.js是利用安卓系统的"辅助功能" ...

最新文章

  1. idea工具使用总结
  2. 清晰还原!Photoshop处理人物模糊照片
  3. Bioinformatics| 生物医学网络中的图嵌入方法
  4. 网络推广公司介绍几个能提升网站收录的“隐藏版”小技巧!
  5. 官宣:神策 2018 数据驱动大会亮点回顾
  6. 【Android】【转】查看内存
  7. 【Linux系统编程应用】 Linux Input子系统(一)
  8. mybatis$和#的区别
  9. go之树型结构深度理解补充
  10. 计算机中丢失了ll是什么意思,丢失了ntoskrnl.exe和hal.ll
  11. 数据中心安全风控_平安银行Hadoop集群跨数据中心迁移项目告捷项目骨干专访
  12. 【rsync】工作模式及语法
  13. 打开和关闭 Oralce PDB数据库
  14. 算命师傅的好帮手:一款简单好用又使用的排盘工具--灵棋排盘
  15. 【百度】怎么使用cookie登陆百度账号
  16. “一把梭:REST API 全用 POST”
  17. 如何设置等高线坐标系并输出
  18. ORCALE DDL,DML,DQL命令
  19. 入门前端框架Layui
  20. Lenet、Alexnet 、VGG、 GoogleNet、ResNet模型

热门文章

  1. 对计算机专业有用的书籍
  2. 各个协议层的网络请求
  3. Java项目:养老院管理系统(java+Spring Boot + SpringMVC + MyBatis+HTML+CSS+JavaScrip+ Layui+maven+mysql)
  4. WPS中设置参考文献自动插入和更新
  5. 人生就是一个完整的项目
  6. oracle 压测工具 ld,ORACLE压力测试工具
  7. 小学生Python编程 —— 欢乐钢琴
  8. c语言ds12c887,【图片】关于DS12C887时间芯片的使用心得【单片机吧】_百度贴吧
  9. 论文笔记,物体六自由度位姿估计,DenseFusion: 6D Object Pose Estimation by Iterative Dense Fusion
  10. nema23_framesize NEMA23(56.4mm) 混合式步进电机 - MOONS'