LPC700系列单片机看门狗复位技术解析

需积分: 13 8 下载量 34 浏览量 更新于2024-10-17 收藏 238KB PDF 举报
"看门狗复位技术是嵌入式系统设计中的一种重要抗干扰措施,主要用于确保系统稳定运行。看门狗定时器分为硬件看门狗和软件看门狗,前者包括外部WDT和内部WDT,后者则通常利用系统定时器实现。在实际应用中,需要定期重置看门狗计数器以防止系统复位。某些单片机如Philips的LPC700系列、Microchip的PIC系列、Atmel的AT89SXX系列和Holtek的HTxx系列都内置了看门狗,但它们的时钟可能存在误差,设计时需注意这一问题。" 看门狗复位技术是一种在嵌入式系统中防止程序异常或系统卡死的有效方法。看门狗定时器(WDT)独立于系统运行,当其计数器达到预设阈值时,如果没有被重置,系统将会自动复位,以恢复正常运行状态。看门狗分为硬件和软件两种类型。硬件看门狗通常由外部独立芯片或单片机内部集成的定时器组成,而软件看门狗则是通过编程实现,利用系统的一个定时器作为监控器。 在硬件看门狗中,外部WDT是一个独立于微控制器的实体,它需要外部电源和时钟。内部WDT则是单片机内部的一部分,它与CPU共享同一个电源和时钟,但在某些情况下可能更易于使用。软件看门狗则依赖于操作系统或应用程序来定期重置计数器,如果程序正常运行,会在规定时间内执行这个操作。 LPC700系列单片机,如P87LPC764,是Philips公司推出的增强型51单片机,它集成了多种功能,包括看门狗定时器,适合于需要高可靠性和稳定性的应用。然而,这些内部看门狗的时钟可能存在精度问题,这可能导致在设计时忽视时间误差,从而引起不必要的系统复位或性能下降。因此,在使用内部看门狗时,工程师必须考虑到这些时钟误差,并适当地调整看门狗的时间间隔和重置策略,以确保系统的正确运行。 例如,在上述代码中,`WDCON=0x10;` 启动了看门狗,选择了看门狗定时器作为时钟源,并设置了溢出时间。程序还应该包含一个函数,如`Clear_WDT();` 来在适当的时间间隔内重置看门狗计数器,防止它溢出触发复位。`Delayms()` 函数可能用于提供必要的延时,以确保在看门狗计数器溢出之前进行重置。 理解看门狗复位的工作原理及其在不同硬件平台上的应用是嵌入式系统设计的关键。正确配置和使用看门狗可以显著提高系统的稳定性和鲁棒性,尤其是在面对恶劣环境或可能出现软件异常的场合。在设计过程中,必须充分考虑硬件时钟的误差以及软件的实时性,以确保看门狗能有效地服务于系统保护。
2020-07-14 上传