打印

大家看看这个方案,欢迎拍砖!

[复制链接]
2047|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
tyrone3000|  楼主 | 2007-3-19 19:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
热插拔调试接口
在设备的面板上增设一个热插拔调试接口,以方便在设备开机状态下采用外接键盘显示模块对设备进行调试。键盘显示模块作为研制备件的附件提供给部队使用。在键盘显示模块中,键盘采用SPI总线,显示器则采用I2C总线。

1.1.1.1.1    热插拔所需要解决的问题
a. 防止板卡插入瞬间浪涌电流对背板和插板造成的硬件损坏。由于插板中去耦电容的存在,当把插板插入背板的瞬间,背板系统就会快速地对插板进行充电,插板上的电容瞬间相当于对地短路。这样就会在插板和背板上产生浪涌电流和电压波动,轻则引起背板时序出错或复位,重则引起器件毁损。在热插拨设计中应当控制电容的充电过程来抑制浪涌电流,以免对背板造成永久性损坏。
b. 防止板卡插入时对正常的背板电平、时序造成干扰,导致程序功能异常或者死机。因此         需要寻找一个合适的时机进行数据线的连接。
c. 让微处理器察觉板卡的插入和拔出,从而执行特定的功能,如对显示芯片执行初始化。
1.1.1.1.2    热插拔解决方案
针对我们的微处理器硬件设计方案,我们可以相应的对热插拔实现方案进行剪裁。
a. 浪涌电流抑制
采用热插拔控制芯片如(ADM1170)抑制浪涌电流,原理是当板卡插入时,板卡的电源需要通过控制芯片进行连接,控制芯片可以控制板卡电容充电速度,在加电后产生一个有一定斜率的MOSFET控制信号来驱动MOSFET器件,通过MOSFET的源漏极进行电源的连接,一旦电流过大,还可以切断板卡的供电。当板卡电源正常后,控制芯片输出POWER GOOD信号,可以利用该信号把板卡上的数据线和背板的数据线通过模拟开关相连。反之,控制器检测到拔出操作时,去除POWER GOOD信号,板卡的数据线和背板的数据线断开。因此,板卡上一般有热插拔控制芯片和模拟开关完成热插拔的功能,有的电路还增设了预充电电路,以减小相连时电压差引起的噪声;为了可靠地进行热插拨,应让地线先于其它线完成快捷牢固的电连接,以保证控制器回路和信号回路所用地线稳定而可靠连接,连接的顺序是Ground->Singal->VCC,这可以采用具有长短针的专用插头插座。为防止插拔时插头一侧先插入而另一侧后插入引起连接顺序失效,设计时在插针两边最头处设立地线连接,在插针的中央最短处设置VCC最短的插针。
b. 总线连接
为简化方案,不采用直接连接到数据总线(data BUS)的方法,而是采用专用P口,事先规定板卡和背板的输入和输出关系,背板的输出对应板卡的输入,反之亦然,这样,当热插拔控制器POWER GOOD信号出现以后,即可直接把键盘的SPI总线与背板的SPI总线相连。
对于显示模块采用的I2C则情况不同,因为i2C总线上挂了3个MAX6953点阵显示驱动芯片。这些驱动芯片既可作为主控制器也可作为从控制器。由于它们可能申请对总线的控制权,因此总线的状态是不确定的,这时,不能立即进行总线接入操作。需要选择一个总线空闲的时机通过模拟开关把I2C总线连接起来。目前商业化的热插拨控制器有很多种,例如LTC4300系列和PCA0951X系列等。LTC4300系列PCA9510系列的双总线缓冲器都允许I/O卡插入一个工作的背板中,并不会造成数据(SDA)和时钟(SCL)总线破坏。当板卡与背板建立连接时提供双向缓冲,并保证背板总线电容与插卡总线电容间的隔离。由于电路上有ΔV/Δt上升时间加速器的存在,可以校正插卡引起的信号上升时间过长的问题,满足信号上升时间的需求。片内预充电电路可使插入板卡时对总线的噪声降至最低。因此I2C总线热插拨设计可直接利用LTC4300或PCA0951X系列器件。
需要注意的是有的带P、N沟道输出结构的CMOS器件由于P沟道内部产生一个内部钳位二极管到VCC可能会引起在插入操作中有些系统信号被短时间短路到地。这种情况可以采用具有TTL兼容的缓冲集成电路(模拟开关)。
还要注意插卡插入到系统中,会在信号总线上增加额外的电容,这些电容在接通的瞬间引起背板信号总线电容和板卡电容的充放电。为防止引起不良后果,应当采取措施把电容控制在20pF内。
c. 微处理器唤醒
插板插入或移出系统后,要通知系统插板已经被插入或拨出。在程序内部设立一个全局变量,反映板卡插入和拔出的状态。由插入SPI键盘接口的击键动作引起/KEY中断信号,通过对/KEY中断进行处理,即刻设定全局状态变量,微处理器定时对该状态变量查询,如果查询到插入,则立即进行显示的初始化工作。同时设置定时器定时读取显示驱动芯片的寄存器,以察觉把板卡的移除。板卡拔除以后,将不能正确读取寄存器的内容,接着清零全局变量,从而反映板卡的插拔状态。当板卡插入以后,立即唤醒微处理器,并工作在全速状态。板卡拔除以后,微处理器可以设定工作在睡眠状态。
另外一种唤醒微处理器的方法是用C805F020内MCU内部的两个比较器,比较器的回差电压可以用软件编程,每个比较器都能在上升沿和下降沿产生中断,这些中断能够将MCU从等待方式唤醒。这样,我们只需从键盘显示附件中通过电阻分压后通过插头接入该比较器即可,当热插入时,比较器输入为高,当热拔出时,比较器输入失电为低,即可引发中断并在中断服务程序中进行处理。
热插拔连接器采用定制的专用连接器,电路设计时要保证有至少2000V的ESD保护电路。

相关帖子

沙发
mohanwei| | 2007-3-19 21:44 | 只看该作者

参考USB的工作原理即可。

电源线较长,先上电,再通信;
供电端口带浪涌电流保护;

其实工业场合还是用红外通信的更多。把键盘显示做成一个单独的模块,电池供电。模块与主机之间通过红外线进行通信。主机定期扫描外设即可(类似于定期扫描键盘)。

使用特权

评论回复
板凳
tyrone3000|  楼主 | 2007-3-20 12:43 | 只看该作者

红外的可靠性有多高,能指点一下吗?

最好给个方案看看!
我做的这套系统可靠性要求非常高,
还有一点就是C8051F020支持红外吗?
红外是不是有一套总线规则.
可以发我邮箱   sunlong2005@126.com

使用特权

评论回复
地板
power_man| | 2007-3-20 21:44 | 只看该作者

没有原理图的

使用特权

评论回复
5
tyrone3000|  楼主 | 2007-3-21 09:44 | 只看该作者

但是,显示器耗电很大,电池太大了,不太合适,不过可以参考一

使用特权

评论回复
6
mohanwei| | 2007-3-21 18:49 | 只看该作者

用的是液晶显示器,非常省电的。

使用特权

评论回复
7
tyrone3000|  楼主 | 2007-3-22 13:22 | 只看该作者

液晶的,环境实验通不过!

使用特权

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

本版积分规则

97

主题

474

帖子

1

粉丝