HDMI 5进1出 切换器 双AG7111+ESP32
简介
使用双AG7111芯片级联的HDMI 5切1 切换器,并使用ESP32做控制
简介:使用双AG7111芯片级联的HDMI 5切1 切换器,并使用ESP32做控制开源协议
:GPL 3.0
描述
0.前言
目前AG7111很贵(当时买10块一颗,现在涨到30了)而且还不一定买的到,因此有国产替代方案ms9601:
1切3参考:https://oshwhub.com/aknice/ms9601
1切5参考:https://oshwhub.com/aknice/yin-shi-pi
成本更低,功能一样
不是AG7111买不起,而且ms9601更有性价比!
1.简介
使用两颗AG7111 + ESP32 做 HDMI 5进1出I切换器,适用于多种用途
之前还做过HDMI 3进1出I切换器,同一个切换器方案,但是没有MCU控制,比较经济实惠,开源连接:
https://oshwhub.com/Aknice/1dfda80b41104751846aecc99dd9e055
这次做的需要用到MCU控制,于是便看上了ESP32的 DAC功能
又到了经典比价格环节
马云网200+一个5切1切换器 我这个算上ESP32和两颗切换芯片加上外围 不过50
2.原理
在3切1中其实讲了一点点原理,但是没讲多少,主要是切换控制的问题,如何用MCU控制
和这里的RXSEL有关系,这里3切1的RXSEL1是NC的,也就是RXSEL1是浮空,浮空为按键控制。
现在这里用了两颗AG7111,因此有RXSEL1和RXSEL2,这里两个都是接的2K下拉。
这个RXSEL是使用电压控制的,根据输入的电压值不同就可以让输出的AG7111选择输出哪个HDMI端口,那我们就用MCU控制他们的电压就好了。
这个RXSEL直接接到ESP32的D25和D26端口
这里有个IO端口图,可以看到D25 D26是刚好两个DAC端口,因此接这里就可以使用。
由于这里规格书上根本没写给多少电压(实际上连这个端口用途规格书都没写,都是自己摸出来的)
这里我通过反复试验试出来了端口和电压对应关系:
端口 | 电压(V) |
HDMI1 | 0~0.2V |
HDMI2 | 0.8~1.2V |
HDMI3 | 1.8~2.2V |
上表就是HDMI切换端口和电压对应关系
如果电压不在这个范围内,会出现异常。
根据上表,再配合下拉2K,我们可以在代码中实现控制了
例如5端口,也就是PCB最右边端口,实际上是第二个芯片的第一个端口,而第一个芯片不会使用到,因此第一个芯片随便选择,也就是只要第二个芯片RXSEL2(D26)选HDMI1就好,因此26电压为0
例如2端口,也就是PCB从左往右数第二个端口,实际上是第一个芯片第二个端口,然后输出到第二个芯片第三个端口,因此RXSEL1(D25)选2的中间电压,这个值是62,第二个芯片RXSEL2(D26)选第三个端口,连接的第一个芯片的输出,因此选3,电压值最大的,值为160.
实际上如果按照芯片排版出线顺序来看,最右边应该才是第一个HDMI端口,但是不符合我们常用习惯,因此我将它们顺序做了对调。
3.关于屏幕
LED指示灯和屏幕可以选一种,屏幕没做其他状态显示,除了显示HDMI端口,还做了一个没有HDMI输出的指示。指示灯能显示,屏幕也能显示,后续做KMV的时候会继续在此基础上完善。
4.使用注意事项
使用必须外接TYPE-C 5V供电,否则无法使用。
左侧开关只控制HDMI切换器,ESP32和屏幕不受控。
改进:
- 等长线周围挖去地铜
- LOD换低压差的
- 二极管也换低压差的
- 视频信号串磁珠
- HDMI信号线做100欧阻抗匹配(jlc可以做,但是要加钱,白嫖板随意弄了,反正不做认证的)
另外可以无限加芯片7进1出方案9进1出都是没问题的。
5.亚克力面板
需要25mm M3铜柱*3
5mm M3铜柱*4
叠层结构
另外按键需要打印一个按钮,否则太长,或者可以改用侧贴式的
评论