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

stm32单片机个人学习笔记9(TIM输入捕获)

前言

本篇文章属于stm32单片机(以下简称单片机)的学习笔记,来源于B站教学视频。下面是这位up主的视频链接。本文为个人学习笔记,只能做参考,细节方面建议观看视频,肯定受益匪浅。

STM32入门教程-2023版 细致讲解 中文字幕_哔哩哔哩_bilibili

一、简介

二、频率测量

三、输入捕获通道

四、主从触发模式

从模式选择Reset模式可以实现自动清零计数器CNT

五、输入捕获基本结构

六、PWM输入模式基本结构 

七、实例一(输入捕获测频率)

IC.c 

#include "stm32f10x.h"                  // Device headervoid IC_Init(void)
{//开启内部时钟RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE);//GPIO口初始化RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);GPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_Init(GPIOA, &GPIO_InitStructure);//设置为内部时钟模式TIM_InternalClockConfig(TIM3);//时基单元初始化TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructure;TIM_TimeBaseInitStructure.TIM_ClockDivision = TIM_CKD_DIV1;TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_Up;TIM_TimeBaseInitStructure.TIM_Period = 65536 - 1;			//ARRTIM_TimeBaseInitStructure.TIM_Prescaler = 72 - 1;		//PSCTIM_TimeBaseInitStructure.TIM_RepetitionCounter = 0;TIM_TimeBaseInit(TIM3, &TIM_TimeBaseInitStructure);//输入捕获通道初始化TIM_ICInitTypeDef TIM_ICInitStructure;TIM_ICInitStructure.TIM_Channel = TIM_Channel_1;TIM_ICInitStructure.TIM_ICFilter = 0xF;TIM_ICInitStructure.TIM_ICPolarity = TIM_ICPolarity_Rising;TIM_ICInitStructure.TIM_ICPrescaler = TIM_ICPSC_DIV1;TIM_ICInitStructure.TIM_ICSelection = TIM_ICSelection_DirectTI;TIM_ICInit(TIM3, &TIM_ICInitStructure);//配置主从触发模式TIM_SelectInputTrigger(TIM3, TIM_TS_TI1FP1);TIM_SelectSlaveMode(TIM3, TIM_SlaveMode_Reset);//使能定时器TIM_Cmd(TIM3, ENABLE);
}uint32_t IC_GetFreq(void)
{return 1000000 / (TIM_GetCapture1(TIM3)+1);
}

八、实例二(PWMI模式测频率占空比)

输入通道初始化时添加一个指令 

	TIM_ICInitTypeDef TIM_ICInitStructure;TIM_ICInitStructure.TIM_Channel = TIM_Channel_1;TIM_ICInitStructure.TIM_ICFilter = 0xF;TIM_ICInitStructure.TIM_ICPolarity = TIM_ICPolarity_Rising;TIM_ICInitStructure.TIM_ICPrescaler = TIM_ICPSC_DIV1;TIM_ICInitStructure.TIM_ICSelection = TIM_ICSelection_DirectTI;TIM_ICInit(TIM3, &TIM_ICInitStructure);TIM_PWMIConfig(TIM3, &TIM_ICInitStructure);

 最后一句会把结构体成员改变,通道1改为通道2,上升沿触发改为下降沿触发,直连方式改为交互连接

相关文章:

stm32单片机个人学习笔记9(TIM输入捕获)

前言 本篇文章属于stm32单片机(以下简称单片机)的学习笔记,来源于B站教学视频。下面是这位up主的视频链接。本文为个人学习笔记,只能做参考,细节方面建议观看视频,肯定受益匪浅。 STM32入门教程-2023版 细…...

ubuntu 安装haproxy

####安装##### sudo apt update sudo apt install haproxy sudo haproxy -v sudo systemctl status haproxy sudo cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg-org####配置站点##### nano /etc/haproxy/haproxy.cfgfrontend www-httpbind *:5001mode httpdefault_ba…...

TF-A(Trusted Firmware-A)及其启动流程详解:以stm32MP1平台为例

0 参考资料 stm32官网 wiki https://www.trustedfirmware.org/ https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git Trusted Firmware-A documentation ARM Power State Coordination Interface SMC Calling Convention (SMCCC) Arm System Control and Management…...

FL Studio 2024 发布,添加 FL Cloud 插件、AI 等功能

作为今年最受期待的音乐制作 DAW 更新之一,FL Studio 2024发布引入了新功能,同时采用了新的命名方式,从现在起将把发布年份纳入其名称中。DAW 的新增功能包括在 FL Cloud 中添加插件、AI 驱动的音乐创作工具和 FL Studio 的新效果。 FL Clou…...

webpack实战 | 医保服务平台信息查询 | 国密SM4 | SM2 | 逆向分析

请求头参数加密,请求参数encData用的是SM4加密,signData用的是SM2加密,响应数据用的是SM4解密 请求头不要也没关系,直接搜signData,都打上断点,点击分页 signData的核心代码 o.doSignature就是4d09模块…...

