打印

使用PIC单片机做了一个KVM,分享一下设计思路(原创)

[复制链接]
4411|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
thougt888|  楼主 | 2011-9-13 20:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1
方案调研

1)ATEN总体方案
错误!文档中没有指定样式的文字。‑1切换方案
切换过程分为两个部分:视频切换和键盘鼠标切换。视频切换采用两片ASIC芯片,PI5C3883用于RGB模拟开关,QS3257用于行场切换,使能端连接单片机,由外部按键触发,或通过键盘按键触发。键盘鼠标切换使用单片机切换。切换流程图如下:
错误!文档中没有指定样式的文字。‑2
切换流程图

2)关键问题

视频切换部分:硬件方案比较成熟,但是由于VGA模拟信号容易受到干扰,因此布线有一定难度。另外,在切换瞬间如何保证显示图像不抖动,不花屏,不拖影,实现同步无失真的切换比较困难。


键盘鼠标切换:键盘鼠标采用单片机进行切换,切换流程如下图所示。一是室内没有KVM相关技术积累;二是无单片机程序编写经验和积累,三是网络公共资源没有相应的方案。单片机程序编写存在如下问题(目前能想到的):1)主机上电时序问题:由于是PS/2接口,所以单片机要在开机过程中和两台主机建立联系,两台主机上电顺序有:同时上电;一台先上电,一台后上电;仅有一台上电。单片机如何根据不同的上电组合完成响应过程是个难题。2)键盘鼠标缺失:用户可以仅使用一路键盘鼠标,也可以两路公用,也可能鼠标键盘接反,或有一个键盘或鼠标接触不良,如何判断异常情况,并处理是个难题。3)扫描按键问题:按照原来的设计,KVM可以通过键盘切换,也可以通过鼠标切换,用户可能同时按键,或错误操作,处理异常是个难题。4)键盘鼠标的默认路径问题:单片机是否对输入的键盘鼠标信号进行了处理,还是仅仅作为缓冲,切换机制还没有调查清楚。5)程序稳定性问题:由于外部电平不稳定,程序可能产生异常响应,导致用户无**常使用。另外,程序需要长时间运行测试,和大量的非正常使用测试,这样才能使用。否则,在长时间运行中很容易出现问题。

2
详细设计

1)
PI5C3383用于RGB切换,但是为什么不采用AD8188/AD8199等的专用模拟多路复用器件,而选择一款总线切换器件?同理IDT QS3257也有很多同类型的器件,如74系列器件,为什么选择这个方案?C3383和QS3257工作温度-40~+85度,存储温度-65~+150度。所以要下载ATEN(艾腾)CS-82A的资料看一看

2)
C3383控制引脚切换表

C3383和QS3257封装形式为QSOP封装
BX
L
H
输出
AxBus-RGB1
BxBus-RGB2
3)
QS3257的控制引脚切换表

S
L
H
输出
I0x-行场
I1x-行场
4)
指示灯显示:
黄灯(在线等)——当主机键盘接口接入后等就一直亮,可以两个灯同时亮。绿灯(切换灯)——切换到那路主机,相应那路灯就亮。

5)
视频切换方案系统框图

错误!文档中没有指定样式的文字。‑3 RGB切换原理框图
问:为什么选择PI5C3383和IDTQS3257,同类型的芯片有AD8188和74系列芯片,是因为价格因素还是其他因素?
答:根据目前的理解,采用74HC14D对输入行场和切换后的行场整形的目的是为了提高系统的隔离度(关于隔离度的概念参考硕士论文《宽带视频切换矩阵模块的关键技术研究》),因为对于多输入输出的系统,输出的信道之间有很强的干扰,如何消除干扰是一个关键问题,需要继续研究!
6)
键盘鼠标切换设计:

7)
系统供电设计:PI5C3383最大功耗0.5W,QS3257最大功耗0.5W,74HC14D最大功耗0.5W,单片机最大功耗5×0.025A=0.075W,所以系统最大功耗0.5=0.5+0.5+0.075=1.575W,78L05最大提供0.1A的输出电流,即0.5W的功率,但是键盘鼠标的输入电压可以提供一定的功率。所以ATEN的设计合理。

8)
单片机外围电路设计

系统采用PIC16F73/6单片机,单片机详细资料见手册。
(1)
晶振电路设计

PIC单片机有四种振荡方式可供选择,振荡方式经配置寄存器CONFIG的F0SC1,F0SC0位加以选择,并在EPROM编程时写入。
表:振荡器类型选择
错误!文档中没有指定样式的文字。‑4
晶体振荡模式对应的频率范围参考

晶体振荡器/陶瓷振荡器:
XT、 LP、HS三种方式中,需一晶体或陶瓷谐振器连接到单片机的OSC1/CLKIN和OSC2/CLKOUT引脚上,以建立振荡,如下图所示。电阻RS常用来防止晶振被过分驱动。在晶体振荡下,电阻RF10MΩ。对于32KHZ以上的晶体振荡器,当VDD>4.5V时,建议C1=C230PF。(C1:相位调节电容; C2:增益调节电容。)
系统使用的晶振电路为:
错误!文档中没有指定样式的文字。‑5
1.如何选择晶体?
对于一个高可靠性的系统设计,晶体的选择非常重要,尤其设计带有睡眠唤醒(往往用低电压以求低功耗)的系统。这是因为低供电电压使提供给晶体的激励功率减少,造成晶体起振很慢或根本就不能起振。这一现象在上电复位时并不特别明显,原因时上电时电路有足够的扰动,很容易建立振荡。在睡眠唤醒时,电路的扰动要比上电时小得多,起振变得很不容易。在振荡回路中,晶体既不能过激励(容易振到高次谐波上)也不能欠激励(不容易起振)。晶体的选择至少必须考虑:谐振频点,负载电容,激励功率,温度特性,长期稳定性。
2.如何判断晶振是否被过分驱动?
电阻RS常用来防止晶振被过分驱动。过分驱动晶振会渐渐损耗减少晶振的接触电镀,这将引起频率的上升。可用一台示波器检测OSC输出脚,如果检测一非常清晰的正弦波,且正弦波的上限值和下限值都符合时钟输入需要,则晶振未被过分驱动;相反,如果正弦波形的波峰,波谷两端被削平,而使波形成为方形,则晶振被过分驱动。这时就需要用电阻RS来防止晶振被过分驱动。判断电阻RS值大小的最简单的方法就是串联一个5k或10k的微调电阻,从0开始慢慢调高,一直到正弦波不再被削平为止。通过此办法就可以找到最接近的电阻RS值。
3.如何选择电容C1,C2?
I.因为每一种晶振都有各自的特性,所以最好按制造厂商所提供的数值选择外部元器件。
II.在许可范围内,C1,C2值越低越好。C值偏大虽有利于振荡器的稳定,但将会增加起振时间。
III.应使C2值大于C1值,这样可使上电时,加快晶振起振。
(2)
扬声器电路设计

系统扬声器电路图
扬声器工作原理,以及扬声器选型需要分析,另外,实际的发生是由单片机编程产生的。因此要编写相应的发生程序。
错误!文档中没有指定样式的文字。‑6

问:触发电路有什么作用?R31是否必须?

(3)
掉电保护电路设计

常用掉电保护:在实际应用中,有时需要考虑电源电压VDD的下降情况。电源下降保护电路如图1所示。在这个电路中,当VDD≤VD+0.7V时,则会产生复位,原理为稳压管的稳压值VD和晶体管Q1的e、b正向压降之和大于VDD,稳压管Vz截止,晶体管Q1截止,MCLR端为低电平,单片机处于复位状态。
错误!文档中没有指定样式的文字。‑7
图4是另一种保护电路,电路中用电阻代替了稳压管,价格较低,但效果较差,当VDD≤(R1+R4)×0.7/R4时,晶体管截止,MCLR为低电平,单片机复位。
系统掉电防护电路原理图:
错误!文档中没有指定样式的文字。‑8
单片机掉电保护电路

2SC2413K为NPN三极管,T=25oC,IC=50mA时,UBE=0.7V。当供电电压为+5V时,U1处电压计算为1.26V,Q2导通,U2为0V,Q1截至,U3处电压为R40,R44分压,计算得为4.79V。当输入电压为VCC时,若R43/R42×VCC<0.7V,Q2截至,U2为VCC,若VCC>0.7V,Q1导通,U3为0V,MCLR引脚被拉低,单片机复位。通过计算当供电电压下降到0.7<Vd<2.8时,单片机被复位。

相关帖子

沙发
highgear| | 2011-9-13 22:52 | 只看该作者
顶分享!

使用特权

评论回复
板凳
astudent| | 2013-1-24 14:50 | 只看该作者
学习了!!!

使用特权

评论回复
地板
yaoyuanytu| | 2013-1-26 09:28 | 只看该作者
楼主厉害 我们单位买了好几个KVM  你这都自己做出来  佩服

使用特权

评论回复
5
lhchen922| | 2013-11-25 18:18 | 只看该作者
实现过了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:小零件爱视频

0

主题

2

帖子

1

粉丝