网站开发怎样将信息栏到最底部,关键词林俊杰免费听,北京网站建设天下公司,广州市网站建设分站价格1、上篇文章介绍了定时器使用内部时钟信号计数#xff0c;实现计数、更新中断等功能。 2、可不可以利用定时器对来自外部的信号进行计数#xff1f;也就是对输入io的信号计数#xff1f; 3、可以
1、定时器外部时钟 STM32的通用定时器和高级定时器都将外部信号引入… 1、上篇文章介绍了定时器使用内部时钟信号计数实现计数、更新中断等功能。 2、可不可以利用定时器对来自外部的信号进行计数也就是对输入io的信号计数 3、可以
1、定时器外部时钟 STM32的通用定时器和高级定时器都将外部信号引入了触发控制器。 但并不是直接的STM32为每个输入通道都配备了输入滤波器和边沿检测器方便灵活的配置和使用。
1.1 TIM INPUT介绍 1、在STM32F103上每个定时器有4个输入通道TI1、TI2、TI3、TI4TI是TIM INPUT缩写其中TI3、TI4并没有接入到触发控制器。这里讨论TI1、TI2。对于TI1来说其边沿检测器输出的脉冲信号有两个TI1FP1、TI1FP2。这里讨论TI1FP1它会直接到达触发控制器内部。另外TI1上还有一根称为TI1_ED的信号也会到达触发控制器 前。 2、TI1_ED和TI1FP1、TI1FP2的区别是TI1FP1、TI1FP2可以选择是上升沿还是下降沿或者双边沿触发TI1_ED只能是双边沿触发。 3、这三个信号我们只能选择一个作为定时器的触发源需要通过一个叫触发器的结构来选择其中一个通道最终到达从模式控制器。
1.2 ETR介绍 1、除了上面三个信号还有一个外部触发器ETR最终也能进入从模式控制器这条通路叫做外部时钟模式1。 2、外部时钟模式2可以直接到达触发控制器。 3、整体框图如下
2、定时器外部时钟使用 红外循迹模块可以检测黑白线的变化并反映在DO引脚上我们将改脚作为定时器外部信号就可以对外部的变化实现计数。
2.1 ETR外部时钟模式1 配置、使用
2.1.1、配置 1、选择定时器2的时钟源为ETR可以看见右侧PA0引脚变成TIM2_ETR。所以我们将红外循迹模块的DO引脚接在PA0上即可。 2、下面Clock Filter设置最大15来解决在黑白线边界时带来的电平跳变、抖动。 3、i2c1也打开将计数值打印在oled上。 4、保存生成代码。
2.1.2、coding OLED_Init();OLED_Clear();HAL_TIM_Base_Start(htim2);int counter;char message[20];/* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){counter __HAL_TIM_GET_COUNTER(htim2);sprintf(message,counter:%d,counter);OLED_PrintString(0, 0, message);HAL_Delay(100);/* USER CODE END WHILE *//* USER CODE BEGIN 3 */}2.1.3、效果 1、使用黑白线在红外循迹模块下来回晃动观察counter的变化。
2.2 ETR外部时钟模式2 配置、使用 1、外部时钟模式2通道最终进入从模式控制机需要借助从模式。 2、效果与之前一样。
2.3 TI外部时钟模式配置、使用
定时器从模式