21ic问答首页 - GD32F303用systick做延时出现延时不准
GD32F303用systick做延时出现延时不准
Wangjianze19722022-08-31
/* Configure the system clock */
rcu_config();
/* configure systick */
systick_config();
/* GPIO configuration */
gpio_config();
while (1)
{
gpio_bit_set(GPIOB, SCRPL_Pin);
mydelay();
// delay_1ms(1);
gpio_bit_reset(GPIOB, SCRPL_Pin);
delay_1ms(1);
}
void mydelay(void)
{
uint16_t i;
i=5000;
while(0U != i){
i--;
}
}
在用2个delay_1ms(1)延时时,端口高低电平时间都是1ms,但是如果把高电平的延时换成for循环实现的延时会使低电平的时间也发生变化不是1ms了。
rcu_config();
/* configure systick */
systick_config();
/* GPIO configuration */
gpio_config();
while (1)
{
gpio_bit_set(GPIOB, SCRPL_Pin);
mydelay();
// delay_1ms(1);
gpio_bit_reset(GPIOB, SCRPL_Pin);
delay_1ms(1);
}
void mydelay(void)
{
uint16_t i;
i=5000;
while(0U != i){
i--;
}
}
在用2个delay_1ms(1)延时时,端口高低电平时间都是1ms,但是如果把高电平的延时换成for循环实现的延时会使低电平的时间也发生变化不是1ms了。
您需要登录后才可以回复 登录 | 注册