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

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

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

  • 1 该驱动函数预览
    • 1.24 HAL_TIMEx_OnePulseN_Stop
    • 1.25 HAL_TIMEx_OnePulseN_Start_IT
    • 1.26 HAL_TIMEx_OnePulseN_Stop_IT
    • 1.27 HAL_TIMEx_ConfigCommutationEvent
    • 1.28 HAL_TIMEx_ConfigCommutationEvent_IT
    • 1.29 HAL_TIMEx_ConfigCommutationEvent_DMA
    • 1.30 HAL_TIMEx_ConfigBreakDeadTime
    • 1.31 HAL_TIMEx_MasterConfigSynchronization
    • 1.32 HAL_TIMEx_CommutationCallback
    • 1.33 HAL_TIMEx_BreakCallback
    • 1.34 TIMEx_DMACommutationCplt
    • 1.35 HAL_TIMEx_HallSensor_GetState
  • 该文档修改记录:
  • 总结

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.24 HAL_TIMEx_OnePulseN_Stop

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

1.25 HAL_TIMEx_OnePulseN_Start_IT

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

1.26 HAL_TIMEx_OnePulseN_Stop_IT

函数名HAL_TIMEx_OnePulseN_Stop_IT
函数原形HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel)
功能描述以中断方式停止TIM通道的单脉冲模式
输入参数htim:TIM句柄结构体指针
Channel:通道编号
输出参数
返回值HAL_StatusTypeDef:停止状态
先决条件
被调用函数
案例```c
TIM_HandleTypeDef htim;
HAL_TIMEx_OnePulseN_Stop_IT(&htim, TIM_CHANNEL_1);
```

|


1.27 HAL_TIMEx_ConfigCommutationEvent

函数名HAL_TIMEx_ConfigCommutationEvent
函数原形HAL_StatusTypeDef HAL_TIMEx_ConfigCommutationEvent(TIM_HandleTypeDef *htim, uint32_t CommutationSource, uint32_t CommutationPolarity)
功能描述配置TIM的换向事件
输入参数htim:TIM句柄结构体指针
CommutationSource:换向源
CommutationPolarity:换向极性
输出参数
返回值HAL_StatusTypeDef:配置状态
先决条件
被调用函数
案例```c
TIM_HandleTypeDef htim;
HAL_TIMEx_ConfigCommutationEvent(&htim, TIM_TS_ETRF);
```

1.28 HAL_TIMEx_ConfigCommutationEvent_IT

函数名HAL_TIMEx_ConfigCommutationEvent_IT
函数原形HAL_StatusTypeDef HAL_TIMEx_ConfigCommutationEvent_IT(TIM_HandleTypeDef *htim, uint32_t CommutationSource, uint32_t CommutationPolarity)
功能描述配置TIM的换向事件,并以中断方式触发
输入参数htim:TIM句柄结构体指针
CommutationSource:换向源
CommutationPolarity:换向极性
输出参数
返回值HAL_StatusTypeDef:配置状态
先决条件
被调用函数
案例```c
TIM_HandleTypeDef htim;
HAL_TIMEx_ConfigCommutationEvent_IT(&htim, TIM_TS_ETRF);
```

1.29 HAL_TIMEx_ConfigCommutationEvent_DMA

函数名HAL_TIMEx_ConfigCommutationEvent_DMA
函数原形HAL_StatusTypeDef HAL_TIMEx_ConfigCommutationEvent_DMA(TIM_HandleTypeDef *htim, uint32_t CommutationSource, uint32_t CommutationPolarity)
功能描述配置TIM的换向事件,并以DMA方式触发
输入参数htim:TIM句柄结构体指针
CommutationSource:换向源
CommutationPolarity:换向极性
输出参数
返回值HAL_StatusTypeDef:配置状态
先决条件
被调用函数
案例```c
TIM_HandleTypeDef htim;
HAL_TIMEx_ConfigCommutationEvent_DMA(&htim, TIM_TS_ETRF);
```

1.30 HAL_TIMEx_ConfigBreakDeadTime

