请求看门狗
您可以请求具有以下功能的看门狗:
函数 | 描述 |
---|---|
|
通过其绝对设备节点路径请求看门狗。 返回一个指针 |
一旦不再需要被请求的看门狗,就必须释放它。看到放出一只看门狗. |
此函数可能失败并返回零
原因如下:
提供的设备节点路径在系统上不可用。
API在分配内存初始化看门狗时遇到问题。您的系统可能已经耗尽了资源。2022世界杯G组
请求看门狗
[…]/*请求看门狗*/Wd_t wd = ldx_watchdog_request(“/ dev /监督”);printf (“已请求看门狗%s\ n”wd - >节点);[…]
读取并设置看门狗超时时间
您可以读取和设置看门狗定时器来配置不同的超时:
函数 | 描述 |
---|---|
|
获取看门狗超时时间。 如果函数遇到错误,则返回-1。 |
|
读取并设置看门狗值
[…]wd_t*wd = ...;inttimeout =10;intCurrent_timeout = -1;[…]/*读取看门狗超时时间*/Current_timeout = ldx_watchdog_get_timeout(wd);printf ("当前看门狗超时:%d", current_timeout);/*配置自定义超时时间*/ldx_watchdog_set_timeout (wd,超时);printf (看门狗超时设置为%d、超时);[…]
刷新看门狗超时
一旦请求,看门狗计时器开始计数,因此您必须在配置的超时过期之前刷新看门狗,以避免系统复位。要做到这一点,使用ldx_watchdog_refresh ()
函数。
intldx_watchdog_refresh (wd_t * wd)
刷新看门狗
[…]wd_t*wd = ...; [...]而(真正的){[…]/*刷新看门狗,防止看门狗复位*/ldx_watchdog_refresh (wd);}[…]
停止看门狗
如果看门狗可以在启用后停止(大多数驱动程序都无法退出),则可以使用ldx_watchdog_stop ()
函数来停止它。
intldx_watchdog_stop (wd_t * wd)
刷新看门狗
[…]wd_t*wd = ...; [...]/*不需要看门狗时停止看门狗*/ldx_watchdog_stop (wd);[…]
放出一只看门狗
当请求的看门狗不再需要时,您必须释放它。要做到这一点,使用ldx_watchdog_free ()
函数。
释放看门狗并不能阻止它。 |
intldx_watchdog_free (wd_t * wd)
释放请求的看门狗
[…]wd_t*wd = ...; [...]/*释放不需要的看门狗*/ldx_watchdog_free (wd);[…]
监管机构的例子
本例介绍如何在ConnectCore板上使能看门狗。一旦启用了看门狗,应用程序就会刷新看门狗定时器,直到测试时间用完。超时后,设备将自动重启。
要查看看门狗API的示例,请使用Digi Embedded Yocto插件在Eclipse中导入看门狗示例。有关更多信息,请参见创建一个新的DEY样例项目.这个例子包含在Digi Embedded Yocto中。去GitHub查看应用程序源代码。