RT-Thread RTOS 1.2.0
An open source embedded real-time operating system
载入中...
搜索中...
未找到
dev_watchdog.h
浏览该文件的文档.
1/*
2 * COPYRIGHT (C) 2011-2023, Real-Thread Information Technology Ltd
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 *
6 * Change Logs:
7 * Date Author Notes
8 * 2012-09-12 heyuanjie87 first version.
9 */
10
11#ifndef __DEV_WATCHDOG_H__
12#define __DEV_WATCHDOG_H__
13
14#include <rtthread.h>
15
16#define RT_DEVICE_CTRL_WDT_GET_TIMEOUT (RT_DEVICE_CTRL_BASE(WDT) + 1) /* get timeout(in seconds) */
17#define RT_DEVICE_CTRL_WDT_SET_TIMEOUT (RT_DEVICE_CTRL_BASE(WDT) + 2) /* set timeout(in seconds) */
18#define RT_DEVICE_CTRL_WDT_GET_TIMELEFT (RT_DEVICE_CTRL_BASE(WDT) + 3) /* get the left time before reboot(in seconds) */
19#define RT_DEVICE_CTRL_WDT_KEEPALIVE (RT_DEVICE_CTRL_BASE(WDT) + 4) /* refresh watchdog */
20#define RT_DEVICE_CTRL_WDT_START (RT_DEVICE_CTRL_BASE(WDT) + 5) /* start watchdog */
21#define RT_DEVICE_CTRL_WDT_STOP (RT_DEVICE_CTRL_BASE(WDT) + 6) /* stop watchdog */
22
23struct rt_watchdog_ops;
25{
27 const struct rt_watchdog_ops *ops;
28};
30
32{
34 rt_err_t (*control)(rt_watchdog_t *wdt, int cmd, void *arg);
35};
36
38 const char *name,
39 rt_uint32_t flag,
40 void *data);
41
42#endif /* __DEV_WATCHDOG_H__ */
struct rt_watchdog_device rt_watchdog_t
rt_err_t rt_hw_watchdog_register(rt_watchdog_t *wdt, const char *name, rt_uint32_t flag, void *data)
rt_base_t rt_err_t
unsigned int rt_uint32_t
struct rt_device parent
const struct rt_watchdog_ops * ops
rt_err_t(* init)(rt_watchdog_t *wdt)
rt_err_t(* control)(rt_watchdog_t *wdt, int cmd, void *arg)