跪求:“8051单片机p0口亮灯实验8个发光二极管,先1个亮,再2个亮,3个亮,一直到8个亮”的程序

2026年09月13日 20:01
有3个网友回答
网友(1):

ORG 0000H

 AJMP MAIN

 ORG 0003H

 RETI

MAIN: MOV P1,#0FFH

 LCALL DELAY

 MOV R1,#0

 MOV DPTR,#TAB

MAIN1: MOV A,R1

 MOVC A,@A+DPTR

 MOV P1,A

 LCALL DELAY

 INC R1

 CJNE R1,#8,MAIN1

 AJMP MAIN

      

DELAY:  MOV R4,#08H

DL01: MOV R3,#74H

DL00:   MOV R2,#0D6H

     DJNZ R2,$

     DJNZ R3,DL00

     DJNZ R4,DL01

     NOP

     RET

TAB: DB 11111110B

 DB 11111100B

 DB 11111000B

 DB 11110000B

 DB 11100000B

 DB 11000000B

 DB 10000000B

 DB 00000000B

 END

网友(2):

#include
#include
//延时子程序
void delayms(unsigned char ms)
{ unsigned char i;
while(ms--)
{for(i = 0; i < 120; i++);}
}
main()
{ unsigned char LED;
LED = 0xfe;
P0 = LED;
while(1)
{
delayms(250);
LED = _crol_(LED,1); //循环右移1位,点亮下一个LED 此函数位库函数
P2 = LED;
}
}

网友(3):

想了解一下是怎么接的 高电平亮还是低电平亮?

时间间隔怎么样