我在STM32中的主函数中去掉了 while(1){},OBJ文件删除后重新编译了一次,结果LED还是按照之前的正确程序无限循环闪烁,不是只是闪一次呢。下面是正确的
#include "stm32f10x.h"
#include "led.h"
#include "delay.h"
int main(void)
{
delay_init();
LED_Init();
while(1){
GPIO_SetBits(GPIOB,GPIO_Pin_11);
delay_ms(100);
GPIO_ResetBits(GPIOB,GPIO_Pin_11);
delay_ms(100);
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
没有while(1)程序就跑飞了,不受你控制了,只是实际上编译器也许会给做点优化,不会真正跑飞。所以正常的main函数最后都会有个while(1)的死循环,即使里面什么也不做也能防止程序跑飞
一周热门 更多>