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

通用定时器学习记录

简介

通用定时器:TIM2/TIM3/TIM4/TIM5

主要特性:16位递增、递减、中心对齐计数器(计数值0~65535)

16位预分频器(分频系数1~65536)

可用于触发DAC、ADC

在更新事件、触发事件、输入捕获、输出比较时,会产生中断/DMA请求

4个独立通道,可用于:输入捕获、输出比较、输出PWM、单脉冲模式

使用外部信号控制定时器且可实现多个定时器互连的同步电路

支持编码器和霍尔传感器电路等

通用定时器框图

计数器时钟源

1.内部时钟(CK_INT):来自外设总线APB提供的时钟

2.内部时钟模式1:外部输入引脚(TIx),来自定时器通道1或者通道2引脚的信号

3.外部时钟模式2:外部触发输入(ETR),来自可以复用为TIMx_ETR的IO引脚

4.内部输入触发(ITRx):用于与芯片内部其他通用/高级定时器级联

计数器时钟源寄存器设置方法

外部时钟模式1

外部时钟模式2

使用一个定时器作为另一个定时器的预分频器

通用定时器输出比较部分框图介绍

捕获比较通道1的主电路

通用定时器输出PWM原理

假设:递增计数模式

ARR:自动重装载寄存器的值

CCRx:捕获/比较寄存器x的值

当CNT<CRRx,IO输出0

当CNT=CRRx,IO输出1

PWM周期或频率由ARR决定,PWM占空比由CRRx决定

PWM原理

通用定时器PWM输出实验配置步骤

1.配置定时器基础工作参数    HAL_TIM_PWM_Init()

2.定时器PWM输出MSP初始化   HAL_TIM_PWM_MspInit()  配置NVIC、CLOCK、GPIO等

3.配置PWM模式/比较值等   HAL_TIM_PWM_ConfigChannel()

4.使能输出并启动计数器    HAL_TIM_PWM_Start()

5.修改比较值控制占空比(可选)  __HAL_TIM_SET_COMPARE()

6.使能通道预装载(可选)  __HAL_TIM_ENABLE_OCxPRELOAD()

相关HAL库函数介绍

关键结构体介绍

输入捕获框图

捕获比较通道1的输入部分

输入捕获脉宽测量原理(测量高电平脉宽为例)

递增计数模式

ARR:自动重装载寄存器的值

CCRx1:t1时间点CCRx的值

CCRx2:t2时间点CCRx的值

高(低)电平期间,计时器计数个数:N*(ARR+1)+CCRx2

输入捕获配置步骤

1.配置定时器基础工作参数  HAL_TIM_IC_Init()

2.定时器输入捕获MSP初始化  HAL_TIM_IC_MspInit() 配置NVIC、CLOCK、GPIO等

3.配置输入通道映射、捕获边沿   HAL_TIM_IC_ConfigChannel()

4.设置优先级,使能中断  HAL_NVIC_SetPriority()   HAL_NVIC_EnableIRQ()

5.使能定时器更新中断  __HAL_TIM_ENABLE_IT()

6.使能捕获、捕获中断及计数器  HAL_TIM_IC_Start_IT()

7.编写中断服务函数  TIMx_IRQHandler()等   ---> HAL_TIM_IRQHandler() 

8.编写更新中断和捕获回调函数 

HAL_TIM_PeriodElaspsedCallback()     HAL_TIM_IC_CaptureCallback()

相关HAL库函数介绍

关键结构体介绍

脉冲计数原理

外部时钟源模式1

外部时钟源模式2

脉冲计数配置步骤

1.配置定时器基础工作参数  HAL_TIM_IC_Init()

2.定时器输入捕获MSP初始化  HAL_TIM_IC_MspInit() 配置NVIC、CLOCK、GPIO等

3.配置定时器从模式等   HAL_TIM_SlaveConfiSynchro()

4.使能输入捕获并启动计数器  HAL_TIM_IC_Start()

