尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
喂狗在操作系统(rtos)上面的正确用法
喂狗在操作系统(rtos)上面的正确用法。不能在定时器喂狗也不能在idle任务喂狗也不能用定时任务去喂狗。因为会出现其他任务都卡死了但喂狗还在执行。应该检查所有任务都没有卡死才能喂狗。示例程序如下。//不能在定时器喂狗也不能在idle任务喂狗也不能用定时任务去喂狗。因为会出现其他任务都卡死了但喂狗还在执行。//默认1s1000 tick hz。如果要用ms延时请加上对应的宏。//假设tick类型为32位。//如果某个任务卡死。那么会出现不喂狗。长时间不喂狗会硬件重启。//如果某些出现死锁现象。也就是执行不到最后心跳停止。那么也会检测到心跳异常出现不喂狗。长时间不喂狗会硬件重启。//演示值实际值为除喂狗任务外所有任务的数量值。#defineN8//心跳数组。除喂狗任务外所有任务。volatileuint32_ttaskHeartBeat[N]{0};//具体任务1任务优先级1。voidtaskXXX(void*pv){while(1){//判断是否需要执行功能。if(flag){//执行完所需的操作就设置心跳。//由于是示例程序只有一个任务所以下标是0。每一个任务都有一个对应的下标。taskHeartBeat[0]xTaskGetTickCount();xTaskDelay(10);}else{//只设置心跳taskHeartBeat[0]xTaskGetTickCount();//由于是示例程序只有一个任务所以下标是0。每一个任务都有一个对应的下标。xTaskDelay(10);}}}//喂狗任务任务优先级1。voidtaskWatchDog(void*pv){//这个只是示例具体请参考看门狗超时时间的设置和手册。constuint32_ttimeOut1000;//uint32_ti0;while(1){//uint32_ttickxTaskGetTickCount();//loop全部任务除喂狗任务外。// 用临界区防止检查过程中被高优先级任务抢占更新心跳taskENTER_CRITICAL();// 或 vTaskSuspendAll() / xTaskResumeAll()for(i0;iN;i){if(tick-taskHeartBeat[i]timeOut)break;}taskEXIT_CRITICAL();//全部检查完没有一个任务出现超时或卡死。if(iN){//喂狗freeDog();}//如果i!N不喂狗。多次后自动触发硬件复位。//这个时间要比超时时间要小一般是超时时间的/2或/3。xTaskDelay(300);}}
RELATED

相关推荐

brackets-git 提交历史查看指南:版本回溯与文件历史一网打尽

brackets-git 提交历史查看指南:版本回溯与文件历史一网打尽

brackets-git 提交历史查看指南:版本回溯与文件历史一网打尽 【免费下载链接】brackets-git brackets-git — git extension for adobe/brackets 项目地址: https://gitcode.com/gh_mirrors/br/brackets-git 在 Brackets 编辑器中做前端开发,想快…

📅 2026/10/3 6:49:09
Windows 中文字体美化终极方案:PingFangSC 苹果平方字体免费安装与网页集成全攻略

Windows 中文字体美化终极方案:PingFangSC 苹果平方字体免费安装与网页集成全攻略

Windows 中文字体美化终极方案:PingFangSC 苹果平方字体免费安装与网页集成全攻略 【免费下载链接】PingFangSC PingFangSC字体包文件、苹果平方字体文件,包含ttf和woff2格式 项目地址: https://gitcode.com/gh_mirrors/pi/PingFangSC PingFangSC…

📅 2026/10/3 7:14:21
告别熬夜抢号,美国签证预约机器人 us-visa-bot 完整上手指南

告别熬夜抢号,美国签证预约机器人 us-visa-bot 完整上手指南

告别熬夜抢号,美国签证预约机器人 us-visa-bot 完整上手指南 【免费下载链接】us-visa-bot US Visa Bot 项目地址: https://gitcode.com/gh_mirrors/us/us-visa-bot 凌晨 1 点 47 分,阿杰第 6 次刷新签证预约页面,屏幕上依旧是那行刺眼…

📅 2026/10/3 7:34:30
MORE NEWS

更多资讯

📰

OPNET模型库与仿真例子:从op_models到可跑通工程实战

简介:这份资源是面向网络仿真初学者与进阶学习者的OPNET实例合集,围绕网络性能模拟与分析场景,帮助读者从基础模型逐步过渡到复杂网络配置,解决建模思路不清、协议实现无从下手的问题。压缩包共收录1454个文件,约19.85…

📰

AI编码代理上下文压缩后如何接续?10天430条记录实测long_mem与engram方案

1. 为什么“上下文压缩”是 AI 编码代理绕不过去的坎先抛一个我自己的真实感受:用 AI 编码代理写代码,最爽的是前二十分钟,最崩溃的是第四十分钟。前二十分钟它记得你所有的约定——变量命名风格、目录结构、哪个模块不能动、上次那个 bug 是…

📰

OpenShell使用指南:替换Windows开始菜单与系统增强配置

如果你最近在技术社区里刷到 OpenShell 这个词,第一反应大概率是:这又是什么新冒出来的开源终端工具?实际上,OpenShell 在 Windows 用户圈子里已经存在很多年,它的前身叫 Classic Shell,是国内很多老玩家折…

📰

分布式A2A架构实战:从单体Agent到多Agent协作的演进与落地

1. 从单体到分布式:Agent 基础架构为什么必须走这一步1.1 一个 Agent 扛不住的时候,问题出在哪我最早做 Agent 项目的时候,和大多数人一样,先跑通一个单体 Agent 就觉得很满足了。一个进程里塞进规划器、工具调用、记忆模块、模型…

📰

基于华为昇腾与Xing4.0-29B的私有化编程数学教学Agent实战

1. 为什么要在教育场景里折腾私有化大模型先说说我为什么会盯上这个方向。过去大半年,我一直在做编程和数学方向的 AI 辅助教学工具,最开始用的是公有云 API,图省事,接上就能跑。但真到了学校机房、培训机构内网、企业内训这些场景…

📰

自研数据标注工具实战:基于AiLabel.js实现目标检测数据集高效标注

做AI项目我从来不怕调模型,就怕整理数据。去年公司接了一套工业质检识别系统,客户给了我超过6000张设备外观照片,要求把每处缺陷在图上框出来、标上缺陷类别,最后整理成可以直接进训练脚本的数据集。最开始我们买了一个在线标注平…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