README_zh.md
1# NiobeU4开发板WATCHDOG使用说明文档
2本示例将演示如何在Niobeu4开发板上使用WATCHDOG接口进行任务看门狗开发
3
4## 接口说明
5
6### WatchdogOpen()
7
8```
9int32_t WatchdogOpen(int16_t wdtId, DevHandle *handle);
10```
11
12**描述:**
13
14watchdog Open打开看门狗函数。
15
16**参数:**
17
18| 名字 | 描述 |
19| :----- | :------- |
20| wdtId | 看门狗ID |
21| handle | 设备句柄 |
22
23### WatchdogClose()
24
25```
26void WatchdogClose(DevHandle handle);
27```
28
29**描述:**
30
31watchdog close关闭看门狗函数。
32
33**参数:**
34
35| 名字 | 描述 |
36| :----- | :------- |
37| handle | 设备句柄 |
38
39### WatchdogFeed()
40
41```
42int32_t WatchdogFeed(DevHandle handle);
43```
44
45**描述:**
46
47watchdog feed喂狗函数。
48
49**参数:**
50
51| 名字 | 描述 |
52| :----- | :------- |
53| handle | 设备句柄 |
54
55### WatchdogGetStatus()
56
57```
58int32_t WatchdogGetStatus(DevHandle handle, int32_t *status);
59```
60
61**描述:**
62
63watchdog getStatus获取看门狗状态函数。
64
65**参数:**
66
67| 名字 | 描述 |
68| :----- | :------------- |
69| handle | 设备句柄 |
70| status | 看门狗状态指针 |
71
72### WatchdogStart()
73
74```
75int32_t WatchdogStart(DevHandle handle);
76```
77
78**描述:**
79
80watchdog start启动看门狗函数。
81
82**参数:**
83
84| 名字 | 描述 |
85| :----- | :------- |
86| handle | 设备句柄 |
87
88### watchdogStop()
89
90```
91int32_t WatchdogStop(DevHandle handle);
92```
93
94**描述:**
95
96watchdog stop停止看门狗函数。
97
98**参数:**
99
100| 名字 | 描述 |
101| :----- | :------- |
102| handle | 设备句柄 |
103
104### WatchdogSetTimeout()
105
106```
107int32_t WatchdogSetTimeout(DevHandle handle, uint32_t seconds);
108```
109
110**描述:**
111
112watchdog setTimeout设置看门狗超时时间函数。
113
114**参数:**
115
116| 名字 | 描述 |
117| :------ | :------- |
118| handle | 设备句柄 |
119| seconds | 超时时间 |
120
121### WatchdogGetTimeout()
122
123```
124int32_t WatchdogGetTimeout(DevHandle handle, uint32_t *seconds);
125```
126
127**描述:**
128
129watchdog getTimeout获取看门狗超时时间函数。
130
131**参数:**
132
133| 名字 | 描述 |
134| :------ | :--------------------- |
135| handle | 设备句柄 |
136| seconds | 超时时间指针,单位为秒 |
137
138## 编译调试
139
140- 进入//kernel/liteos_m目录, 在menuconfig配置中进入如下选项:
141 `(Top) → Platform → Board Selection → select board niobeu4 → use openvalley niobeu4 application → niobeu4 application choose`
142- 选择 `104_hdf_watchdog`
143- 回到sdk根目录,执行`hb build`脚本进行编译。
144
145## hcs配置
146
147hcs配置文件在device/board/openvalley/niobeu4/liteos_m/hdf_config/hdf.hcs目录下,需要进行如下设置:
148
149```
150watchdog_config {
151 watchdog0_config {
152 match_attr = "watchdog0";
153 id = 0; // 看门狗ID
154 timeout = 1; // 看门狗超时时间,单位s
155 }
156 }
157```
158