1. 简介
本用户文档旨在提供 WDG 驱动的相关信息,包括功能、配置参数、API。
文档每一处提及的 Wdgx,x 为索引,有效范围为0、1、2。
本用户文档旨在提供 WDG 驱动的相关信息,包括功能、配置参数、API。
文档每一处提及的 Wdgx,x 为索引,有效范围为0、1、2、3、4。
2. 概览
2.1 文件列表
Lowlevel 接口
这些是 Watchdog 底层驱动的实现和内部公共接口文件,一般用户不需要直接关注:
- McalCdd\Wdg\inc\Wdg_Lld.h
- McalCdd\Wdg\src\Wdg_Lld.c
- McalCdd\Wdg\inc\Wdg_Prv.h
- McalCdd\Wdg\src\Wdg_Common.c
Highlevel 接口
这些是用于用户调用的 API 实现文件,每一个 Wdg 的 instance 需要一份独立代码文件:
- McalCdd\Wdg\src\Wdg0.c
- McalCdd\Wdg\src\Wdg1.c
- McalCdd\Wdg\src\Wdg2.c
- McalCdd\Wdg\inc\Wdg0.h
- McalCdd\Wdg\inc\Wdg1.h
- McalCdd\Wdg\inc\Wdg2.h
这些是用于用户调用的 API 实现文件,每一个 Wdg 的 instance 需要一份独立代码文件:
- McalCdd\Wdg\src\Wdg0.c
- McalCdd\Wdg\src\Wdg1.c
- McalCdd\Wdg\src\Wdg2.c
- McalCdd\Wdg\src\Wdg3.c
- McalCdd\Wdg\src\Wdg4.c
- McalCdd\Wdg\inc\Wdg0.h
- McalCdd\Wdg\inc\Wdg1.h
- McalCdd\Wdg\inc\Wdg2.h
- McalCdd\Wdg\inc\Wdg3.h
- McalCdd\Wdg\inc\Wdg4.h
3. 应用程序接口
3.1 类型
3.1.1 导入类型
| Module | Header File | Imported Type |
|---|
| Std_Types | Std_Types.h | Std_ReturnType |
| Std_Types | Std_Types.h | Std_VersionInfoType |
| Rte_Type | Rte_Type.h | Dem_EventIdType |
| Rte_Type | Rte_Type.h | Dem_EventStatusType |
| WdgIf | WdgIf_Types.h | WdgIf_ModeType |
3.1.2 类型定义
Wdg_ApiIdType
| Name | Wdg_ApiIdType | Analysis |
|---|
| Type | Enumeration | |
| Element | 0x00 WDG_INIT_API_ID | API Id of Wdg_Init |
| 0x01 WDG_SETMODE_API_ID | API Id of Wdg_SetMode |
| 0x02 WDG_SETTRIGGERCONDITION_API_ID | API Id of Wdg_SetTriggerCondition |
| 0x03 WDG_GETVERSION_API_ID | API Id of Wdg_GetVersionInfo |
| Description | WDG ApiId Enumeration | |
| Available via | Wdg_Prv.h | |
Wdg_ErrIdType
| Name | Wdg_ErrIdType | Analysis |
|---|
| Type | Enumeration | |
| Element | 0x10 WDG_E_DRIVER_STATE | Error ID of wrong driver state |
| 0x11 WDG_E_PARAM_MODE | Error ID of wrong mode |
| 0x12 WDG_E_PARAM_CONFIG | Error ID of wrong config |
| 0x13 WDG_E_PARAM_TIMEOUT | Error ID of wrong timeout |
| 0x14 WDG_E_PARAM_POINTER | Error ID of wrong pointer |
| 0x15 WDG_E_INIT_FAILED | Error ID of init failed |
| Description | WDG ErrId Enumeration | |
| Available via | Wdg_Prv.h | |
Wdg_StateType
| Name | Wdg_StateType |
|---|
| Type | Enumeration |
| Element | 0x01 WDG_UNINIT(The wdg’s state is uninitialized) |
| 0x02 WDG_IDLE(The wdg’s state is idle) |
| 0x03 WDG_BUSY(The wdg’s state is busy) |
| Description | WDG State Enumeration |
| Available via | Wdg_Prv.h |
Wdg_ModeType
| Name | Wdg_ModeType | Analysis |
|---|
| Type | Structure | |
| Element | uint32 Wdg_GptPeriod | Timeout period of GPT used by WDG |
| const Wdg_Lld_ConfigType * Wdg_Lld_ConfigPtr | Pointer to WDG Low-Level Driver Config |
| Description | WDG Mode Structure | |
| Available via | Wdg_Prv.h | |
Wdg_ConfigType
| Name | Wdg_ConfigType | Analysis |
|---|
| Type | Structure | |
| Element | Wdg_Lld_InstanceType Wdg_InstanceId | WDG’s instance id |
| WdgIf_ModeType Wdg_DefaultModeSetting | WDG’s default mode setting |
| const Wdg_ModeType Wdg_ModeSettings | WDG Specific mode settings |
| Gpt_ChannelType Wdg_GptChannel | Channel of GPT used by WDG |
| uint32 Wdg_GptFreq | Frequency of GPT used by WDG |
| Description | WDG Configuration Structure | |
| Available via | Wdg_Prv.h | |
3.2 函数定义