当前位置: 首页 > news >正文

A59 STM32_HAL库函数 之 TIM扩展驱动 -- A -- 所有函数的介绍及使用

A59 STM32_HAL库函数 之 TIM扩展驱动 -- A -- 所有函数的介绍及使用

  • 1 该驱动函数预览
    • 1.1 HAL_TIMEx_HallSensor_Init
    • 1.2 HAL_TIMEx_HallSensor_DeInit
    • 1.3 HAL_TIMEx_HallSensor_MspInit
    • 1.4 HAL_TIMEx_HallSensor_MspDeInit
    • 1.5 HAL_TIMEx_HallSensor_Start
    • 1.6 HAL_TIMEx_HallSensor_Stop
    • 1.7 HAL_TIMEx_HallSensor_Start_IT
    • 1.8 HAL_TIMEx_HallSensor_Stop_IT
    • 1.9 HAL_TIMEx_HallSensor_Start_DMA
    • 1.10 HAL_TIMEx_HallSensor_Stop_DMA
    • 1.11 HAL_TIMEx_OCN_Start
  • 该文档修改记录:
  • 总结

1 该驱动函数预览

序号函数名描述
1HAL_TIMEx_HallSensor_Init()初始化定时器霍尔传感器模式。
2HAL_TIMEx_HallSensor_DeInit()反初始化定时器霍尔传感器模式。
3HAL_TIMEx_HallSensor_MspInit()初始化定时器霍尔传感器模式相关的MCU外设引脚或资源。
4HAL_TIMEx_HallSensor_MspDeInit()反初始化定时器霍尔传感器模式相关的MCU外设引脚或资源。
5HAL_TIMEx_HallSensor_Start()启动定时器霍尔传感器模式。
6HAL_TIMEx_HallSensor_Stop()停止定时器霍尔传感器模式。
7HAL_TIMEx_HallSensor_Start_IT()启动定时器霍尔传感器模式中断。
8HAL_TIMEx_HallSensor_Stop_IT()停止定时器霍尔传感器模式中断。
9HAL_TIMEx_HallSensor_Start_DMA()启动定时器霍尔传感器模式DMA传输。
10HAL_TIMEx_HallSensor_Stop_DMA()停止定时器霍尔传感器模式DMA传输。
11HAL_TIMEx_OCN_Start()启动定时器OCN功能。
12HAL_TIMEx_OCN_Stop()停止定时器OCN功能。
13HAL_TIMEx_OCN_Start_IT()启动定时器OCN功能中断。
14HAL_TIMEx_OCN_Stop_IT()停止定时器OCN功能中断。
15HAL_TIMEx_OCN_Start_DMA()启动定时器OCN功能DMA传输。
16HAL_TIMEx_OCN_Stop_DMA()停止定时器OCN功能DMA传输。
17HAL_TIMEx_PWMN_Start()启动定时器PWMN功能。
18HAL_TIMEx_PWMN_Stop()停止定时器PWMN功能。
19HAL_TIMEx_PWMN_Start_IT()启动定时器PWMN功能中断。
20HAL_TIMEx_PWMN_Stop_IT()停止定时器PWMN功能中断。
21HAL_TIMEx_PWMN_Start_DMA()启动定时器PWMN功能DMA传输。
22HAL_TIMEx_PWMN_Stop_DMA()停止定时器PWMN功能DMA传输。
23HAL_TIMEx_OnePulseN_Start()启动定时器单脉冲N功能。
24HAL_TIMEx_OnePulseN_Stop()停止定时器单脉冲N功能。
25HAL_TIMEx_OnePulseN_Start_IT()启动定时器单脉冲N功能中断。
26HAL_TIMEx_OnePulseN_Stop_IT()停止定时器单脉冲N功能中断。
27HAL_TIMEx_ConfigCommutationEvent()配置定时器换相事件。
28HAL_TIMEx_ConfigCommutationEvent_IT()配置定时器换相事件并启用中断。
29HAL_TIMEx_ConfigCommutationEvent_DMA()配置定时器换相事件DMA传输。
30HAL_TIMEx_ConfigBreakDeadTime()配置定时器死区和断路器。
31HAL_TIMEx_MasterConfigSynchronization()配置定时器主模式同步。
32HAL_TIMEx_CommutationCallback()定时器换相回调函数。
33HAL_TIMEx_BreakCallback()定时器断路器回调函数。
34TIMEx_DMACommutationCplt()定时器换相DMA传输完成回调函数。
35HAL_TIMEx_HallSensor_GetState()获取定时器霍尔传感器模式状态。

