输入捕获 您所在的位置:网站首页 高电平输入到dsp效果怎样 输入捕获

输入捕获

2024-07-12 01:19| 来源: 网络整理| 查看: 265

文章目录 一、内容介绍 二、逻辑梳理 1、初始化 2、针对其中预分频为什么是72做一个解释 预分频 解释 3、理解两个变量:STA 、VAL 三、部分代码 1、变量STA 、 VAL 2、输入捕获初始化,定时器5通道1输入捕获配置 3、中断函数,使用定时器TIM5 4、计算高电平时间 四、总结

一、内容介绍

        之前对一个输入捕获的实验没有理解透彻,虽然当时实验是有结果,但现在时间过去太久,所以印象很模糊,搞得我再次谈到这个竟然变得语无伦次,所以我还是决定复盘。所以今天我回顾了之前自己做过的输入捕获实验-获取一个高电平的持续时间,并进行重新梳理。此次更多是帮助自己回忆并加深理解,也算是给自己擦屁股了,真是让人感到不爽。

二、逻辑梳理 1、初始化

输入捕获初始化

2、针对其中预分频为什么是72做一个解释 预分频

预分频:72

解释

解释预分频为什么为72

3、理解两个变量:STA 、VAL

STA/VAL 补充:上图中,捕获方式:0-上升沿捕获,1-下降沿捕获

三、部分代码 1、变量STA 、 VAL u8 STA; //输入捕获状态 单字节(8位) u16 VAL; //输入捕获值 双字节 2、输入捕获初始化,定时器5通道1输入捕获配置 void input_init() { TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructure; TIM_ICInitTypeDef TIM5_ICInitStructure; NVIC_InitTypeDef NVIC_InitStructure; /* 开启定时器5时钟 */ RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM5,ENABLE); //使能TIM5时钟 TIM_ClearITPendingBit(TIM5,TIM_IT_Update|TIM_IT_CC1); //清除中断标识位 TIM_TimeBaseInitStructure.TIM_Period = 0xffff; //设置定时器自动重装载值 TIM_TimeBaseInitStructure.TIM_Prescaler = 71; //以1MHz的频率计数,一次是1μs(微妙&#


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有