S32 Design Studio PE工具配置Watch Dog

配置操作

在一个component下面可以创建多个看门狗,一般会有个限制,就是不能创建多个

看门狗比较简单,在configurations list里面新建软件看门狗,配置里面的名字、超时时间等配置即可。

代码对应

生成的代码在watchdog1.c和 watchdog1.h里面。

watchdog1是一个components,在watchdog1.h里面定义。

/*! @brief Device instance number */
#define INST_WATCHDOG1 0U

两个看门狗watchdog1_Config0和watchdog1_Config1在watchdog1.h里面声明,watchdog1.c里面定义。

/*! watchdog1 configuration structures */

const wdog_user_config_t watchdog1_Config0 = {
    .clkSource = WDOG_LPO_CLOCK,       /* WDOG clock source *///时钟源
    .opMode = {
        false,                         /* Wait Mode         *///等待模式
        false,                         /* Stop Mode         *///停止模式
        false                          /* Debug Mode        *///调试模式
    },
    .updateEnable = true,              /* Enable/Disable further updates of the WDOG configuration *///更新使能
    .intEnable = false,                /* Timeout interrupt disabled *///中断使能
    .winEnable = false,                /* Enable/Disable Window mode *///窗口模式
    .windowValue = 0U,                 /* Window value               *///窗口数值
    .timeoutValue = 3000U,             /* Timeout value              *///超时值
    .prescalerEnable = true            /* WDOG prescaler             *///分频使能
};

const wdog_user_config_t watchdog1_Config1 = {
    .clkSource = WDOG_BUS_CLOCK,       /* WDOG clock source */
    .opMode = {
        true,                          /* Wait Mode         */
        true,                          /* Stop Mode         */
        true                           /* Debug Mode        */
    },
    .updateEnable = true,              /* Enable/Disable further updates of the WDOG configuration */
    .intEnable = true,                 /* Timeout interrupt disabled */
    .winEnable = true,                 /* Enable/Disable Window mode */
    .windowValue = 0U,                 /* Window value               */
    .timeoutValue = 1000U,             /* Timeout value              */
    .prescalerEnable = true            /* WDOG prescaler             */
};

/* END watchdog1. */

一般配置成watchdog1_Config0那样就行,其他的基本用不到。

接口使用

WDOG_DRV_Init

初始化函数,每次只能初始化一个看门狗。譬如初始化watchdog1_Config0就调用WDOG_DRV_Init(INST_WATCHDOG1, &watchdog1_Config0);

/*FUNCTION**********************************************************************
 *
 * Function Name : WDOG_DRV_Init
 * Description   : initialize the WDOG driver
 *
 * Implements    : WDOG_DRV_Init_Activity
 *END**************************************************************************/
status_t WDOG_DRV_Init(uint32_t instance,
                       const wdog_user_config_t * userConfigPtr)
{
    DEV_ASSERT(instance < WDOG_INSTANCE_COUNT);
    DEV_ASSERT(userConfigPtr != NULL);
    WDOG_Type * base           = s_wdogBase[instance];
    status_t status            = STATUS_SUCCESS;
    status_t statusClockSource = STATUS_SUCCESS;

#ifdef DEV_ERROR_DETECT
    uint32_t prevClockHz, crtClockHz;

    /* Check if the previous clock source and the configuration clock source
     * are enabled(if not, the counter will not be incremented) */
    prevClockHz = WDOG_DRV_GetClockSourceFreq(WDOG_GetClockSource(s_wdogBase[instance]));
    crtClockHz  = WDOG_DRV_GetClockSourceFreq(userConfigPtr->clkSource);

    if ((prevClockHz == 0U) || (crtClockHz == 0U))
    {
        statusClockSource = STATUS_ERROR;
    }
#endif
    /* If clock source disabled */
    if (statusClockSource == STATUS_SUCCESS)
    {
        /* If window mode enabled and window value greater than or equal to the timeout value. Or timeout value is 0 */
        if (((userConfigPtr->winEnable) && (userConfigPtr->windowValue >= userConfigPtr->timeoutValue)) \
            || (userConfigPtr->timeoutValue <= FEATURE_WDOG_MINIMUM_TIMEOUT_VALUE))
        {
            status = STATUS_ERROR;
        }
        else
        {
            /* Configure the WDOG module */
            status = WDOG_Config(base, userConfigPtr);
        }

        if (status == STATUS_SUCCESS)
        {
            /* enable WDOG timeout interrupt */
            INT_SYS_EnableIRQ(s_wdogIrqId[instance]);
        }
    }
    else
    {
        status = STATUS_ERROR;
    }

    return status;
}