5.获取计数器的值  __HAL_TIM_GET_COUNTER()

6.设置计数器的值  __HAL_TIM_SET_COUNTER()

相关HAL库函数介绍

关键结构体介绍

相关文章:

通用定时器学习记录

简介 通用定时器&#xff1a;TIM2/TIM3/TIM4/TIM5 主要特性&#xff1a;16位递增、递减、中心对齐计数器&#xff08;计数值0~65535&#xff09; 16位预分频器&#xff08;分频系数1~65536&#xff09; 可用于触发DAC、ADC 在更新事件、触发事件、输入捕获、输出比较时&am…...

科技之光闪耀江城:2025武汉国际半导体产业与电子技术博览会5月15日盛大开幕

在科技浪潮汹涌澎湃的当下&#xff0c;半导体产业作为现代信息技术的中流砥柱&#xff0c;正以令人惊叹的速度重塑着世界的面貌。2025年5月15-17日&#xff0c;一场聚焦半导体与电子技术前沿的行业盛会 ——2025 武汉国际半导体产业与电子技术博览会&#xff0c;将在武汉・中国…...

vue开发06:前端通过webpack配置代理处理跨域问题

1.定义 在浏览器尝试请求不同源&#xff08;域名、协议、端口号不同&#xff09;的资源时&#xff0c;浏览器的同源策略会阻止这种跨域请求。&#xff08;比如前端端口15500&#xff0c;后端端口5050&#xff0c;前端界面不可以直接调用5050端口&#xff09; 2.解决方案 使用前…...

⚡️《静电刺客的猎杀手册:芯片世界里的“千伏惊魂“》⚡️

前言&#xff1a; 在这个电子产品无孔不入的时代&#xff0c;我们每天都在与一群隐形刺客打交道——它们身怀数千伏特的高压绝技&#xff0c;能在0.1秒内让价值百万的芯片灰飞烟灭。这就是静电放电&#xff08;ESD&#xff09;&#xff0c;电子工业界最令人闻风丧胆的"沉默…...

【云安全】云原生-K8S(三) 安装 Dashboard 面板

在Kubernetes中安装Dashboard需要几个步骤&#xff0c;包括部署Dashboard组件、配置访问权限以及暴露Dashboard服务等。以下是详细的步骤&#xff1a; 1. 部署 K8S Dashboard 可以通过以下命令用Kubernetes官方的YAML文件来快速部署&#xff0c;由于是国外网站&#xff0c;需…...

Spring Boot 常用依赖详解:如何选择和使用常用依赖

在Spring Boot项目中&#xff0c;依赖&#xff08;Dependencies&#xff09;是项目的核心组成部分。每个依赖都提供了一些特定的功能或工具&#xff0c;帮助我们快速开发应用程序。本文将详细介绍Spring Boot中常用的依赖及其作用&#xff0c;并指导你如何根据项目需求选择合适…...

C++ 设计模式-组合模式

组合模式&#xff08;Composite Pattern&#xff09;允许将对象组合成树形结构&#xff0c;使得客户端以统一的方式处理单个对象和组合对象。以下是一个经典的 C 实现示例&#xff0c;包含透明式设计&#xff08;基类定义统一接口&#xff09;和内存管理&#xff1a; #include…...

【Spring Boot】Spring 魔法世界:Bean 作用域与生命周期的奇妙之旅

前言 ???本期讲解关于spring原理Bean的相关知识介绍~~~ ??感兴趣的小伙伴看一看小编主页&#xff1a;-CSDN博客 ?? 你的点赞就是小编不断更新的最大动力 ??那么废话不多说直接开整吧~~ 目录 ???1.Bean的作用域 ??1.1概念 ??1.2Bean的作用域 ??1.3代码演示…...

移远通信边缘计算模组成功运行DeepSeek模型,以领先的工程能力加速端侧AI落地

