VGA无显示分析

目录

拓扑

I2C配置

复位

上电信号

正常读写I2C的情况

I2C总结

HPD

总结


拓扑

SOC--HDMI----HDMI转VGA芯片---VGA

I2C配置

HDMI转VGA芯片通过EC进行配置。同时此芯片的上电、复位也由EC进行控制。

复位

由于EC 通过I2C对此芯片访问时报错,首先查看复位信号是否正常。复位要求大于100ms的低电平,而后拉高。

示波器测量复位信号

代码中:写低,然后延时100ms,然后写高。

1) 设置 触发模式为上升沿触发。

2) 设置触发电平为近3V ,如下图所示T线 trigger level。主要防止探针点击测量点时手抖误触发。

3) 设置单次触发

4) 设置水平方向的时间为200ms(参考代码里面延时100ms)

结论: 复位符合芯片手册要求。

上电信号

poweron信号为高,测量比较简单。但为高,给芯片上电时,I2C 的SCL 一直为低,像是被拉死了。

而poweron 为低时,即不给芯片上电。从EC发出的I2C时钟则正常的很。 如下图:

频率为100K

正常读写I2C的情况

正常读写I2C时,是很快的一个过程。为了用示波器抓住,需要做如下设置:

1) 触发模式由单次或者auto 修改为普通,如下图设置

2) 100K频率虽然设置10us-20us的时间间隔较为准确,但实际抓取时,时间太短抓不到。这里设置500us,先抓到,然后再放到。

3)上图放大后的效果

I2C总结

在EC 初始化的流程中,有上电控制流程,在此流程中,设置HDMI转VGA的上电使能,而后再通过I2C对此芯片进行访问。此时I2C不通,I2C SCL SDA一直为低,像是被拉死的状态,而HDMI转VGA的复位与上电都是正常的。

而单独开一个线程,在主机SOC上电后,此线程会通过I2C 访问HDMI转VGA芯片,此时I2C工作正常,可以正常配置转换芯片。

HPD

理论上讲,VGA 连接器在检测到显示器插入后,通过R\G\B三个管脚阻抗状态的变化,引起SOC HPD的状态变化,进而通知SOC 显示器插入。

但是由于转换芯片没有这个感知功能,也就不能通知SOC 是否有VGA显示器插入。而SOC不能检测到VGA 插入也就不会输出任何内容。

通过强制设置HPD状态,在EC配置 转换芯片时,即设置HPD的状态为插入。

设置前:hpd _status为out ,即拔出。

复制代码
------------------------------------------------------------------hw_status-------------------------------------------------------------
hpd_status         :out          |oe_status          :on           |avmute_status      :unknown      |control_stable     :no           |
h_total            :8496         |v_total            :1110         |h_act              :7680         |v_act              :1080         |
ctrl_phy_cross     :no           |hpd_in_cnt         :0            |hpd_out_cnt        :0            |                                 |
------------------------------------------------------------------hw_cfg----------------------------------------------------------------

设置后:hpd _status为in,即插入。

复制代码
------------------------------------------------------------------hw_status-------------------------------------------------------------
hpd_status         :in           |oe_status          :on           |avmute_status      :unmute       |control_stable     :yes          |
h_total            :2200         |v_total            :1125         |h_act              :1920         |v_act              :1080         |
ctrl_phy_cross     :no           |hpd_in_cnt         :2            |hpd_out_cnt        :0            |                                 |
------------------------------------------------------------------hw_cfg----------------------------------------------------------------

总结

1) 经由EC控制的芯片,其上电时机与EC 访问此芯片的时机有比较严格要求。而且关联其他设备上电。比如SOC上电后,EC才能正常访问转换芯片。

2) 经过转换芯片的显示方式。某些功能、状态检测的管脚与直连的方式大不相同,需要软硬件配置一起处理。在设计开发时要充分考虑。

相关推荐
Terasic友晶科技6 天前
7-DE10-Nano的HDMI方块移动案例的整体实现(含Quartus完整工程免费下载)
fpga开发·i2c·pll·de10-nano·hdmi传输·方块移动案例·quartus prime
0欧姆10 天前
I2C 驱动 --- 设备,AHT10
i2c·qnx·aht10·raspi
矜辰所致12 天前
CH58x 芯片 I2C 使用(SHT20/SHT40示例)
i2c·温湿度传感器·sht21·sht40·ch58x i2c使用
wxmtwfx22 天前
Linux内核时钟芯片DS3232驱动源码分析
linux·驱动开发·spi·i2c·ds3232
wotaifuzao25 天前
I2C通信--深度解析与未来发展
单片机·嵌入式硬件·物联网·信息与通信·i2c
来鸟 鸣间1 个月前
i2c_add_driver关键流程
linux·i2c
Terasic友晶科技1 个月前
4-DE10-Nano的HDMI方块移动案例——I2C通信协议
fpga开发·i2c·hdmi·de10-nano·i2c通信协议
xiaohai@Linux1 个月前
ESP32 IDF v5.3.1 驱动 CST816T 触摸芯片(I2C 协议)
单片机·嵌入式硬件·触摸·i2c·cst816t
一个平凡而乐于分享的小比特1 个月前
I2C、SPI、CAN、串口通信详细对比
can·uart·spi·i2c