MSTAR项目看门狗开发详解:防止程序跑飞
需积分: 3 119 浏览量
更新于2024-09-03
收藏 82KB DOCX 举报
"MSTAR项目的看门狗开发文档主要涵盖了看门狗的基本概念、工作原理以及不同类型的看门狗应用,包括硬件和软件看门狗的实现方式,并提及了51系列单片机以及凌阳61单片机的看门狗特性。"
**看门狗(watchdog)基本知识**
看门狗,又称watchdog timer,是一种定时器电路,它通过一个“喂狗”输入和一个连接到微控制器(MCU)复位端的输出来工作。在正常情况下,MCU会周期性地向喂狗端发送信号来重置看门狗计数器。如果在规定时间内未收到这个信号(通常发生在程序异常或死循环时),看门狗定时器会超时并触发复位信号,使MCU复位,从而避免系统长时间停滞。
**看门狗工作原理**
系统启动后,看门狗计数器开始计数。若在预设的时间内未执行清零操作,看门狗计数器将达到上限,导致看门狗中断,进而引发系统复位。因此,使用带有看门狗的系统时,必须确保定期执行清零操作。
**硬件看门狗**
硬件看门狗基于物理定时器实现,如MAX813、LM5045和IMP813等芯片,这些芯片在市场价格区间为4至10元。硬件看门狗独立于软件运行,即使软件发生故障,也能确保系统复位功能的可靠性。
**软件看门狗**
软件看门狗则依赖于软件逻辑实现,例如在51系列单片机中,可以使用两个定时器T0和T1互相监控。T0用于监测主程序,当其定时中断发生时,更新一个变量;主程序在结束时检查该变量,若变化符合预期,则表明程序运行正常;否则,执行复位操作。T1则监控主程序,设置一个较长的定时时间,由主程序在适当时间重置。T1的异常情况则由T0中断服务程序检测,形成一个互相监督的循环,确保系统的稳定性。
**特定单片机的看门狗特性**
51系列单片机内置看门狗定时器,能够对系统频率进行分频计数,溢出时触发复位。用户可以调整溢出率,甚至将其单独用作定时器。
凌阳61单片机的看门狗功能相对简单,时间设置单一,但在循环代码中添加清狗指令即可正常使用。
C8051Fxxx系列单片机也集成了看门狗定时器,提供了21级的可编程计数器,增强了灵活性和适应性。
看门狗是确保嵌入式系统可靠性和稳定性的关键机制,通过监控和及时恢复异常状态,防止系统长时间无响应。在mstar项目中,理解和正确使用看门狗技术对于系统的健壮性至关重要。
2021-10-11 上传
2021-10-10 上传
2020-06-13 上传
2022-10-26 上传
2020-01-11 上传
2021-12-04 上传
2021-11-30 上传
2021-10-06 上传
2022-11-19 上传
sunboy_jasonchen
- 粉丝: 3
- 资源: 14
最新资源
- Fisher Iris Setosa数据的主成分分析及可视化- Matlab实现
- 深入理解JavaScript类与面向对象编程
- Argspect-0.0.1版本Python包发布与使用说明
- OpenNetAdmin v09.07.15 PHP项目源码下载
- 掌握Node.js: 构建高性能Web服务器与应用程序
- Matlab矢量绘图工具:polarG函数使用详解
- 实现Vue.js中PDF文件的签名显示功能
- 开源项目PSPSolver:资源约束调度问题求解器库
- 探索vwru系统:大众的虚拟现实招聘平台
- 深入理解cJSON:案例与源文件解析
- 多边形扩展算法在MATLAB中的应用与实现
- 用React类组件创建迷你待办事项列表指南
- Python库setuptools-58.5.3助力高效开发
- fmfiles工具:在MATLAB中查找丢失文件并列出错误
- 老枪二级域名系统PHP源码简易版发布
- 探索DOSGUI开源库:C/C++图形界面开发新篇章