蓝桥杯物联网竞赛_STM32L071_15_ADC/脉冲模块

ADC模块用的是RP1不用多说了,主要是脉冲模块,这个模块没考过

这个脉冲模块放出脉冲,主要能用TIM捕获到这个脉冲的高电平持续时间即可

CubMx配置:


脉冲模块的引脚与PB0相连,所以用PB0读取上升沿记的数和下降沿记的数,后前相减就是高电平记的数

CubeMx配置:


internal clock 内部时钟

input capture direct mode 输入捕获测量脉宽

channel3 通道3

类似GPIO INPUT读取外部电平


中断enable


预分配设置3200,1s记录1000000 / 100个数,那么记录一个数花费0.1ms

自动重装enable

kil5:

复制代码
void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim)  // 定时器捕获中断回调函数

在触发上升沿或者下降沿的时候会进入这个中断函数,设置上升沿下降沿在polarity selection中

复制代码
HAL_TIM_ReadCapturedValue(&htim3,TIM_CHANNEL_3);	//读取计数器的值

显示计数器的值

复制代码
__HAL_TIM_SET_CAPTUREPOLARITY(&htim3,TIM_CHANNEL_3,TIM_ICPOLARITY_FALLING);	 // 设置触发条件

设置下次中断为下降沿

复制代码
HAL_TIM_IC_Start_IT(&htim3, TIM_CHANNEL_3);

主函数一定要使能要不然进不了中断函数

相关推荐
dlwlrma_51615 小时前
NUCLEO-G0B1RE STM32G0B1RET6的学习(1)——STM32CubeIDE的安装、新建工程和配置硬件SPI
stm32
woshimyc16 小时前
ESP32连接ThingsCloud上传设备数据(智慧小灯)
c++·物联网
三品吉他手会点灯16 小时前
stm32f103学习笔记-16-RCC(第2节)-讲解系统时钟配置函数SetSysClockTo72()
笔记·stm32·单片机·嵌入式硬件·学习
李宥小哥20 小时前
创建型设计模式1
stm32·嵌入式硬件·设计模式
Shylock_Mister20 小时前
弱函数:嵌入式回调的最佳实践
c语言·单片机·嵌入式硬件·物联网
d111111111d20 小时前
STM32外设学习-ADC模数转换器(代码部分)四个模块,光敏,热敏,电位,反射式红外。
笔记·stm32·单片机·嵌入式硬件·学习
三品吉他手会点灯21 小时前
STM32F103学习笔记-16-RCC(第3节)-使用HSE配置系统时钟并使用MCO输出监控系统时钟
c语言·笔记·stm32·单片机·嵌入式硬件·学习
straw_hat.1 天前
32HAL——万年历
stm32·单片机·学习
敬往事一杯酒哈1 天前
第3节 STM32 串口通信
stm32·单片机·嵌入式硬件
XH1.1 天前
学习RT-thread(项目一:基于RT-thread的multi_button控制灯闪烁)
stm32·单片机·学习