函数名HAL_TIMEx_ConfigBreakDeadTime
函数原形HAL_StatusTypeDef HAL_TIMEx_ConfigBreakDeadTime(TIM_HandleTypeDef *htim, TIM_BreakDeadTimeConfigTypeDef *sBreakDeadTimeConfig)
功能描述配置TIM的死区时间和断路器
输入参数htim:TIM句柄结构体指针
sBreakDeadTimeConfig:死区时间和断路器配置结构体指针
输出参数
返回值HAL_StatusTypeDef:配置状态
先决条件
被调用函数
案例```c
TIM_HandleTypeDef htim;
TIM_BreakDeadTimeConfigTypeDef sBreakDeadTimeConfig;
HAL_TIMEx_ConfigBreakDeadTime(&htim, &sBreakDeadTimeConfig);
```

1.31 HAL_TIMEx_MasterConfigSynchronization

函数名HAL_TIMEx_MasterConfigSynchronization
函数原形HAL_StatusTypeDef HAL_TIMEx_MasterConfigSynchronization(TIM_HandleTypeDef *htim,TIM_MasterConfigTypeDef *sMasterConfig)

| 功能描述 | 配置TIM主从同步 |
| 输入参数 | htim:TIM句柄结构体指针 |
| | sMasterConfig:主从同步配置结构体指针 |
| 输出参数 | 无 |
| 返回值 | HAL_StatusTypeDef:配置状态 |
| 先决条件 | 无 |
| 被调用函数 | 无 |
| 案例 | c | | | TIM_HandleTypeDef htim; | | | TIM_MasterConfigTypeDef sMasterConfig; | | | HAL_TIMEx_MasterConfigSynchronization(&htim, &sMasterConfig); | | |


1.32 HAL_TIMEx_CommutationCallback

函数名HAL_TIMEx_CommutationCallback
函数原形void HAL_TIMEx_CommutationCallback(TIM_HandleTypeDef *htim)
功能描述TIM换向事件的回调函数
输入参数htim:TIM句柄结构体指针
输出参数
返回值
先决条件
被调用函数
案例

1.33 HAL_TIMEx_BreakCallback

函数名HAL_TIMEx_BreakCallback
函数原形void HAL_TIMEx_BreakCallback(TIM_HandleTypeDef *htim)
功能描述TIM断路器事件的回调函数
输入参数htim:TIM句柄结构体指针
输出参数
返回值
先决条件
被调用函数
案例

1.34 TIMEx_DMACommutationCplt

函数名TIMEx_DMACommutationCplt
函数原形void TIMEx_DMACommutationCplt(TIM_HandleTypeDef *htim)
功能描述TIM换向事件的DMA传输完成回调函数
输入参数htim:TIM句柄结构体指针
输出参数
返回值
先决条件
被调用函数
案例

1.35 HAL_TIMEx_HallSensor_GetState

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

该文档修改记录:

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

总结

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

相关文章:

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

A61 STM32_HAL库函数 之 TIM扩展驱动 -- C -- 所有函数的介绍及使用 1 该驱动函数预览1.24 HAL_TIMEx_OnePulseN_Stop1.25 HAL_TIMEx_OnePulseN_Start_IT1.26 HAL_TIMEx_OnePulseN_Stop_IT1.27 HAL_TIMEx_ConfigCommutationEvent1.28 HAL_TIMEx_ConfigCommutationEvent_IT1.29 …...

使用瀚高数据库开发管理工具进行数据的备份与恢复---国产瀚高数据库工作笔记008

使用瀚高数据库,备份 恢复数据 然后找到对应的目录 其实就是hgdbdeveloper,瀚高的数据库开发管理工具 对应的包中有个dbclient 这个目录,选中这个目录以后,就可以了,然后 在对应的数据库,比如 data_middle 中,选中 某个模式,比如bigdata_huiju 然后右键进行,点击 恢复,然…...

css 选择器汇总

目录 所有选择器伪类选择器 所有选择器 选择器用法id选择器#myid类选择器.myclassname标签选择器div,h1,p相邻选择器h1p子选择器ul > li后代选择器li a通配符选择器*属性选择器a[rel“external”]伪类选择器a:hover, li:nth-child 伪类选择器 在CSS3中新增了一个结构伪类选…...

My Greedy Algorithm(贪心算法)之路(一)

