HCIA-HarmonyOS设备开发认证V2.0-IOT硬件子系统-WatchDog

目录

一、 WATCHDOG 概述

功能简介

看门狗(Watchdog),又称看门狗计时器(Watchdog timer),是一种硬件计时设备。一般有一个输入、一个输出,输入叫做喂狗,输出连接到系统的复位端。当系统主程序发生错误导致未及时清除看门狗计时器的计时值时,看门狗计时器就会对系统发出复位信号,使系统从悬停状态恢复到正常运作状态。

基本概念

系统正常工作的时候,每隔一段时间输出一个信号到喂狗端,给看门狗清零,这个操作就叫做喂狗。如果超过规定的时间不喂狗,看门狗定时超时,就会给出一个复位信号到系统,使系统复位。

WATCHDOG 操作流程如下:

二、WATCHDOG 模块相关API

头文件路径:base/iothardware/peripheral/interfaces/inner_api/iot_watchdog.h

接口函数 描述
void IoTWatchDogEnable(void) 使能看门狗
void IoTWatchDogKick(void) 喂狗
void IoTWatchDogDisable(void) 关闭看门狗

三、WATCHDOG HDF驱动开发

在HDF框架中,Watchdog接口适配模式采用独立服务模式(如图1所示)。在这种模式下,每一个设备对象会独立发布一个设备服务来处理外部访问,设备管理器收到API的访问请求之后,通过提取该请求的参数,达到调用实际设备对象的相应内部方法的目的。独立服务模式可以直接借助HDF设备管理器的服务管理能力,但需要为每个设备单独配置设备节点,增加内存占用。

独立服务模式下,核心层不会统一发布一个服务供上层使用,因此这种模式下驱动要为每个控制器发布一个服务,具体表现为:

驱动适配者需要实现HdfDriverEntry的Bind钩子函数以绑定服务。

device_info.hcs文件中deviceNode的policy字段为1或2,不能为0。

Watchdog模块各分层作用:

接口层提供打开看门狗设备、获取看门狗设备状态、启动看门狗设备、设置看门狗设备超时时间、获取看门狗设备超时时间、喂狗、停止看门狗设备超时时间、关闭看门狗设备的接口。

核心层主要提供看门狗控制器的添加、移除以及管理的能力,通过钩子函数与适配层交互。

适配层主要是将钩子函数的功能实例化,实现具体的功能。

图 1 Watchdog独立服务模式结构图

3.1、开发步骤(待续...)

Watchdog模块适配包含以下四个步骤:

  • 实例化驱动入口
  • 配置属性文件
  • 实例化Watchdog控制器对象
  • 驱动调试

坚持就有收获

相关推荐
wszy18095 小时前
新文章标签:让用户一眼发现最新内容
java·python·harmonyos
wszy18095 小时前
顶部标题栏的设计与实现:让用户知道自己在哪
java·python·react native·harmonyos
Van_Moonlight5 小时前
RN for OpenHarmony 实战 TodoList 项目:空状态占位图
javascript·开源·harmonyos
anyup7 小时前
2026第一站:分享我在高德大赛现场学到的技术、产品与心得
前端·架构·harmonyos
anyup7 小时前
从赛场到产品:分享我在高德大赛现场学到的技术、产品与心得
前端·harmonyos·产品
jianqiang.xue8 小时前
Telink IoT Studio开发环境搭建+tc_ble_single_sdk说明
物联网·泰凌微·telink
Van_Moonlight9 小时前
RN for OpenHarmony 实战 TodoList 项目:顶部导航栏
javascript·开源·harmonyos
Swift社区9 小时前
H5 与 ArkTS 通信的完整设计模型
uni-app·harmonyos
TDengine (老段)9 小时前
TDengine Python 连接器入门指南
大数据·数据库·python·物联网·时序数据库·tdengine·涛思数据
程序猿追10 小时前
【鸿蒙PC桌面端实战】从零构建 ArkTS 高性能图像展示器:DevEco Studio 调试与 HDC 命令行验证全流程
华为·harmonyos