1
我想測量單個函數在STM32上花費多長時間。我唯一能找到的就是SysTick_Handler
。然而,這是一個週期性的中斷,但我需要的是得到這樣的時間間隔:如何在STM32上獲取時間間隔?
long t1 = mcu_clock();
sleep(20);
long t2 = mcu_clock();
long diff = (t2 - t1);
我試過çclock()
,但它沒有工作,總是返回-1
。我怎麼做到的?
增加'SysTick_Handler'中的變量並查詢該變量。 –
@BenceKaulics是唯一的解決方案嗎?這似乎是一種解決方法。 –
您必須以任一方式設置一個計時器並記錄它。最簡單的使用sys tick和一個簡單的變量。 ST的官方HAL庫也採用相同的方式,例如:[stm32F0xx_hal.c](https://github.com/wemos/Motor_Shield_Firmware/blob/master/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal.c) –