K230 CanMV WDT API手册#

cover

版权所有©2023北京嘉楠捷思信息技术有限公司

免责声明#

您购买的产品、服务或特性等应受北京嘉楠捷思信息技术有限公司(“本公司”,下同)及其关联公司的商业合同和条款的约束,本文档中描述的全部或部分产品、服务或特性可能不在您的购买或使用范围之内。除非合同另有约定,本公司不对本文档的任何陈述、信息、内容的正确性、可靠性、完整性、适销性、符合特定目的和不侵权提供任何明示或默示的声明或保证。除非另有约定,本文档仅作为使用指导参考。

由于产品版本升级或其他原因,本文档内容将可能在未经任何通知的情况下,不定期进行更新或修改。

商标声明#

logo、“嘉楠”和其他嘉楠商标均为北京嘉楠捷思信息技术有限公司及其关联公司的商标。本文档可能提及的其他所有商标或注册商标,由各自的所有人拥有。

版权所有 © 2023北京嘉楠捷思信息技术有限公司。保留一切权利。 非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传播。

目录#

[TOC]

前言#

概述#

本文档主要介绍 CanMV 项目中的WDT看门狗模块,用于在应用程序崩溃且最终进入不可恢复状态时重启系统。一旦开始,当硬件运行期间没有定期进行喂狗(feed)就会在超时后自动复位。

读者对象#

本文档(本指南)主要适用于以下人员:

  • 技术支持工程师

  • 软件开发工程师

缩略词定义#

简称

说明

WDT

watch dog

修订记录#

文档版本号

修改说明

修改者

日期

V1.0

初版

史文涛

2023-09-19

1. 概述#

WDT提供了喂狗和停止当前看门狗两个功能

2. API描述#

WDT提供了一个类 WDT,实现了两个函数,喂狗feed()和停止当前看门狗对象stop()

2.1 类 machine.WDT#

【描述】

通过指定的参数新建一个 WDT 对象。

【语法】

from machine import WDT
wdt1 = WDT(1,4)

【参数】

参数名称

描述

输入/输出

id

这个看门狗对象必须初始化时必须指定 ID, 用于区分使用的看门狗。

输入

timeout

看门狗超时时间,单位为秒(s)。

输入

【返回值】

返回值

描述

0

成功

非 0

失败

【注意】

【举例】

【相关主题】

2.1.1 喂狗 feed()#

【描述】

喂狗,以防止其重置系统。

【语法】

wdt0.feed()

【参数】

参数名称

描述

输入/输出

data

输入二进制数据

输入

【返回值】

返回值

描述

0

成功

非 0

失败

【注意】

【举例】

【相关主题】

2.1.2 停止当前看门狗对象 stop()#

【描述】

停止当前看门狗对象

【语法】

wdt0.stop()

【参数】

【返回值】

返回值

描述

0

成功

非 0

失败

【注意】

【举例】

【相关主题】

3. 例程#

import time
from machine import WDT

## '''
## test default wdt
wdt1 = WDT(1,3)
print('into', wdt0)
time.sleep(2)
print(time.ticks_ms())
## 1.test wdt feed
wdt1.feed()
time.sleep(2)
print(time.ticks_ms())
## 2.test wdt stop
wdt1.stop()