我想寫第5個練習。燒錄進去現(xiàn)象是對的,但是LED閃爍那部分非常暗,有時候?qū)懫渌绦虻臅r候,也會出現(xiàn)LED很暗的情況,我現(xiàn)在知道的是肯定不是硬件的問題,但是我也找不出是什么問題,感覺好像是單片的特性一類的......求大神指點一下。
LED課后練習.png (1.77 MB, 下載次數(shù): 33)
下載附件
2022-11-27 17:19 上傳
單片機源程序如下:
#include <REGX52.H>
#include <intrins.h>
typedef unsigned char u8;
typedef unsigned int u16;
sbit BEEP=P2^5;
#define LED_PORT P2
void delay(u16 x)//x傳入1大約延時1ms
{
u16 y,z;
for(y=x;y>0;y--)
for(z=115;z>0;z--);
}
void main()
{
u8 i=0;
while(1)//死循環(huán)
{
static b;
for(i=0;i<4;i++)//大循環(huán)上下流動兩次
{
for(i=0;i<8;i++)//內(nèi)層循環(huán)流水燈
{
if(b%2==0)//第一次先從低位到高位
{
LED_PORT=_crol_(0xfe,i);//左移
}
else if(b%2==1)//由于b自加為奇數(shù),執(zhí)行從高位到低位
{
LED_PORT=_cror_(0x7f,i);//右移
}
delay(200);
LED_PORT=0xff;
}
b++;//每完成一次內(nèi)循環(huán)自加1
if(b==4)
{
for(i=0;i<5;i++)//最后一個循環(huán),全部LED閃爍5次
{
LED_PORT=0xff;
delay(500);
LED_PORT=~0xff;
}
}
}
}
}
|