×
嵌入式开发 > 详情

Watchdog在8XC552系列单片机系统中的应用

发布时间:2020-07-09 发布时间:
|

1引言

Philips公司的8XC552单片机以其体积小、功能强、价格低等优势而广泛地使用在工业控制、DCS控制和智能仪器等领域。笔者在智能配电监测仪的研制过程中,虽然采取了相应的抗干扰措施,但由于工业现场环境中电磁场、电网尖峰、谐波、浪涌及雷电辐射等影响,仍有可能出现程序死循环、跑飞等失控现象。为此,笔者采用Watchdog技术保证了系统的正常运行,通常 Watchdog技术在单片机应用系统中可分为软件Watchdog和硬件Watchdog。Philips公司的8XC552、Intel的8098、 Motorala的68C05以及Microchip的16C5X系列单片机本身已带有软件Watchdog功能,因此,只要硬件接法正确,在软件设计中调用相应语句进行启动即可。

2硬件组成原理

2.1系统工作原理

图1所示是87C522单片机用于智能型配电仪的连接电路,本智能配电仪中的87C552为主控芯片,该芯片除具有三个16位定时器T0、T1及T2 外,还有一个专作监视8位定时器、简称 WDT(WatchdogTimer)的T3定时器。因为微控制器有时会受噪音、射频干扰等环境因素的影响而导入错误的运行状态。监视定时器的功能就是在某特定的时限内使微控制器复位,从而将其从错误的状态中恢复过来以重新开始正常运行。当T3用作Watchdog定时器并由软件启动计时后,如果系统已达到所设定的预定时间而仍没有重新启动定时器,此时就会产生溢出信号并停止计时,表明系统出现异常。CPU可以对定时器重新启动、清零、设定计时值等操作。系统正常运行时,CPU将周期性地重新启动定时器,当然其启动周期应小于定时器的设定值,以保证定时器始终不能产生溢出信号。而当系统运行不正常时,由于 CPU不能周期性地启动定时器,因而定时器将产生溢出信号,以强迫CPU恢复系统的正常运行。

2.2 Watchdog的内部结构原理

监视定时器的结构原理如图2所示。它的核心为一8位定时器,其前级是一个11位定标器。后者的输入信号为fosc/12,即定标器对机器周期进行递增计数。这样,每过2个机器周期,定时器T3的值便增加1000次。若用16MHz或24MHz晶体振荡器,则监视定时器的增值间隔将分别为1.536ms 和1.024ms;其相应的最大溢出周期分别为393.216ms和262.144ms。

当监视定时器溢出时,系统将产生一个内部复位脉冲以使8XC552复位。由图2可以看出,T3溢出时,RST引脚内侧的晶体管因栅极出现一个负脉冲而瞬时导通,从而在RST引脚上输出一个复位正脉冲,其宽度为3个机器周期。如果RST引脚外接电容,则这么窄的输出脉冲可能遭到破坏,因为电容不允许 RST引脚电压产生突变,但这不会影响到内部复位操作。

3调试中的常见问题及其解决方法

在对系统进行调试时,有可能出现闪屏、无法显示以及显示杂乱等现象,现将这些问题的解决方法介绍如下:



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
MSP430单片机硬件知识-复位