1. 程式人生 > >STM32CubeMX:ETR外部脈衝計數器

STM32CubeMX:ETR外部脈衝計數器

使用TIM定時器ETR管腳對外部脈衝進行計數,用PA0模擬產生脈衝進行計數。

晶片:STM32F103C8T6

輸出:PA0、PA12(TIM1_ETR)、USART1

配置介面


TIM1配置


Period為計數溢位週期

程式碼應用

  /* 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 */

  /* USER CODE BEGIN 3 */
	HAL_GPIO_WritePin(GPIOA,GPIO_PIN_0,(GPIO_PinState)!HAL_GPIO_ReadPin(GPIOA,GPIO_PIN_0));
	HAL_Delay(500);
	HAL_GPIO_WritePin(GPIOA,GPIO_PIN_0,(GPIO_PinState)!HAL_GPIO_ReadPin(GPIOA,GPIO_PIN_0));
		
	printf("num=%d\r\n",htim1.Instance->CNT);
  }
  /* USER CODE END 3 */
標準庫獲取計數器值用TIM_GetCounter函式,HAL函式中,直接呼叫值即可,好一頓找……