你必须执行这些硬件。的宗旨,在“从NVRAM还原为默认值”是以恢复所谓的“bricked”设备
例如,如果NVRAM seting被修改(宇宙射线?)以致设备无法启动会怎么样?在这种情况下,您建议的按钮轮询守护程序将永远不会执行
对于持续一秒的重启,使用RC(电阻+电容)电路“debounc e“按钮按下。选择适合1秒延迟的RC时间常数。使用一个比较器观察RC电压来发信号给MIPS cpu上的RESET
引脚。
对于三秒钟的印刷功能(恢复NVRAM默认值),您可能必须做更复杂的事情。
一种可能性是将一个微小的PIC单片机放入复位电路,但只能使用带有熔丝(不可擦除)ROM而不是NVRAM的微控制器。
更简单的可能性是在同一条电路和总线上包含与NVRAM相同的默认ROM。 J/K触发器锁存器可以成为复位电路的一部分。你还需要一个三秒调谐的RC电路和比较器。在小于三秒钟的压力下,触发器应该锁存一个0
输出,并且在三秒钟的按键上,第二个RC电路应该在3秒后触发比较器,并向J/K锁存器提供一个1
,这将会切换其输出。
触发器输出Q
将存储单个位,告诉您的电路这个复位周期是否在三秒钟推后。如果是这样,那么输出Q
正在驱动芯片选择到NVRAM和Q*
正在驱动芯片选择到ROM。 (我假设芯片选择在NVRAM和ROM芯片上都是负逻辑)。
然后,当CPU启动时,取决于芯片选择线,它将从NVRAM或ROM中读取设置。
您的启动代码可以检测到它是用ROM芯片选择启动的,并且可以稍后用GPIO线重置J/K触发器。然后,CPU将能够将良好的值写回到NVRAM中。希望能够解开设备。
您想使用不可擦除或可重复使用的ROM。这种ROM最能抵抗静电,电源故障和辐射。例如,辐射比我们通常意识到的要多得多,宇宙射线通量的数量乘以飞机上的设备。