⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 8x8led.txt

📁 在8X8 LED点阵上显示柱形
💻 TXT
字号:
 汇编源程序 
	ORG 00H 
START:	NOP 
	MOV R3,#3 
LOP2:	MOV R4,#8 
	MOV R2,#0 
LOP1:	MOV P1,#0FFH 
	MOV DPTR,#TABA 
	MOV A,R2 
	MOVC A,@A+DPTR 
	MOV P3,A 
	INC R2 
	LCALL DELAY 
	DJNZ R4,LOP1 
	DJNZ R3,LOP2 
	MOV R3,#3 
LOP4:	MOV R4,#8 
	MOV R2,#7 
LOP3:	MOV P1,#0FFH 
	MOV DPTR,#TABA 
	MOV A,R2 
	MOVC A,@A+DPTR 
	MOV P3,A 
	DEC R2 
	LCALL DELAY 
	DJNZ R4,LOP3 
	DJNZ R3,LOP4 
  
	MOV R3,#3 
LOP6:	MOV R4,#8 
	MOV R2,#0 
LOP5:	MOV P3,#00H 
	MOV DPTR,#TABB 
	MOV A,R2 
	MOVC A,@A+DPTR 
		MOV P1,A 
	INC R2 
	LCALL DELAY 
	DJNZ R4,LOP5 
	DJNZ R3,LOP6 
	MOV R3,#3 
LOP8:	MOV R4,#8 
	MOV R2,#7 
LOP7:	MOV P3,#00H 
	MOV DPTR,#TABB 
	MOV A,R2 
	MOVC A,@A+DPTR 
	MOV P1,A 
	DEC R2 
	LCALL DELAY 
	DJNZ R4,LOP7 
	DJNZ R3,LOP8 
	LJMP START 
DELAY:	MOV R5,#10 
D2:	MOV R6,#20 
D1:	MOV R7,#248 
	DJNZ R7,$ 
	DJNZ R6,D1 
	DJNZ R5,D2 
	RET 
TABA:	DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH 
TABB:	DB 01H,02H,04H,08H,10H,20H,40H,80H 
	END 
6.     C语言源程序 
#include <AT89X52.H>  
unsigned char code taba[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; 
unsigned char code tabb[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80}; 
void delay(void) 
{ 
  unsigned char i,j; 
  for(i=10;i>0;i--) 
  for(j=248;j>0;j--); 
} 
void delay1(void) 
{ 
  unsigned char i,j,k; 
  for(k=10;k>0;k--) 
  for(i=20;i>0;i--) 
  for(j=248;j>0;j--); 
} 
void main(void) 
{ 
  unsigned char i,j; 
  while(1) 
    { 
      for(j=0;j<3;j++)  //from left to right 3 time 
        { 
          for(i=0;i<8;i++) 
            { 
              P3=taba[i]; 
              P1=0xff; 
              delay1(); 
            } 
        } 
      for(j=0;j<3;j++)  //from right to left 3 time 
        { 
          for(i=0;i<8;i++) 
            { 
              P3=taba[7-i]; 
              P1=0xff; 
              delay1(); 
            } 
        } 
      for(j=0;j<3;j++)  //from top to bottom 3 time 
        { 
          for(i=0;i<8;i++) 
            { 
              P3=0x00; 
              P1=tabb[7-i]; 
              delay1(); 
            } 
        } 
      for(j=0;j<3;j++)  //from bottom to top 3 time 
        { 
          for(i=0;i<8;i++) 
            { 
              P3=0x00; 
              P1=tabb[i]; 
              delay1(); 
            } 
        } 
    } 
} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -