领教了!!厉害!!
QUOTE:
引用第0楼katydid于2006-10-10 20:16发表的“软件设计也能解决一部分静电放电”:
静电放电固件和软件设计原则
在对付静电放电方面,除了众所周知的硬件方法以外,固件和软件也起着重要的作用。
虽然固件设计不能防止系统中器件的损坏,,但是能够有效地避免一些非永久性的损坏。通过适当写入的固件,不可恢复的设备故障(死锁)通常可以避免,可恢复的故障也可以减少10倍。
如同硬件上的静电放电措施一样,抗静电放电的固件也是有代价的。通常,程序会更大一些,这意味着需要更长的编程时间和存储单元。权衡得失时,要将这种代价与单纯依靠硬件解决静电放电问题时的成本做对比。在许多微处理器的应用中,固件措施的成本要比硬件低。
在编写静电放电抗扰性强的固件时一定要树立的的一个观念是“不确定性”。也就是,一定不能认为端口、寄存器等的状态是一定的。例如,当使用一个索引寄存器时,应该问一下,如果这个索引发生错误时,会发生什么问题。如果仅是仅发生一些暂时的或无关紧要的问题,如发光二极管闪烁,则不需要什么特殊的处理。如果会发生很严重的问题,例如系统发生死锁,则必须采取措施来避免问题的发生。
.......