WDOG_DRV_Deinit

反初始化,但一反初始化就是一整个component的所有看门狗。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/396913.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

CV论文--2024.2.19

1、Self-Play Fine-Tuning of Diffusion Models for Text-to-Image Generation 中文标题&#xff1a;自我对弈微调扩散模型&#xff0c;用于文本到图像生成 简介&#xff1a;在生成人工智能&#xff08;GenAI&#xff09;领域&#xff0c;微调扩散模型仍然是一个未被充分探索的…

搭建本地git仓库 gogs本地大家 CentOS搭建本地git仓库 CentOS部署gogs

运行环境 操作系统:CentOS7.8 64位 使用mysql5.7.44数据库 选用依赖 yum install vim wget unzip -y本文选择使用WLNMP集成环境 第一步 配置epel源(必须) yum install epel-release第二步 添加wlnmp源 这里选择自动脚本 curl -fsSL "https://sh.wlnmp.com/wlnmp…

算法模板 7.拓扑排序

拓扑排序 用来解决循环依赖相关问题&#xff01;&#xff01;&#xff01; 一个有向无环图一定存在一个拓扑序列&#xff01;一定存在至少一个入度为0的点 有向无环图也被称作拓扑图 先把入度为0的点压入队列&#xff0c;然后进行广度优先搜索&#xff08;找到队头&#xf…

遥感影像数据处理分析软件与ChatGPT集成、多光谱数据分析与实践、高光谱数据分析与实践

目录 第一章 遥感科学与AI基础 第二章 遥感影像数据处理分析软件与ChatGPT集成 第三章 多光谱数据分析与实践专题 第四章 高光谱分析与实践专题 更多应用 将最新的人工智能技术与实际的遥感应用相结合&#xff0c;提供不仅是理论上的&#xff0c;而且是适用和可靠的工具和…

【天锐绿盾】| 数据防泄漏软件——防止公司核心文件数据\资料外泄、泄露!

数据防泄漏软件 数据防泄漏&#xff08;DLP&#xff09;软件是一种专门设计用于保护企业和组织内部敏感信息的网络安全工具。 PC端&#xff1a;https://isite.baidu.com/site/wjz012xr/2eae091d-1b97-4276-90bc-6757c5dfedee 它们通常包含以下核心功能&#xff1a; 文件加密…

2、windows环境下vscode开发c/c++环境配置(一)

前言&#xff1a;VSCode是微软出的一款轻量级编辑器&#xff0c;它本身只是一款文本编辑器而已&#xff0c;并不是一个集成开发环境(IDE)&#xff0c;几乎所有功能都是以插件扩展的形式所存在的。因此&#xff0c;我们想用它编程&#xff0c;不只是把vscode下载下来就行&#x…

C语言系列(所需基础:大学C语言及格)-3-字符串/ASCII码表

文章目录 一、字符串二、ASCII码表 一、字符串 用" "来定义字符串&#xff1a; #include <stdio.h>int main() {"";//空字符串"hkl";//由""定义的字符串return(0); }用数组来存储字符串&#xff0c;并打印&#xff1a; #incl…

深度学习系列——“试错”发展直觉

试错法以发展直觉&#xff1a;面对复杂的深度学习问题时&#xff0c;学习者可以通过不断尝试不同解决方案&#xff0c;并观察其对模型性能的影响&#xff0c;逐渐形成一套针对特定任务的有效策略。这些经验有助于提升对深度学习模型工作原理的直观理解。 那么试错法是如何发展直…

专修戴尔R730xd服务器闪电灯 心跳亮黄灯故障

2024年开年第二天接到一个用户反馈说他公司有一台DELL PowerEdge R730xd服务器春节前由于市电问题意外断电关机了&#xff0c;刚好碰上春节就没去开机了&#xff0c;今天工厂开工服务器通电发现开不了机&#xff0c;且机器过了一会后报了2个黄灯错误&#xff0c;如下图&#xf…

SpringCloud-基于Feign远程调用

