实验平台:STM32F407
函数库:HAL
软件:KEIL,CUBEMX
版本:1.0.1
修改:加入时钟说明
PS:本人将于2022年7月毕业,有企业需要单片机方面的人的话,可以私聊我,我可以把我的简历发一下。明年1月份可进行实习。
要求:工作地在青岛附近。
实现功能
通过定时器实现频率检测,将检测到的频率通过串口发送出来。
方案描述
使用定时器输入捕获功能,获取两次上升沿的值,通过将两个值之间进行计算,实现计算频率。
计算公式:fre = time_fre/(count1-count2);
fre–信号频率
time_fre – 定时器分频频率
count1 – 第一次捕获产生的计数值
count2 – 第二次捕获产生的计数值
方案实现
以下是频率检测中断的回调
void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim)
{
static uint8_t IC_flag; // =0 首次记录 =1 第二次记录 其他 清零
static uint16_t get_count1,get_count2;