1.1 HAL_TIMEx_HallSensor_Init

函数名HAL_TIMEx_HallSensor_Init
函数原形HAL_StatusTypeDef HAL_TIMEx_HallSensor_Init(TIM_HandleTypeDef *htim, TIM_HallSensor_InitTypeDef *sConfig)
功能描述初始化TIM外部霍尔传感器模式
输入参数htim:TIM句柄结构体指针
sConfig:TIM外部霍尔传感器配置结构体指针
输出参数
返回值HAL_StatusTypeDef:初始化状态
先决条件
被调用函数
案例```c
TIM_HandleTypeDef htim;
TIM_HallSensor_InitTypeDef sConfig;
HAL_TIMEx_HallSensor_Init(&htim, &sConfig);
```

1.2 HAL_TIMEx_HallSensor_DeInit

函数名HAL_TIMEx_HallSensor_DeInit
函数原形HAL_StatusTypeDef HAL_TIMEx_HallSensor_DeInit(TIM_HandleTypeDef *htim)
功能描述反初始化TIM外部霍尔传感器模式
输入参数htim:TIM句柄结构体指针
输出参数
返回值HAL_StatusTypeDef:反初始化状态
先决条件
被调用函数
案例```c
TIM_HandleTypeDef htim;
HAL_TIMEx_HallSensor_DeInit(&htim);
```

1.3 HAL_TIMEx_HallSensor_MspInit

函数名HAL_TIMEx_HallSensor_MspInit
函数原形void HAL_TIMEx_HallSensor_MspInit(TIM_HandleTypeDef *htim)
功能描述初始化TIM外部霍尔传感器模式的底层外设依赖
输入参数htim:TIM句柄结构体指针
输出参数
返回值
先决条件
被调用函数
案例```c
TIM_HandleTypeDef htim;
HAL_TIMEx_HallSensor_MspInit(&htim);
```

1.4 HAL_TIMEx_HallSensor_MspDeInit

函数名HAL_TIMEx_HallSensor_MspDeInit
函数原形void HAL_TIMEx_HallSensor_MspDeInit(TIM_HandleTypeDef *htim)
功能描述反初始化TIM外部霍尔传感器模式的底层外设依赖
输入参数htim:TIM句柄结构体指针
输出参数
返回值
先决条件
被调用函数
案例```c
TIM_HandleTypeDef htim;
HAL_TIMEx_HallSensor_MspDeInit(&htim);
```

1.5 HAL_TIMEx_HallSensor_Start

函数名HAL_TIMEx_HallSensor_Start
函数原形HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start(TIM_HandleTypeDef *htim)
功能描述启动TIM外部霍尔传感器模式
输入参数htim:TIM句柄结构体指针
输出参数
返回值HAL_StatusTypeDef:启动状态
先决条件
被调用函数
案例```c
TIM_HandleTypeDef htim;
HAL_TIMEx_HallSensor_Start(&htim);
```

1.6 HAL_TIMEx_HallSensor_Stop

函数名HAL_TIMEx_HallSensor_Stop
函数原形HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop(TIM_HandleTypeDef *htim)
功能描述

停止TIM外部霍尔传感器模式 |
| 输入参数 | htim:TIM句柄结构体指针 |
| 输出参数 | 无 |
| 返回值 | HAL_StatusTypeDef:停止状态 |
| 先决条件 | 无 |
| 被调用函数 | 无 |
| 案例 | c | | | TIM_HandleTypeDef htim; | | | HAL_TIMEx_HallSensor_Stop(&htim); | | |


