STM32 延时函数(简单粗暴不精确)
简单的粗略延时
有时候不需要精确延时,比如只希望在一定的时间内切换一下GPIO的电平,就可以使用下面简单的函数:
void delay(u16 delaytime)
{ u16 i=0; while(delaytime--){i=12000; //自己定义while(i--) ; }}int main()
{while(1){delay(5);GPIO_ResetBits(GPIO_PORT, GPIO_PIN );delay(5);//5 ~ 7.5msGPIO_SetBits(GPIO_PORT, GPIO_PIN ); }
}
STM32采用72MHz主频,示波器实测延时时间在5ms ~ 7.5ms之间。