STM32脉冲计数(ETR)
本次我们使用STM32F103RCT6(mini)最小系统板和STM32cubeMX来教学
首先:基本的配置:时钟、下载配置、串口(用于显示,记得重写fputc函数)


然后随便配置一个定时器用于计数

配置的参数根据需要进行设置

随便看看中文

我配置了一个1S的定时器用于显示,记得开启中断。主频是72Mhz,自己算一下,根据自己的单片机来。

然后生成文件(记得使用微库Use MicroLIB)
开启定时器中断

我在定时器2中断里面加一个串口打印,然后把ETR引脚接到了一个上拉的按键上(最好加个电容,不然容易有噪音),用于1S内的按键计数,
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{
//HAL_TIM_Base_Start_IT(&htim2);//开启定时器2的中断
static unsigned char ledState = 0;//计满256个数程序就跑飞
static char TEMP[100];
if (htim == (&htim2))
{
ledState++;
printf("%drn",ledState);
printf("按键的频率是: %d rn",htim1.Instance->CNT);
htim1.Instance->CNT = 0;
}
}

前面是显示的时间,按键就是我这一秒按了多少下
最后
以上就是过时香菇最近收集整理的关于STM32脉冲计数STM32脉冲计数(ETR)的全部内容,更多相关STM32脉冲计数STM32脉冲计数(ETR)内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复