Page 1 of 1

问个基础问题,使用定时器写一个延时函数该怎么写

Posted: Sun Jun 19, 2022 10:53 am
by zcf9999
不用中断,就是单纯一个用作延时函数,写了一个下午也没搞明白,可能我理解出错了

void delay_us(int us)
{
timer_config_t delay;

timer_set_counter_value(0,0,us);//us延时时间

delay.alarm_en=0;//不使能报警
delay.auto_reload=1;//不自动重新加载
delay.clk_src=0;//默认APB
delay.counter_dir=1;//向上计数

delay.divider=80;//分频1 000 000hz
// delay.intr_type=0;//不报警不中断
delay.counter_en=1;//使能定时器

timer_init(0,0,&delay);//0组0定时器初始化
};

按照stm32的写法应该还有一个更新状态位,等待定时器计时更新完成就是延时了,esp32是哪个呢?求解答