HDMI协议介绍(六)--EDID
目录
什么是EDID
EDID结构
1)Header Information 头信息(厂商信息、EDID 版本等)
(2)Basic Display Parameters and Features 基本显示参数(数字/模拟接口、屏幕尺寸、格式支持等)
(3)色度信息
(4)Established Timings(VESA 定义的电脑使用 Timings)
(5)Standard Timings
(6)Detailed Timing Descriptor Block
(7)Extension Flag and Checksum
EDID地址
参考
什么是EDID
Q1:EDID是什么?
A1:Extended Display Identification Data(扩展显示标识数据),共有128字节
Q2:EDID作用
A2:为了能让PC或其他的图像输出设备更好的识别显示器属性
Q3:EDID和DDC的关系
A3:DDC的全称是Display Data Channel(显示数据通道)DDC是用来传送EDID信息的,也可以说EDID信息是通过DDC传送的
Q4:每个显示器只有一个EDID吗?
A4:不一定。现在显示器功能强大,一般有多个显示接口DVI、VGA、HDMI、Display Port,不同的接口特性不一样,EDID也不一样。
Q5:如何获取显示器的EDID
A5:windows下softMCCS工具,参考。linux下edid-decode(edid-decode.git - edid-decode main repository)
Q6:EDID是HDMI搞的还是VESA?
A6:VESA搞的,EDID要找CEA-861-D这种资料
Q7:Display ID?
A7:Display ID向下兼容EDID,HDMI使用EDID。EDID的结构已经落后于高清video发展,Display ID是VESA用来代替EDID的。
EDID结构
示例:
1)Header Information 头信息(厂商信息、EDID 版本等)
包含 20Bytes,前 8 个 Bytes 固定写 00FFFFFFFFFFFF00h;9-10 两个 Bytes 写厂商
名字,包含三个字母,需要参照微软定义的 PNP ID;11-12 两个 Byte 写 Product Code;13-16 四个 Bytes 写序列号;
17Byte 写出厂周;18Byte写年份;最后两个 Byte 是 EDID 版本,一般填写 0103,表示 Version1 Revision3。
(2)Basic Display Parameters and Features 基本显示参数(数字/模拟接口、屏幕尺寸、格式支持等)
第 1 个 Byte 是视频输入参数信息
第 2/3 个 Bytes 填写纵向、横向屏幕尺寸,单位 cm,前投影机可以填写 0000h,第 4个 Byte 填写 Gamma 值
(约定俗称的,显示器 Gamma 一般是 2.2),最后一个 Byte 是Supported Feature 信息:
(3)色度信息
(4)Established Timings(VESA 定义的电脑使用 Timings)
共计 3Bytes,至少支持 640×480P60Hz,也就是第 1 个 Byte 的第 3 个 Bit,所以常见的 200000h 就是只支持 640×480P60Hz。
每个 Byte 中的数据对应关系如下:
(5)Standard Timings
(6)Detailed Timing Descriptor Block
拆 分 为 4 组 Block :
- First Detailed Timing Descriptor,
- Second Detailed Timing Descriptor,
- First Monitor Descriptor (Monitor Name)
- Second Monitor Descriptor (Monitor Range)
(7)Extension Flag and Checksum
总计 2Bytes,第一个 Byte 是 Extension Flag,这里有127个Extension Block,每个Block 128Bytes
EDID地址
EDID的I2C地址是0xA0/0xA1
#define EDID_I2C_ADDR 0x50
#define EDID_I2C_SEGMENT_ADDR 0x30
HDMI EDID的长度一般是256字节,分成2个Block,分别是Block0和Block1
VGA和DVI接口的EDID,是只有一个Block而已,即Block0,共128字节
参考
edid-decode工具edid-decode.git - edid-decode main repository
在线版: EDID Decode
相关文章:

HDMI协议介绍(六)--EDID
目录 什么是EDID EDID结构 1)Header Information 头信息(厂商信息、EDID 版本等) (2)Basic Display Parameters and Features 基本显示参数(数字/模拟接口、屏幕尺寸、格式支持等) (3)色度信息 (4)Established Timings(VESA 定义的电脑使用 Timings) (5)Standard Timing…...

【项目实战】Linux下安装Nginx教程
一、环境准备 Linux版本:CentOS7 64位 二、具体步骤 2.1 步骤1:确认系统中安装以下基础依赖 确认系统中安装了gcc、pcre-devel、zlib-devel、openssl-devel。 在安装Nginx前首先要确认系统中安装了gcc、pcre-devel、zlib-devel、openssl-devel。 yu…...

【数据结构】链式二叉树
前言 在前面我们学习了一些二叉树的基本知识,了解了它的结构以及一些性质,我们还用数组来模拟二叉树建立了堆,并学习了堆排序,可是数组结构的二叉树有很大的局限性,平常我们用的最多树结构的还是链式二叉树,…...

CentOS安装RStudio-Server的方法
R语言是生信分析、数据挖掘最常用最好用的软件之一,得到了广大生信工程师、数据分析师的厚爱。Rstudio 是 R 的集成开发环境,使得R语言的用户体验更强。一般个人电脑(PC, Personal Computer)使用单机版的 Rstudio 即可,…...

从交通信号灯看流控和拥塞控制
局部的效率和全局的公平一直都是矛盾的双方。对一个统计复用系统,局部效率由流控决定,而全局公平由拥塞控制决定。 交通信号灯是个典型的分时复用流控的实例,但我经常看到绿灯方向没有任何车辆通过,红灯方向却排成了长龙…...

【LinkedList】| 深度剥析Java SE 源码合集Ⅰ
目录一. 🦁 LinkedList介绍二. 🦁 结构以及对应方法分析2.1 结构组成2.1.1 节点类2.1.2 成员变量2.2 方法实现2.2.1 添加add(E e)方法2.2.2 头尾添加元素Ⅰ addFirst(E e)Ⅱ addLast(E e)2.2.3 查找get(int index)方法2.2.4 删除remove()方法三. &#x…...

黑马程序员7
算数运算符重载 运算符重载概念:对已有的运算符重新进行定义,赋予其另一种功能,以适应不同的数据类型 加号运算符 通过自己写函数,实现两个对象相加属性后返回新的对象 两种方式重载 成员函数方式重载 全局函数重载 上来 perso…...

Qt安装与使用经验分享;无.pro文件;无QTextCodec file;Qt小试;界面居中;无缝;更换Qt图标;更换Qt标题。
1、切换安装下载源 《Qt安装教程》先推荐一篇安装文章:《Qt安装教程》 Qt 5.15 之后已经不提供离线安装包了,就是那个 3.7G 的 exe 安装包。请看官方说明,所以只能用在线安装包。 1,下载在线安装包 QT 在线安装包链接ÿ…...

AAAI顶会行人重识别算法详解——Relation Network for Person Re-identification
1.论文整体框架概述 在行人重识别任务中,通常都是对整个输入数据进行特征提取,但是缺少了局部信息。能不能既考虑局部与整体信息,也同时加入他们的联系呢?这篇论文主要的思想就是局部信息和全局信息的融合。 整体流程如上图所示, 首先对整体进行特征提取, 通常采用…...

hadoop调优(二)
hadoop调优(二) 1 HDFS故障排除 1.1 NameNode故障处理 NameNode进程挂了并且存储数据丢失了,如何恢复NameNode? 如果NameNode进程挂掉并且数据丢失了,可以利用Secondary NameNode来恢复NameNode。Secondary NameNode主要用于备份NameNode…...

【基础算法】双指针---数组元素的目标和
🌹作者:云小逸 📝个人主页:云小逸的主页 📝Github:云小逸的Github 🤟motto:要敢于一个人默默的面对自己,强大自己才是核心。不要等到什么都没有了,才下定决心去做。种一颗树,最好的时间是十年前…...

Javascript借用原型对象继承父类型方法
借用原型对象继承父类型方法 目的: 儿子继承父类属性和方法,父类之后新增的方法不会被儿子继承。 前言: 先理解一个问题: Son.prototype Father.prototype; 这一操作相当于把Son的原型对象指向Father。 意味着Son的prototype的地址与Fa…...

你不会工作1年了连枚举都还不知道吧?
💗推荐阅读文章💗 🌸JavaSE系列🌸👉1️⃣《JavaSE系列教程》🌺MySQL系列🌺👉2️⃣《MySQL系列教程》🍀JavaWeb系列🍀👉3️⃣《JavaWeb系列教程》…...

ks通过恶意低绩效来变相裁员(五)绩效申诉就是「小六自证吃了一碗凉粉」
目录 一、小六吃了一碗凉粉 二、给你差绩效 公司告诉你可以绩效申诉 1、公司的实际目的是啥 2、你一旦自证,就掉入了陷阱 三、谁主张谁举证——让公司证明它绩效考核的客观性和公平性 四、针对公司的流氓恶意绩效行为,还有其他招吗 五、当公司用各…...

一阶低通滤波介绍及simulink模型
一阶低通滤波 背景介绍 低通滤波是一种过滤方式,规定低频信号能正常通过,而超过设定临界值的高频信号则被阻隔、减弱。低通滤波可以简单的认为:设定一个频率点,当信号频率高于这个频率时不能通过,在数字信号中&#…...

三十三、MongoDB PHP 扩展
PHP 语言访问 MongoDB 数据库需要使用 mongo 扩展 mongo 扩展不是 PHP 官方内置的扩展,需要开发者自己手动安装和配置 本章我们将学习如何在 Linux、Window、Mac 平台上安装 mongo 扩展 Linux 上安装 PHP MongoDB 扩展 通过 pecl 来安装 在 Linux 系统上可以通…...

2D图像处理:九点标定_上(机械手轴线与法兰轴线重合)(附源码)
文章目录 1. 九点标定2. 九点标定流程2.1 机械手轴线与法兰轴线重合代码实现1. 九点标定 在2D视觉抓取项目中,如果想要让机械手准确的抓取到工件,前提是需要知道机械手应该移动到哪里(位姿)。而移动到哪里(位姿)的获取就需要对相机和机械手进行标定。因此,九点标定(2D视…...

2023最新C++面经(一):vector内存预分配,左值引用和右值引用,move语义
文章目录零、前言一、在C中,往vector插入1000个数字,怎么做能保证性能最高二、在vector中对10000个数字删除偶数位置的数,怎么做保证性能较高三、malloc用delete会出现什么问题四、weak_ptr解决的是什么问题,lock返回的对象可以直接使用吗五、…...

【C语言经典例题】调整数组使奇数全部都位于偶数前面
目录 一、题目要求 二、解题思路 分步解析 从前往后找 从后往前找 交换 三、完整代码演示 一、题目要求 输入一个整数数组,实现一个函数, 来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分, 所有偶数位于数组的后半…...

C++经典20题型,满满知识,看这一篇就够了(含答案)
今天找了20道c的经典题型,看这一篇就够了,全是干货 目录 1、题目:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总…...

卷积神经网络CNN之ZF Net网络模型详解(理论篇)
1.背景 2. ZF Net模型结构 3. 改进优缺点 一、背景 ZF Net是用作者的名字命名的,Matthew D.Zeiler 和 Rob Fergus (纽约大学),2013年撰写的论文; 论文原网址https://arxiv.org/abs/1311.2901 论文名:Vis…...

Vue 3.0 响应性 基础 【Vue3 从零开始】
#声明响应式状态 要为 JavaScript 对象创建响应式状态,可以使用 reactive 方法: import { reactive } from vue// 响应式状态const state reactive({count: 0}) reactive 相当于 Vue 2.x 中的 Vue.observable() API ,为避免与 RxJS 中的 ob…...

flex布局方式让最后一个(或第二个...n)元素居右显示
<div class"round"> <div class"income">收入</div> <div class"center"> <img style"width: 12px" src"../../img/big/up.png"> </div> <div class"rg"> <span cl…...

【Python语言基础】——Python MySQL Order By
Python语言基础——Python MySQL Order By 文章目录 Python语言基础——Python MySQL Order By一、Python MySQL Order By一、Python MySQL Order By 结果排序 请使用 ORDER BY 语句按升序或降序对结果进行排序。 ORDER BY 关键字默认按升序对结果进行排序。若要按降序对结果进…...

自然数学的哲学原理--复数理论的扩展
自然数学的哲学原理--复数理论的扩展 2023-03-05 10:27:12 自然数学的哲学原理--复数理论的扩展 一维:线,实数 二维:平面 三维:立体 四维:相对论时空 复数,以一个数对形式表示,实现了复平面的…...

tsconfig.json中的一些配置
compilerOptions 编译选项是配置文件中非常重要也比较复杂的配置选项 target:设置ts代码编译的目标版本 可选值: ES3(默认)、ES5、ES6/ES2015、ES7/ES2016、ES2017、ES2018、ES2019、ES2020、 ESNext 示例: &quo…...

Spark调优总结
下面是基于官方优化建议,加上自己的一些理解整理。官方地址:https://spark.apache.org/docs/2.4.8/tuning.html 任务并行度 Spark会根据每个文件的大小自动设置运行“map”任务的数量,而对于分布式的“reduce”操作,例如groupBy…...

4.创建和加入通道相关(network.sh脚本createChannel函数分析)[fabric2.2]
fabric的test-network例子有一个orderer组织、两个peer组织、每个组织一个节点,只有系统通道(system-channel),没有其他应用通道。我们可以使用./network.sh createChannel命令来创建一个名为mychannel的应用通道。 一、主要概念 …...

若依学习(前后端分离版)——自定义注解@Log(如何自定义注解,实现aop)
如何自定义注解 aop的基本知识与应用 若依对用户的一些更新删除等敏感操作操作进行了日志记录 注解定义和切面处理的项目位置 第一步:自定义注解log 定义了注解的相关信息。这里定义的属性可以在使用时加以定义 注解Target和Retention的作用 第二步切面逻辑…...

防止暴力破解ssh的四种方法
一. 方法介绍 防止暴力破解的四种方法: 1 密码要写的足够的复杂,通常建议将密码写16位,并且无连贯的数字或者字母;当然也可以固定一个时间修改一次密码,推荐是一个月修改一次会稳妥一些2 修改ssh的端口号,…...