STM32F103 CubeMX:ETR外部脉冲计数器

1、配置方法

使用TIM1_ETR管脚对外部脉冲进行计数,用PA5模拟产生脉冲进行计数。
芯片:STM32F103RCT
输出:PA5、PA12(TIM1_ETR)
时钟:系统时钟配置为72M
操作:通过杜邦线将PA5连接到PA12(TIM1_ETR)
CubeMX(版本5.2.1)的配置界面:
STM32F103 CubeMX:ETR外部脉冲计数器_第1张图片

2、主函数代码

 /**
  * @brief  The application entry point.
  * @retval int
  */
int main(void)
{
  /* USER CODE BEGIN 1 */

  /* USER CODE END 1 */
  

  /* MCU Configuration--------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

  /* USER CODE BEGIN Init */

  /* USER CODE END Init */

  /* Configure the system clock */
  SystemClock_Config();

  /* USER CODE BEGIN SysInit */

  /* USER CODE END SysInit */

  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  MX_TIM1_Init();
  /* USER CODE BEGIN 2 */
  HAL_TIM_Base_Start(&htim1);//自己添加的,启动定时器
  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
    /* USER CODE END WHILE */
     //翻转引脚PA5 产生方波
    /* USER CODE BEGIN 3 */
		HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_SET);
		HAL_Delay(1000);
		HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_RESET);
		HAL_Delay(1000);
  }

  /* USER CODE END 3 */
}.

3、 现象

观察下图寄存器即可,成功实现外部计数器功能。在STM32F103开发板上成功实现。
也可以通过串口打印功能,通过串口助手观察CNT计数值。
本人第一次博客分享,不足之处请指出,有点帮助请鼓励!
STM32F103 CubeMX:ETR外部脉冲计数器_第2张图片

你可能感兴趣的:(stm32,cubemx,外部计数器)