Spring Cloud 是一个用于构建分布式系统的开发工具包&#xff0c;它提供了一系列的微服务组件&#xff0c;其中之一就是 Feign。Feign 是一种声明式的 Web 服务客户端&#xff0c;它简化了在 Spring Cloud 中进行远程调用的过程。本文将介绍如何在 Spring Cloud 中使用 Feign 进…

这里有几个0?

注意n最大取 #include<iostream> #define endl \n using namespace std; void solve(long long x) {int cnt 0, sum 0;while (x) {cnt x & 1;sum;x >> 1;}cout << sum-cnt << endl; } int main() {int t;long long n;cin >> t;while (t-…

【力扣白嫖日记】1890.2020年最后一次登录

前言 练习sql语句&#xff0c;所有题目来自于力扣&#xff08;https://leetcode.cn/problemset/database/&#xff09;的免费数据库练习题。 今日题目&#xff1a; 1890.2020年最后一次登录 表&#xff1a;Logins 列名类型user_idinttime_stampvarchar (user_id, time_sta…

智能计算: 最新进展、挑战和未来(九名院士、12位专家)

论文&#xff1a;Intelligent Computing: The Latest Advances, Challenges, and Future 论文地址&#xff1a;https://arxiv.org/abs/2211.11281 Abstract 计算是人类文明发展的一个重要推动力。近年来&#xff0c;我们见证了智能计算的出现&#xff0c;在大数据、人工智能和物…

【FastAPI】P3 请求与响应

目录 请求路径参数查询参数 响应JSON 响应文本响应返回 Pydantic 模型 在网络通讯中&#xff0c;请求&#xff08;Request&#xff09; 与 响应&#xff08;Response&#xff09; 扮演着至关重要的角色&#xff0c;它们构成了客户端与服务器间互动的根本理念。 请求&#xff0…

原创java开源项目发布maven全球中央仓库详细过程示范和遇到的问题解决办法

文章目录 java项目上传到maven全球中央仓库&#xff08;原创个人开源项目发布maven中央仓库详细过程示范&#xff09;需求背景第一步 注册sonatype账号第二步 登录sonatype账号并申请新建项目第三步 准备个人GPG数字签名并发布到ubuntu第四步 准备maven配置第五步 修改项目配置…

网络原理HTTP/HTTPS(2)

文章目录 HTTP响应状态码200 OK3xx 表示重定向4xx5xx状态码小结 HTTPSHTTPS的加密对称加密非对称加密 HTTP响应状态码 状态码表⽰访问⼀个⻚⾯的结果.(是访问成功,还是失败,还是其他的⼀些情况…).以下为常见的状态码. 200 OK 这是⼀个最常⻅的状态码,表⽰访问成功 2xx都表示…

hot100 -- 滑动窗口

目录 &#x1f33c;无重复字符 -- 最长子串 AC 滑动窗口&#xff08;桶&#xff09; &#x1f33c;所有字母异位词 AC 滑动窗口 桶 AC 滑动窗口&#xff08;优化&#xff09; &#x1f33c;无重复字符 -- 最长子串 一开始考虑用 BF暴力 或者 KMP 的&#xff0c;后来想…

安宝特AR汽车行业解决方案系列1-远程培训

在汽车行业中&#xff0c;AR技术的应用正悄然改变着整个产业链的运作方式&#xff0c;应用涵盖培训、汽修、汽车售后、PDI交付、质检以及汽车装配等&#xff0c;AR技术为多个环节都带来了前所未有的便利与效率提升。 安宝特AR将以系列推文的形式为读者逐一介绍在汽车行业中安宝…

【机器学习笔记】 15 机器学习项目流程

机器学习的一般步骤 数据清洗 数据清洗是指发现并纠正数据文件中可识别的错误的最后一道程序&#xff0c;包括检查数据一致性&#xff0c;处理无效值和缺失值等。与问卷审核不同&#xff0c;录入后的数据清理一般是由计算机而不是人工完成。 探索性数据分析(EDA 探索性数据…

PROBIS铂思金融破产后续:ASIC牌照已注销

2024年1月31日&#xff0c;PROBIS铂思金融的澳大利亚ASIC牌照 (AFSL 338241) 被注销《差价合约经纪商PROBIS宣布破产&#xff0c;澳大利亚金融服务牌照遭暂停》&#xff0c;这也就意味着&#xff0c;PROBIS铂思金融目前已经没有任何金融牌照。 值得注意的是&#xff0c;时至今日…