引子:我们之前,其实也遇到过贪心算法,0,1背包就是一个典型的贪心算法问题,那今天我就来开始my-Greedy Algorithm的道路。 什么是贪心算法? 我愿称贪心算法为贪婪鼠目寸光,贪心算法(Greedy Alg…...

Win11 Python3.10 安装pytorch3d

0,背景 Python3.10、cuda 11.7、pytorch 2.0.1 阅读【深度学习】【三维重建】windows10环境配置PyTorch3d详细教程-CSDN博客 1,解决方法 本来想尝试,结果发现CUB安装配置对照表里没有cuda 11.7对应的版本,不敢轻举妄动&#x…...

kotlin 中 string array 怎么表示

在 Kotlin 中&#xff0c;字符串数组可以使用 Array<String> 类型表示。你可以通过多种方式来创建和初始化字符串数组。以下是几种常见的方法&#xff1a; 使用 arrayOf 函数&#xff1a; val stringArray arrayOf("Hello", "World", "Kotli…...

ffmpeg使用bmp编码器把bgr24编码为bmp图像

version #define LIBAVCODEC_VERSION_MAJOR 60 #define LIBAVCODEC_VERSION_MINOR 15 #define LIBAVCODEC_VERSION_MICRO 100 note 不使用AVOutputFormat code void CFfmpegOps::EncodeBGR24ToBMP(const char* infile, const char* width_str, const char* height_str…...

基于YOLOv10+YOLOP+PYQT的可视化系统,实现多类别目标检测+可行驶区域分割+车道线分割【附代码】

文章目录 前言视频效果必要环境一、代码结构1、 训练参数解析2、 核心代码解析1.初始化Detector类2. torch.no_grad()3. 复制输入图像并初始化计数器4. 调用YOLOv10模型进行目标检测5. 提取检测结果信息6. 遍历检测结果并在图像上绘制边界框和标签7. 准备输入图像以适应End-to-…...

计算机网络之令牌总线

上文内容&#xff1a;什么是以太网 1.令牌总线工作原理 在总线的基础上&#xff0c;通过在网络结点之间有序地传递令牌来分配各结点对共享型总线的访问权利&#xff0c;形成闭合的逻辑环路。 完全采用半双工的操作方式&#xff0c;只有获得令牌的结点才能发送信息&#xff…...

策略模式的应用

前言 系统有一个需求就是采购员审批注册供应商的信息时&#xff0c;会生成一个供应商的账号&#xff0c;此时需要发送供应商的账号信息&#xff08;账号、密码&#xff09;到注册填写的邮箱中&#xff0c;通知供应商账号信息&#xff0c;当时很快就写好了一个工具类&#xff0…...

如何使用uer做多分类任务

如何使用uer做多分类任务 语料集下载 找到这里点击即可 里面是这有json文件的 因此我们对此要做一些处理&#xff0c;将其转为tsv格式 # -*- coding: utf-8 -*- import json import csv import chardet# 检测文件编码 def detect_encoding(file_path):with open(file_path,…...

【HICE】转发服务器实验

1.在本地主机上操作 2.在客户端操作设置主机的IP地址为dns 3.测试,客户机是否能ping通...

MATLAB-分类CPO-RF-Adaboost冠豪猪优化器(CPO)优化RF随机森林结合Adaboost分类预测(二分类及多分类)

MATLAB-分类CPO-RF-Adaboost冠豪猪优化器&#xff08;CPO&#xff09;优化RF随机森林结合Adaboost分类预测&#xff08;二分类及多分类&#xff09; 分类CPO-RF-Adaboost冠豪猪优化器&#xff08;CPO&#xff09;优化RF随机森林结合Adaboost分类预测&#xff08;二分类及多分类…...

绝区贰--及时优化降低 LLM 成本和延迟

前言 大型语言模型 (LLM) 为各行各业带来了变革性功能&#xff0c;让用户能够利用尖端的自然语言处理技术处理各种应用。然而&#xff0c;这些强大的 AI 系统的便利性是有代价的 — 确实如此。随着 LLM 变得越来越普及&#xff0c;其计算成本和延迟可能会迅速增加&#xff0c;…...

JDBC【封装工具类、SQL注入问题】

day54 JDBC 封装工具类01 创建配置文件 DBConfig.properties driverNamecom.mysql.cj.jdbc.Driver urljdbc:mysql://localhost:3306/qnz01?characterEncodingutf8&serverTimezoneUTC usernameroot passwordroot新建配置文件&#xff0c;不用写后缀名 创建工具类 将变…...

Windows打开redis以及Springboot整合redis

目录 前言Windows系统打开redisSpringboot整合redis依赖实体类yml配置文件config配置各个数据存储类型分别说明记录string数据写入redis&#xff0c;并查询通过命令行查询 list插入数据到redis中从redis中读取命令读取数据 hash向redis中逐个添加map键值对获取key对应的map中所…...

MySQL使用LIKE索引是否失效的验证

1、简单的示例展示 在MySQL中&#xff0c;LIKE查询可以通过一些方法来使得LIKE查询能够使用索引。以下是一些可以使用的方法&#xff1a; 使用前导通配符&#xff08;%&#xff09;&#xff0c;但确保它紧跟着一个固定的字符。 避免使用后置通配符&#xff08;%&#xff09;&…...

封装日历uniapp,只显示年月不显示日

默认展示最新日期 子组件 <template><view class"date-picker"><picker mode"date" fields"month" change"onDateChange" :value"selectedDate"><view class"picker">{{ selectedDate…...

golang线程池ants-实现架构

1、总体架构 ants协程池&#xff0c;在使用上有多种方式(使用方式参考这篇文章&#xff1a;golang线程池ants-四种使用方法)&#xff0c;但是在实现的核心就一个&#xff0c;如下架构图&#xff1a; 总的来说&#xff0c;就是三个数据结构&#xff1a; Pool、WorkerStack、goW…...

Mysql面试合集

概念 是一个开源的关系型数据库。 数据库事务及其特性 事务&#xff1a;是一系列的数据库操作&#xff0c;是数据库应用的基本逻辑单位。 事务特性&#xff1a; &#xff08;1&#xff09;原子性&#xff1a;即不可分割性&#xff0c;事务要么全部被执行&#xff0c;要么就…...

基于算法竞赛的c++编程(28)结构体的进阶应用

结构体的嵌套与复杂数据组织 在C中&#xff0c;结构体可以嵌套使用&#xff0c;形成更复杂的数据结构。例如&#xff0c;可以通过嵌套结构体描述多层级数据关系&#xff1a; struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...

【杂谈】-递归进化:人工智能的自我改进与监管挑战

递归进化&#xff1a;人工智能的自我改进与监管挑战 文章目录 递归进化&#xff1a;人工智能的自我改进与监管挑战1、自我改进型人工智能的崛起2、人工智能如何挑战人类监管&#xff1f;3、确保人工智能受控的策略4、人类在人工智能发展中的角色5、平衡自主性与控制力6、总结与…...

云计算——弹性云计算器(ECS)

弹性云服务器&#xff1a;ECS 概述 云计算重构了ICT系统&#xff0c;云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台&#xff0c;包含如下主要概念。 ECS&#xff08;Elastic Cloud Server&#xff09;&#xff1a;即弹性云服务器&#xff0c;是云计算…...

MFC内存泄露

1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...

前端导出带有合并单元格的列表

// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...

【磁盘】每天掌握一个Linux命令 - iostat

目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat&#xff08;I/O Statistics&#xff09;是Linux系统下用于监视系统输入输出设备和CPU使…...

oracle与MySQL数据库之间数据同步的技术要点

Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异&#xff0c;它们的数据同步要求既要保持数据的准确性和一致性&#xff0c;又要处理好性能问题。以下是一些主要的技术要点&#xff1a; 数据结构差异 数据类型差异&#xff…...

ffmpeg(四):滤镜命令

FFmpeg 的滤镜命令是用于音视频处理中的强大工具&#xff0c;可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下&#xff1a; ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜&#xff1a; ffmpeg…...

服务器--宝塔命令

一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行&#xff01; sudo su - 1. CentOS 系统&#xff1a; yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...

佰力博科技与您探讨热释电测量的几种方法

热释电的测量主要涉及热释电系数的测定&#xff0c;这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中&#xff0c;积分电荷法最为常用&#xff0c;其原理是通过测量在电容器上积累的热释电电荷&#xff0c;从而确定热释电系数…...