任何单片机程序都要有一个死循环,否则程序执行到底了,然后怎么办。没有这个死循环,单片机从0地址重新运行,整个系统重新初始化,会导致IO口复位,运行的很快的话,就看到别的灯微亮。
如果设点亮LED灯的语句为“语句A”,那么,加上语循环句while(1){***语句A***}或{***语句A***;while(1);}后,程序运行后就只反复运行“语句A”了,其他什么也不做了,所以LED灯始终被点亮。
这个程序应该没有做别的端口的初始化,微亮的原因可能是看门狗造成复位了