嵌入式系统的应用领域越来越广泛,干扰或者恶劣环境常影响嵌入式系统运行的稳定性和可靠性。Reset是维护系统稳定的一个关键因素,正确地设计复位电路,巧妙地应用复位操作,能使整个系统更可靠、稳定地运行。本文结合实际项目经验分析Reset的相关应用与设计,展示Reset对系统稳定性的重要性。
在嵌入式系统电子设备的运行中,当出现程序跑飞的情况或程序跳转时,可用手动或自动的方法发信号给硬件特定接口,使软件的运行恢复到特定的程序段运行,这一操作就是复位(Reset);这一过程中,手动或自动发给硬件特定接口的信号,就是复位信号。为了克服系统由于内因(时钟振荡源的稳定性)和外因(射频干扰)所引起的运行不稳定的情况,在嵌入式系统软件和硬件上,必须作相应的处理和保护。复位操作是一种行之有效的保护措施,同时复位系统本身也是引起嵌入式系统运行不稳定的因素,在设计时需特别注意。
本文结合笔者亲身经历的实例来说明Reset的重要性,巧妙地运用Reset使系统工作更稳定可靠。
1 Reset方式及手段
在嵌入式应用系统中,复位操作包括两个方面——处理器本身的复位和系统中外设(外接功能模块)的复位,如图1所示。
总的说来,嵌入式复位方式主要分硬件复位和软件复位。硬件复位,即采用硬件的手段、通过硬件复位信号对系统处理器或者外设进行复位。只要在RST端出现一定时间(具体看系统和处理器的机器周期)的复位电平信号,由CPU采样复位信号