延时函数无法使用

2019-08-17 07:20发布

#include "sys.h"
#include "delay.h"
#include "usart.h"

int main(void)
{

        GPIO_InitTypeDef GPIO_InitStructure;
        HAL_Init();
        Stm32_Clock_Init(360,25,2,8);
                delay_init(180);
        __HAL_RCC_GPIOB_CLK_ENABLE();
       
        GPIO_InitStructure.Mode=GPIO_MODE_OUTPUT_PP;
        GPIO_InitStructure.Pin=GPIO_PIN_0  | GPIO_PIN_1;
        GPIO_InitStructure.Pull=GPIO_PULLUP;
        GPIO_InitStructure.Speed= GPIO_SPEED_FREQ_VERY_HIGH;
        HAL_GPIO_Init(GPIOB,&GPIO_InitStructure );
       
       
        HAL_GPIO_WritePin(GPIOB,GPIO_PIN_1,GPIO_PIN_SET);
        HAL_GPIO_WritePin(GPIOB,GPIO_PIN_0,GPIO_PIN_RESET);       
       
       
        while(1)
        {
        HAL_GPIO_WritePin(GPIOB,GPIO_PIN_1,GPIO_PIN_RESET); //LED0¶Ôó|òy½&#197B1à-μí£¬áᣬμèí¬óúLED0(0)
        HAL_GPIO_WritePin(GPIOB,GPIO_PIN_0,GPIO_PIN_SET);   //LED1¶Ôó|òy½&#197B0à-¸ß£¬Ãe£¬μèí¬óúLED1(1)
        delay_us(500000);                                                                                //Ñóê±500ms
        HAL_GPIO_WritePin(GPIOB,GPIO_PIN_1,GPIO_PIN_SET);   //LED0¶Ôó|òy½&#197B1à-¸ß£¬Ãe£¬μèí¬óúLED0(1)
        HAL_GPIO_WritePin(GPIOB,GPIO_PIN_0,GPIO_PIN_RESET); //LED1¶Ôó|òy½&#197B0à-μí£¬áᣬμèí¬óúLED1(0)
        delay_us(500000);                                      //Ñóê±500ms
        }
       
}
以上是主函数代码,代码是根据跑马灯教程写的,但实验结果显示代码执行到延时那就卡住了,这是为什么?

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
335920284
1楼-- · 2019-08-17 11:42
看延时函数是如何实现的就明白了
1018988577
2楼-- · 2019-08-17 12:54
 精彩回答 2  元偷偷看……
d1z1y2
3楼-- · 2019-08-17 15:44
检查一下 delay_init
super910906
4楼-- · 2019-08-17 20:17
这么长的延时,直接调ms延时器

一周热门 更多>