脉冲扩散模型

论文 Spiking Diffusion Models 主要内容是提出了“脉冲扩散模型(Spiking Diffusion Models, SDMs)”,一种基于脉冲神经网络(SNN)的生成模型,旨在解决传统人工神经网络(ANN)在图像生…...

blender分离含有多个动作的模型,并导出含有材质的fbx模型

问题背景 笔者是模型小白,需要将网络上下载的fbx模型中的动作,分离成单独的动作模型,经过3天摸爬滚打,先后使用了blender,3d max,unity,最终用blender完成,期间参考了众多网络上大佬…...

胤娲科技:AI大模型的隐秘战争——当“智能”成为双刃剑

当AI不再是单纯的助手 想象一下,你正在训练一个AI模型,希望它能成为你的得力助手,帮你解决各种复杂问题。然而,有一天,你突然发现,这个模型不仅没有如你所愿, 反而悄悄地在代码库中埋下了“炸弹…...

RK平台 GPIO序号转换软件

RK平台 GPIO序号转换软件 下载地址 https://download.csdn.net/download/ruidongren/89900151 链接: link...

UDP协议和TCP协议

UDP协议: 是一种无连接的、简单的传输层通信协议,它在IP协议(网络层)之上提供服务。 特点: 无连接:在数据传输前,发送方和接收方之间不需要建立连接,可以直接发送数据。 简单&…...

算法题总结(十三)—— 动态规划(上)

动态规划 动态规划理论基础 什么是动态规划 动态规划,英文:Dynamic Programming,简称DP,如果某一问题有很多重叠子问题,使用动态规划是最有效的。 所以动态规划中每一个状态一定是由上一个状态推导出来的&#xff…...

Leetcode - 周赛419

目录 一,3318. 计算子数组的 x-sum I 二,3319. 第 K 大的完美二叉子树的大小 三,3320. 统计能获胜的出招序列数 四,3321. 计算子数组的 x-sum II 一,3318. 计算子数组的 x-sum I 本题数据范围较小,可以…...

C# 的两个list怎么判断是否存在交集

要判断两个 List<string>&#xff08;dateList 和 LocalDate&#xff09;是否有交集&#xff0c;可以使用 LINQ&#xff08;Language Integrated Query&#xff09;来简化这个过程。以下三种方法来判断两个列表之间是否有交集。 方法 1: 使用 LINQ 的 Any 方法 using S…...

【Python】基础语法

1. 变量 1.1. 变量的创建 变量的定义规则&#xff1a; 变量只能由数字&#xff0c;字母&#xff0c;下划线构成&#xff0c;不能包含特殊符号数字不能作为变量开头变量名不能和 Python 的关键字重复Python 的变量是区分大小写的 除了上述的硬性规则外&#xff0c;还建议变量…...

scala 类的继承

继承的定义 idea实例 语法 重写 重写&#xff1a;在子类中重新定义父类的同名方法 idea实例 多态 多态&#xff1a;传入的对象不同&#xff0c;调用的方法的效果就不同&#xff01; 原理&#xff1a;参数是父类类型 idea实例 构造器...

穷举vs暴搜vs深搜vs回溯vs剪枝(一)

文章目录 全排列子集找出所有子集的异或总和再求和全排列 II电话号码的字母组合 全排列 题目&#xff1a;全排列 思路 通过深度优先搜索的方式&#xff0c;不断枚举每个数在当前位置的可能性&#xff0c;然后回溯到上一个状态&#xff0c;直到枚举完所有可能性得到正确的结果 r…...

枚举的应用

1.枚举的语法特点 枚举是jdk1.5提供的一个特性 枚举是一个特殊的类&#xff0c;这个类的对象的数量是有限的。在定义枚举类的同时就已经确定了类对象及类对象的数量。 枚举使用enum关键字定义 class A{} enum A{} 在枚举类中的第一行&#xff0c;就需要提供枚举类的对象&a…...

读数据工程之道:设计和构建健壮的数据系统14源系统

1. 源系统中的数据生成 1.1. 数据工程师的工作是从源系统获取数据&#xff0c;对其进行处理&#xff0c;使其有助于为下游用例提供服务 1.2. 数据工程师的角色将在很大程度上转向理解数据源和目的地之间的相互作用 1.3. 数据工程的最基本的数据管道任务——将数据从A移动到B…...

基于SpringBoot+Vue的厨艺交流系统的设计与实现(源码+定制开发)厨艺知识与美食交流系统开发、在线厨艺分享与交流平台开发、智能厨艺交流与分享系统开发

博主介绍&#xff1a; ✌我是阿龙&#xff0c;一名专注于Java技术领域的程序员&#xff0c;全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师&#xff0c;我在计算机毕业设计开发方面积累了丰富的经验。同时&#xff0c;我也是掘金、华为云、阿里云、InfoQ等平台…...

STMicroelectronics 意法半导体芯片选型表