近日&#xff0c;国产大模型DeepSeek凭借其“开源开放、高效推理、端侧友好”的核心优势&#xff0c;迅速风靡全球。移远通信基于边缘计算模组SG885G&#xff0c;已成功实现DeepSeek模型的稳定运行&#xff0c;并完成了针对性微调。 目前&#xff0c;该模型正在多款智能终端上进…...

Cables Finance 构建集成LST与外汇RWA永续合约的综合性DEX

虽然 DeFi 领域整体发展迅速&#xff0c;但仍旧缺乏交易体验。现阶段市场已拓展至 RWAs 、永续期货和外汇领域&#xff0c;但跨资产交易的实际操作仍充满阻力。交易者面临流动性碎片化、抵押品被锁定在质押合约中缺乏流动性&#xff0c;以及整个系统仍围绕美元稳定币运转等问题…...

AI大模型(DeepSeek)科研应用、论文写作、数据分析与AI绘图学习

【介绍】 在人工智能浪潮中&#xff0c;2024年12月中国公司研发的 DeepSeek 横空出世以惊艳全球的姿态&#xff0c;成为 AI领域不可忽视的力量!DeepSeek 完全开源&#xff0c;可本地部署&#xff0c;无使用限制&#xff0c;保护用户隐私。其次&#xff0c;其性能强大&#xff…...

【算法工程】解决linux下Aspose.slides提示No usable version of libssl found以及强化推理模型的短板

1. 背景 构建ubuntu镜像&#xff0c;然后使用Aspose.slides解析PPTX文档&#xff0c;发现一直提示“No usable version of libssl found”。 2. 尝试 使用deepseek R1、kimi1.5、chatgpt o3&#xff0c;并且都带上联网能力&#xff0c;居然还是没有一个能够真正解决&#xf…...

什么是HTTP和HTTPS?它们之间有什么区别?

什么是HTTP和HTTPS&#xff1f;它们之间有什么区别&#xff1f; HTTP&#xff08;超文本传输协议&#xff09;简介 HTTP就像是你通过明信片给朋友发送信息。你在明信片上写下内容&#xff0c;然后寄出去。任何人都可以在途中看到明信片上的内容&#xff0c;因为它是公开的。 …...

【一文读懂】TCP与UDP协议

TCP协议 概述 TCP&#xff08;Transmission Control Protocol&#xff09;&#xff0c;即传输控制协议&#xff0c;是一种面向连接的、可靠的、基于字节流的传输层通信协议&#xff0c;常用于保证数据可靠、按顺序、无差错地传输。TCP 是互联网协议族&#xff08;TCP/IP&…...

数据结构 树的存储和遍历

一、树的定义 树的定义 树型结构是⼀类重要的⾮线性数据结构。 • 有⼀个特殊的结点&#xff0c;称为根结点&#xff0c;根结点没有前驱结点。 • 除根结点外&#xff0c;其余结点被分成M个互不相交的集合T1 、T2 、...、Tm T&#xff0c;其中每⼀个集合⼜是⼀棵树&#xff0c…...

Jenkins项目CICD流程

Jenkins项目流程:1.配置git环境 git config --...2.把前后端的目录初始化位本地工作目录 #git init3.提交到本地git #git add ./ git commit -m "" git tag v14.然后提交到远程git(通过,用户,群组,项目,管理项目)git remote add origin http://...git push -…...

EasyRTC轻量级SDK:智能硬件音视频通信资源的高效利用方案

在智能硬件这片广袤天地里&#xff0c;每一份资源的精打细算都关乎产品的生死存亡。随着物联网技术的疾速演进&#xff0c;实时音视频通信功能已成为众多设备的标配。然而&#xff0c;硬件资源的捉襟见肘&#xff0c;让开发者们常常陷入两难境地。EasyRTC&#xff0c;以它的极致…...

AI Agent未来走向何方?

