STM32CubeMX FreeRTOS定時器的使用


配置STM32CubeMX如下

 

 生成的Keil代碼的創建啟動定時器如下

  /* Create the timer(s) */
  /* definition and creation of myTimer01 */
  osTimerDef(myTimer01, Callback01);
  myTimer01Handle = osTimerCreate(osTimer(myTimer01), osTimerPeriodic, NULL);

  /* USER CODE BEGIN RTOS_TIMERS */
  /* start timers, add new ones, ... */
    osTimerStart(myTimer01Handle,1000);//1秒鍾啟動一次定時
  /* USER CODE END RTOS_TIMERS */

定時器的回調函數如下

/* Callback01 function */
void Callback01(void const * argument)
{
  /* USER CODE BEGIN Callback01 */
    static int32_t count = 0;
  printf( "定時器計數:%d.\r\n",count++);
  /* USER CODE END Callback01 */
}

運行結果如下,每隔一秒打印一次

 定時器的創建函數osTimerCreate(osTimer(myTimer01), osTimerPeriodic, NULL);的第二個參數

osTimerPeriodic:重復定時
也可賦值為osTimerOnce只定時一次


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM