看《零死角玩转STM32》的初级篇中的流水灯,根据他的步骤写完程序,烧进去,结果灯全亮,不闪,后来干脆不高延时,改成如下所示还是全亮;
LED1( ON ); // 亮 LED1( OFF ); // 灭
LED2( ON ); LED2( OFF );
LED3( ON ); LED3( OFF );
后又改了一下
LED1( ON ); // 亮 Delay(0x0FFFEF); LED1( OFF ); // 灭
LED2( ON ); LED2( OFF );
LED3( ON ); LED3( OFF );
结果只有LED1亮;
完整的程序如下
#include "stm32f10x.h"
#include "led.h"
//#define MI_ERR (-2)
void Delay(__IO u32 nCount);
int main(void)
{
/* LED 端口初始化 */
LED_GPIO_Config();
while (1)
{
LED1( ON ); // 亮
Delay(0x0FFFEF);
LED1( OFF ); // 灭
LED2( ON );
LED2( OFF );
LED3( ON );
LED3( OFF );
}
}
void Delay(__IO u32 nCount) //简单的延时函数
{
for(; nCount != 0; nCount--);
}
此帖出自
小平头技术问答
while (1)
{
LED1( ON ); // 亮 亮
Delay(0x0FFFEF);
LED1( OFF ); // 灭 看不到
LED2( ON ); // 看不到
LED2( OFF ); //看不到
LED3( ON ); //看不到
LED3( OFF ); //看不到
}
关键是你眼不够快。不是程序没写好。哈哈。
一周热门 更多>