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 该驱动函数预览
| 序号 | 函数名 | 描述 |
|---|---|---|
| 1 | HAL_TIMEx_HallSensor_Init() | 初始化定时器霍尔传感器模式。 |
| 2 | HAL_TIMEx_HallSensor_DeInit() | 反初始化定时器霍尔传感器模式。 |
| 3 | HAL_TIMEx_HallSensor_MspInit() | 初始化定时器霍尔传感器模式相关的MCU外设引脚或资源。 |
| 4 | HAL_TIMEx_HallSensor_MspDeInit() | 反初始化定时器霍尔传感器模式相关的MCU外设引脚或资源。 |
| 5 | HAL_TIMEx_HallSensor_Start() | 启动定时器霍尔传感器模式。 |
| 6 | HAL_TIMEx_HallSensor_Stop() | 停止定时器霍尔传感器模式。 |
| 7 | HAL_TIMEx_HallSensor_Start_IT() | 启动定时器霍尔传感器模式中断。 |
| 8 | HAL_TIMEx_HallSensor_Stop_IT() | 停止定时器霍尔传感器模式中断。 |
| 9 | HAL_TIMEx_HallSensor_Start_DMA() | 启动定时器霍尔传感器模式DMA传输。 |
| 10 | HAL_TIMEx_HallSensor_Stop_DMA() | 停止定时器霍尔传感器模式DMA传输。 |
| 11 | HAL_TIMEx_OCN_Start() | 启动定时器OCN功能。 |
| 12 | HAL_TIMEx_OCN_Stop() | 停止定时器OCN功能。 |
| 13 | HAL_TIMEx_OCN_Start_IT() | 启动定时器OCN功能中断。 |
| 14 | HAL_TIMEx_OCN_Stop_IT() | 停止定时器OCN功能中断。 |
| 15 | HAL_TIMEx_OCN_Start_DMA() | 启动定时器OCN功能DMA传输。 |
| 16 | HAL_TIMEx_OCN_Stop_DMA() | 停止定时器OCN功能DMA传输。 |
| 17 | HAL_TIMEx_PWMN_Start() | 启动定时器PWMN功能。 |
| 18 | HAL_TIMEx_PWMN_Stop() | 停止定时器PWMN功能。 |
| 19 | HAL_TIMEx_PWMN_Start_IT() | 启动定时器PWMN功能中断。 |
| 20 | HAL_TIMEx_PWMN_Stop_IT() | 停止定时器PWMN功能中断。 |
| 21 | HAL_TIMEx_PWMN_Start_DMA() | 启动定时器PWMN功能DMA传输。 |
| 22 | HAL_TIMEx_PWMN_Stop_DMA() | 停止定时器PWMN功能DMA传输。 |
| 23 | HAL_TIMEx_OnePulseN_Start() | 启动定时器单脉冲N功能。 |
| 24 | HAL_TIMEx_OnePulseN_Stop() | 停止定时器单脉冲N功能。 |
| 25 | HAL_TIMEx_OnePulseN_Start_IT() | 启动定时器单脉冲N功能中断。 |
| 26 | HAL_TIMEx_OnePulseN_Stop_IT() | 停止定时器单脉冲N功能中断。 |
| 27 | HAL_TIMEx_ConfigCommutationEvent() | 配置定时器换相事件。 |
| 28 | HAL_TIMEx_ConfigCommutationEvent_IT() | 配置定时器换相事件并启用中断。 |
| 29 | HAL_TIMEx_ConfigCommutationEvent_DMA() | 配置定时器换相事件DMA传输。 |
| 30 | HAL_TIMEx_ConfigBreakDeadTime() | 配置定时器死区和断路器。 |
| 31 | HAL_TIMEx_MasterConfigSynchronization() | 配置定时器主模式同步。 |
| 32 | HAL_TIMEx_CommutationCallback() | 定时器换相回调函数。 |
| 33 | HAL_TIMEx_BreakCallback() | 定时器断路器回调函数。 |
| 34 | TIMEx_DMACommutationCplt() | 定时器换相DMA传输完成回调函数。 |
| 35 | HAL_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的特点 灵活性:…...
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,挺有愛的小漫画,适合用来看图说话锻炼小语言,我看的很快乐也写得很痛快…...
使用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设备所属的防火墙安全区域。它可以设置为一个字符串值,通常是一个自定义的区域名称。 防火墙安全区域是一种网络隔离和安全策略的概念,它可以将网络划分为不同的区域࿰…...
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.…...
突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合
强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...
DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径
目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...
微信小程序云开发平台MySQL的连接方式
注:微信小程序云开发平台指的是腾讯云开发 先给结论:微信小程序云开发平台的MySQL,无法通过获取数据库连接信息的方式进行连接,连接只能通过云开发的SDK连接,具体要参考官方文档: 为什么? 因为…...
[Java恶补day16] 238.除自身以外数组的乘积
给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O(n) 时间复杂度…...
【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)
1.获取 authorizationCode: 2.利用 authorizationCode 获取 accessToken:文档中心 3.获取手机:文档中心 4.获取昵称头像:文档中心 首先创建 request 若要获取手机号,scope必填 phone,permissions 必填 …...
Java线上CPU飙高问题排查全指南
一、引言 在Java应用的线上运行环境中,CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时,通常会导致应用响应缓慢,甚至服务不可用,严重影响用户体验和业务运行。因此,掌握一套科学有效的CPU飙高问题排查方法&…...
LeetCode - 199. 二叉树的右视图
题目 199. 二叉树的右视图 - 力扣(LeetCode) 思路 右视图是指从树的右侧看,对于每一层,只能看到该层最右边的节点。实现思路是: 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...
JavaScript 数据类型详解
JavaScript 数据类型详解 JavaScript 数据类型分为 原始类型(Primitive) 和 对象类型(Object) 两大类,共 8 种(ES11): 一、原始类型(7种) 1. undefined 定…...
根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的----NTFS源代码分析--重要
根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的 第一部分: 0: kd> g Breakpoint 9 hit Ntfs!ReadIndexBuffer: f7173886 55 push ebp 0: kd> kc # 00 Ntfs!ReadIndexBuffer 01 Ntfs!FindFirstIndexEntry 02 Ntfs!NtfsUpda…...