意法半导体作为全球知名的半导体厂商&#xff0c;其产品广泛应用于各个领域&#xff0c;从消费电子到工业控制&#xff0c;从汽车电子到通信设备&#xff0c;都能看到意法半导体芯片的身影。在电子硬件设计领域&#xff0c;芯片的选型至关重要。亿配芯城&#xff08;ICgoodFind…...

乙巳马年春联生成终端保姆级教学:多模态输入(图片+文字)生成

乙巳马年春联生成终端保姆级教学&#xff1a;多模态输入&#xff08;图片文字&#xff09;生成 1. 引言&#xff1a;从灵感闪现到墨宝生成 每到岁末年初&#xff0c;为家里挑选或创作一副称心如意的春联&#xff0c;是许多人甜蜜的烦恼。既要寓意吉祥&#xff0c;又要对仗工整…...

二极管工作原理与应用全解析

1. 二极管基础认知&#xff1a;电子世界的单向阀门我第一次接触二极管是在大学电子实验课上&#xff0c;当时看着这个小小的玻璃管状元件&#xff0c;很难想象它能在电路中起到如此关键的作用。直到亲眼目睹它只允许电流单向通过的特性&#xff0c;才真正理解为什么工程师们称它…...

论文阅读:arxiv 2026 From Assistant to Double Agent: Formalizing and Benchmarking Attacks on OpenClaw for

总目录 大模型安全研究论文整理 2026年版&#xff1a;https://blog.csdn.net/WhiffeYF/article/details/159047894 From Assistant to Double Agent: Formalizing and Benchmarking Attacks on OpenClaw for Personalized Local AI Agent https://arxiv.org/abs/2602.08412 该…...

Python高效处理MDF/MF4数据的实战指南——asammdf深度解析

1. 为什么你需要asammdf处理MDF/MF4文件 第一次接触汽车测试数据时&#xff0c;我被各种.MDF和.MF4文件搞得晕头转向。这些由CANape、INCA等工具生成的测量数据格式&#xff0c;记录着车辆运行时各传感器的海量信息。传统做法是用厂商配套软件打开&#xff0c;但当你需要批量处…...

3步掌握Adobe-GenP:开源工具助力创意工作流效率提升

3步掌握Adobe-GenP&#xff1a;开源工具助力创意工作流效率提升 【免费下载链接】Adobe-GenP Adobe CC 2019/2020/2021/2022/2023 GenP Universal Patch 3.0 项目地址: https://gitcode.com/gh_mirrors/ad/Adobe-GenP 在数字创意领域&#xff0c;Adobe Creative Cloud套…...

OpenClaw数据标注:Qwen3.5-9B-AWQ-4bit辅助制作AI训练数据集

OpenClaw数据标注&#xff1a;Qwen3.5-9B-AWQ-4bit辅助制作AI训练数据集 1. 为什么需要AI辅助数据标注 作为一个经常折腾个人机器学习项目的开发者&#xff0c;数据标注一直是我最头疼的环节。上周在做一个垃圾分类模型时&#xff0c;面对2000多张待标注的垃圾图片&#xff0…...

django基于大数据技术的医疗数据分析与研究_c1o2u99y_hxj031

前言随着信息技术的飞速发展&#xff0c;医疗领域产生的数据量呈爆炸式增长。这些数据蕴含着丰富的健康信息和疾病规律&#xff0c;但传统的数据处理方式往往只能进行简单的统计汇总&#xff0c;无法深入挖掘数据背后的关联性和趋势性规律&#xff0c;导致大量宝贵的医疗数据资…...

嵌入式NTP客户端:一次校准,离线维持49天高精度时间

1. 项目概述PREi NTP Manager 是一个专为嵌入式平台&#xff08;尤其是 ESP 系列微控制器&#xff09;设计的轻量级网络时间协议&#xff08;NTP&#xff09;客户端库。其核心目标并非实现完整的 RFC 5905 NTP 协议栈&#xff0c;而是以极简、可靠、低资源占用的方式&#xff0…...

LPC11U24单总线DHT22/RHT03轻量驱动实现

1. RHT03传感器驱动库深度解析&#xff1a;面向LPC11U24平台的轻量级DHT22/RHT03固件实现1.1 项目背景与工程定位RHT03是DHT22温湿度传感器的兼容型号&#xff0c;采用单总线数字通信协议&#xff0c;具备0.5℃温度精度与2%RH湿度精度&#xff0c;工作电压范围3.3–5.5V&#x…...

Shell应用手册(一) 5 .终端连接与环境配置(SSH连接、命令行提示符含义)

对于后端开发者、运维工程师而言&#xff0c;终端是日常工作中最常用的工具之一。无论是远程管理服务器&#xff0c;还是本地调试程序&#xff0c;终端连接的稳定性、环境配置的合理性&#xff0c;直接影响工作效率。而SSH连接作为远程终端访问的核心方式&#xff0c;命令行提示…...