1.7 HAL_TIMEx_HallSensor_Start_IT

函数名HAL_TIMEx_HallSensor_Start_IT
函数原形HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_IT(TIM_HandleTypeDef *htim)
功能描述以中断方式启动TIM外部霍尔传感器模式
输入参数htim:TIM句柄结构体指针
输出参数
返回值HAL_StatusTypeDef:启动状态
先决条件
被调用函数
案例```c
TIM_HandleTypeDef htim;
HAL_TIMEx_HallSensor_Start_IT(&htim);
```

1.8 HAL_TIMEx_HallSensor_Stop_IT

函数名HAL_TIMEx_HallSensor_Stop_IT
函数原形HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_IT(TIM_HandleTypeDef *htim)
功能描述以中断方式停止TIM外部霍尔传感器模式
输入参数htim:TIM句柄结构体指针
输出参数
返回值HAL_StatusTypeDef:停止状态
先决条件
被调用函数
案例```c
TIM_HandleTypeDef htim;
HAL_TIMEx_HallSensor_Stop_IT(&htim);
```

1.9 HAL_TIMEx_HallSensor_Start_DMA

函数名HAL_TIMEx_HallSensor_Start_DMA
函数原形HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_DMA(TIM_HandleTypeDef *htim, uint32_t *pData, uint16_t Length)
功能描述以DMA方式启动TIM外部霍尔传感器模式
输入参数htim:TIM句柄结构体指针
pData:数据缓冲区指针
Length:数据长度
输出参数
返回值HAL_StatusTypeDef:启动状态
先决条件
被调用函数
案例```c
TIM_HandleTypeDef htim;
uint32_t pData[10];
HAL_TIMEx_HallSensor_Start_DMA(&htim, pData, 10);
```

1.10 HAL_TIMEx_HallSensor_Stop_DMA

函数名HAL_TIMEx_HallSensor_Stop_DMA
函数原形HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_DMA(TIM_HandleTypeDef *htim)
功能描述以DMA方式停止TIM外部霍尔传感器模式
输入参数htim:TIM句柄结构体指针
输出参数
返回值HAL_StatusTypeDef:停止状态
先决条件
被调用函数
案例```c
TIM_HandleTypeDef htim;
HAL_TIMEx_HallSensor_Stop_DMA(&htim);
```

1.11 HAL_TIMEx_OCN_Start

函数名HAL_TIMEx_OCN_Start
函数原形HAL_StatusTypeDef HAL_TIMEx_OCN_Start(TIM_HandleTypeDef *htim, uint32_t Channel)
功能描述启动TIM通道的输出比较通知模式
输入参数htim:TIM句柄结构体指针
Channel:通道编号
输出参数
返回值HAL_StatusTypeDef:启动状态
先决条件
被调用函数
案例```c
TIM_HandleTypeDef htim;
HAL_TIMEx_OCN_Start(&htim, TIM_CHANNEL_1);
```

该文档修改记录:

修改时间修改说明
2024年4月30日第一次发布,介绍了该博客驱动所有函数的介绍及使用

总结

以上就是该博客驱动所有函数的介绍及使用的内容。
有不明白的地方欢迎留言;有建议欢迎留言,我后面编写文档好改进。
创作不容,如果文档对您有帮助,记得给个赞。

相关文章:

A59 STM32_HAL库函数 之 TIM扩展驱动 -- A -- 所有函数的介绍及使用

A59 STM32_HAL库函数 之 TIM扩展驱动 -- A -- 所有函数的介绍及使用 1 该驱动函数预览1.1 HAL_TIMEx_HallSensor_Init1.2 HAL_TIMEx_HallSensor_DeInit1.3 HAL_TIMEx_HallSensor_MspInit1.4 HAL_TIMEx_HallSensor_MspDeInit1.5 HAL_TIMEx_HallSensor_Start1.6 HAL_TIMEx_HallSe…...

【Unity】UGUI的基本介绍

Unity的UGUI(Unity User Interface)是Unity引擎内自带的UI系统,官方称之为UnityUI,是目前Unity商业游戏开发中使用最广泛的UI系统开发解决方案。以下是关于Unity的UGUI的详细介绍: 一、UGUI的特点 灵活性&#xff1a…...

MySQL 9.0新特性:向量存储

MySQL 9.0 正式版已经发布,其中一个亮点就是向量(VECTOR)数据类型的支持,本文给大家详细介绍一下这个新功能。 向量类型 MySQL 9.0 增加了一个新的向量数据类型:VECTOR。它是一种可以存储 N 个数据项的数据结构&…...

ruoyi实用性改造--(四)选择数据源及非标准使用数据库

一、实用型数据直接访问/** 使用Druid中 application-druid.yml 中定义的副数据源Connection con=null; //手工调用Druid的配置访问Connection con2=null;try {//DruidDataSource ds = SpringUtils.getBean("masterDataSource");DruidDataSource ds = Spring…...

HMI 的 UI 风格创造奇迹

HMI 的 UI 风格创造奇迹...

如何安全隐藏IP地址,防止网络攻击?

当您想在互联网上保持隐私或匿名时,您应该做的第一件事就是隐藏您的 IP 地址。您的 IP 地址很容易被追踪到您,并被用来了解您的位置。下面的文章将教您如何隐藏自己,不让任何试图跟踪您的活动的人发现。 什么是 IP 地址? 首先&am…...

Windows10/11家庭版开启Hyper-V虚拟机功能详解

Hyper-V是微软的一款虚拟机软件,可以使我们在一台Windows PC上,在虚拟环境下同时运行多个互相之间完全隔离的操作系统,这就实现了在Windows环境下运行Linux以及其他OS的可能性。和第三方虚拟机软件,如VMware等相比,Hyp…...

202487读书笔记|《我有个拥抱,你要不要》——生活从来如此,你的态度赋予它意义

202487读书笔记|《我有个拥抱,你要不要》——生活从来如此,你的态度赋予它意义 《我有个拥抱,你要不要》作者一天到晚气fufu,挺有愛的小漫画,适合用来看图说话锻炼小语言,我看的很快乐也写得很痛快&#xf…...

使用tcpdump抓取本本机的所有icmp包

1、抓取本机所有icmp包 tcpdump -i any icmp -vv 图中上半部分,是源主机tmp179无法ping通目标主机192.168.10.79(因为把该主机关机了)的状态,注意看,其中有unreachable 图中下半部分,是源主机tmp179可以p…...

Nginx:负载均衡小专题

运维专题 Nginx:负载均衡小专题 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite:http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress of this article:https://blog.csdn.net/…...

新增多种图表类型,新增插件管理模块,DataEase开源数据可视化分析工具v2.8.0发布

2024年7月8日,人人可用的开源数据可视化分析工具DataEase正式发布v2.8.0版本。 这一版本的功能变动包括:图表方面,新增组合图、热力地图、符号地图、K线图等图表类型,并对已有的仪表盘、明细表、指标卡、富文本等图表类型进行了功…...

android perfetto使用技巧梳理

1 抓取方法 根据不同的配置参数,会显示不同的功能。 比如有的trace文件就无法显示线程状态信息,有的无法显示锁依赖信息等等,要看你的参数,我这个是很全的,基本够了,如果还想添加,可以命令行看…...

bond网络配置文件中zone

在bond网络配置文件中,zone是一个参数,用于指定bond设备所属的防火墙安全区域。它可以设置为一个字符串值,通常是一个自定义的区域名称。 防火墙安全区域是一种网络隔离和安全策略的概念,它可以将网络划分为不同的区域&#xff0…...

spring事务详解

事务管理方式 在Spring中,事务有两种实现方式,分别是编程式事务管理和声明式事务管理两种方式。 编程式事务管理: 编程式事务管理使用TransactionTemplate或者直接使用底层的PlatformTransactionManager。对于编程式事务管理,sp…...

LIMS系统的核心功能有哪些

LIMS实验室管理系统,是一种利用信息化技术管理和优化实验室工作流程的系统。其核心功能主要包括以下几个方面: 一、样品管理 样品登记与追踪:LIMS系统能够对实验室内的所有样品进行统一管理,包括样品的接收、登记、分类、追踪和管…...

jenkins在使用pipeline时,为何没有方块形视图

项目场景: 安装完Jenkins时后,通过pipeline创建的项目任务。 问题描述 在立即构建后,没有显示每个阶段的视图。 原因分析: 原因是,刚安装的Jenkins,这个视图不是Jenkins自带的功能,而必须安装…...

Desktop docker 部署 WordPress

Desktop Docker 部署 WordPress 之前都是在Linux里面玩的,今天看到别人在windwos下安装docker,一时兴起装了一个试试,效果一般,很吃硬盘空间和内存。 首先在docker官方下载桌面版,安装下一步一直到完成。 安装完docke…...

简单的找到自己需要的flutter ui 模板

简单的找到自己需要的flutter ui 模板 网站 https://flutterawesome.com/ 简介 我原本以为会很难用 实际上不错 很简单 打开后界面类似于,右上角可以搜索 点击view github 相当简单 很oks...

SpringBoot实现多数据源切换

1. 概述 仓库地址:https://gitee.com/aopmin/multi-datasource-demo 随着项目规模的扩大和业务需求的复杂化,单一数据源已经不能满足实际开发中的需求。在许多情况下,我们需要同时操作多个数据库,或者需要将不同类型的数据存储在不…...

VUE + 小程序 关于前端循环上传附件页面卡死的问题

最开始我使用for循环,后端能正常保存,但是前端页面卡死了,开始代码是这么写的 wx.showLoading({title: 文件上传中...,mask: true // 是否显示透明蒙层,防止触摸穿透,默认:false});const {fileList} that.…...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...

【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15

缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下: struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...

高等数学(下)题型笔记(八)空间解析几何与向量代数

目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...

前端开发面试题总结-JavaScript篇(一)

文章目录 JavaScript高频问答一、作用域与闭包1.什么是闭包(Closure)?闭包有什么应用场景和潜在问题?2.解释 JavaScript 的作用域链(Scope Chain) 二、原型与继承3.原型链是什么?如何实现继承&a…...

【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具

第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...

html css js网页制作成品——HTML+CSS榴莲商城网页设计(4页)附源码

目录 一、👨‍🎓网站题目 二、✍️网站描述 三、📚网站介绍 四、🌐网站效果 五、🪓 代码实现 🧱HTML 六、🥇 如何让学习不再盲目 七、🎁更多干货 一、👨‍&#x1f…...

短视频矩阵系统文案创作功能开发实践,定制化开发

在短视频行业迅猛发展的当下,企业和个人创作者为了扩大影响力、提升传播效果,纷纷采用短视频矩阵运营策略,同时管理多个平台、多个账号的内容发布。然而,频繁的文案创作需求让运营者疲于应对,如何高效产出高质量文案成…...

如何更改默认 Crontab 编辑器 ?

在 Linux 领域中,crontab 是您可能经常遇到的一个术语。这个实用程序在类 unix 操作系统上可用,用于调度在预定义时间和间隔自动执行的任务。这对管理员和高级用户非常有益,允许他们自动执行各种系统任务。 编辑 Crontab 文件通常使用文本编…...

C#学习第29天:表达式树(Expression Trees)

目录 什么是表达式树? 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持: 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...

LRU 缓存机制详解与实现(Java版) + 力扣解决

📌 LRU 缓存机制详解与实现(Java版) 一、📖 问题背景 在日常开发中,我们经常会使用 缓存(Cache) 来提升性能。但由于内存有限,缓存不可能无限增长,于是需要策略决定&am…...