2023-12-09 05:21 AM
Hello I am trying to work with Microseconds delay in my code
so follow this very help full post on web POST
and I configure TIMER 3 ( I have also check with all available timer )
But unfortunately, it doesn't work for my STM32GO3O MCU
/* USER CODE BEGIN 0 */
void delay(uint16_t delay)
{
__HAL_TIM_SET_COUNTER (&htim3,0);
while (__HAL_TIM_GET_COUNTER(&htim3)<delay);
}
/* USER CODE END 0 */
I used pin PA6 to debug the pulse output on the oscilloscope. but PA6 not changing the state.
please help how can I able to work with microseconds delay in STM32G030
Solved! Go to Solution.
2023-12-09 06:03 AM - edited 2023-12-09 06:07 AM
Hello @sandeep3
You need to add HAL_TIM_Base_Start(&htim3) to the main loop after the initialisation of all peripherals.
Best Regards
STTwo-32
To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
2023-12-09 05:37 AM
Can you see TIM3 CNT cycling thru 0x0000 .. 0xFFFF in the debugger peripheral view?
For 64 MHz and 1us ticks set Prescaler to 64-1
I'd delta the count rather than zero the count, as that would be thread/interrupt safe.
2023-12-09 05:44 AM
Did you start the timer?
2023-12-09 05:53 AM
I think I miss as I am new to stm32 please guide how to start the timer.
2023-12-09 05:54 AM
no increment observed int the counter.
2023-12-09 06:03 AM - edited 2023-12-09 06:07 AM
Hello @sandeep3
You need to add HAL_TIM_Base_Start(&htim3) to the main loop after the initialisation of all peripherals.
Best Regards
STTwo-32
To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.