AI Agent未来走向何方? 目录 AI Agent未来走向何方?AI推理支撑应用开发走向新赛道智能体成为AI应用的主流形式大模型应用正以AI Agent的主流形式赋能终端设备从大到小AI模型发展从通用转向垂直:小型语言模型(SLM)AI推理支撑应用开发走向新赛道 训练与推理,是AI 大模型两大核…...

Visual Studio Code的键盘快捷键

注意&#xff1a;如果您在Mac上访问此页面&#xff0c;您将看到Mac的键盘快捷键。如果您使用Windows或Linux访问&#xff0c;您将看到该平台的密钥。如果您需要其他平台的键盘快捷键&#xff0c;请将鼠标悬停在您感兴趣的键上。 键盘快捷键编辑器 VS Code通过键盘快捷键编辑器…...

【Jenkins流水线搭建】

Jenkins流水线搭建 01、SpringBoot项目 - Jenkins基于Jar持续集成搭建文档基于手动方式发布项目基于dockerfile基于jenkins + dockerfile + jenkinsfile +pieline基于jenkins + jar方式的发布01、环境说明01、准备项目02、准备服务器03、安装git04、安装jdk1.805、安装maven依赖…...

【Oracle APEX开发小技巧12】

有如下需求&#xff1a; 有一个问题反馈页面&#xff0c;要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据&#xff0c;方便管理员及时处理反馈。 我的方法&#xff1a;直接将逻辑写在SQL中&#xff0c;这样可以直接在页面展示 完整代码&#xff1a; SELECTSF.FE…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局&#xff1a;PCB行业的时代之问 在数字经济蓬勃发展的浪潮中&#xff0c;PCB&#xff08;印制电路板&#xff09;作为 “电子产品之母”&#xff0c;其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透&#xff0c;PCB行业面临着前所未有的挑战与机遇。产品迭代…...

智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql

智慧工地管理云平台系统&#xff0c;智慧工地全套源码&#xff0c;java版智慧工地源码&#xff0c;支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求&#xff0c;提供“平台网络终端”的整体解决方案&#xff0c;提供劳务管理、视频管理、智能监测、绿色施工、安全管…...

cf2117E

原题链接&#xff1a;https://codeforces.com/contest/2117/problem/E 题目背景&#xff1a; 给定两个数组a,b&#xff0c;可以执行多次以下操作&#xff1a;选择 i (1 < i < n - 1)&#xff0c;并设置 或&#xff0c;也可以在执行上述操作前执行一次删除任意 和 。求…...

css的定位(position)详解:相对定位 绝对定位 固定定位

在 CSS 中&#xff0c;元素的定位通过 position 属性控制&#xff0c;共有 5 种定位模式&#xff1a;static&#xff08;静态定位&#xff09;、relative&#xff08;相对定位&#xff09;、absolute&#xff08;绝对定位&#xff09;、fixed&#xff08;固定定位&#xff09;和…...

【Java_EE】Spring MVC

目录 Spring Web MVC ​编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 ​编辑参数重命名 RequestParam ​编辑​编辑传递集合 RequestParam 传递JSON数据 ​编辑RequestBody ​…...

零基础设计模式——行为型模式 - 责任链模式

第四部分&#xff1a;行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习&#xff01;行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想&#xff1a;使多个对象都有机会处…...

精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南

精益数据分析&#xff08;97/126&#xff09;&#xff1a;邮件营销与用户参与度的关键指标优化指南 在数字化营销时代&#xff0c;邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天&#xff0c;我们将深入解析邮件打开率、网站可用性、页面参与时…...

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要&#xff1a; 近期&#xff0c;在使用较新版本的OpenSSH客户端连接老旧SSH服务器时&#xff0c;会遇到 "no matching key exchange method found"​, "n…...

力扣热题100 k个一组反转链表题解

题目: 代码: func reverseKGroup(head *ListNode, k int) *ListNode {cur : headfor i : 0; i < k; i {if cur nil {return head}cur cur.Next}newHead : reverse(head, cur)head.Next reverseKGroup(cur, k)return newHead }func reverse(start, end *ListNode) *ListN…...