一、汇编指令点亮LED
1.电路设计图
放置AT89C51芯片然后连接LED灯如图所示
2.keil软件设计汇编语言
ORG 0x0000 ;
MOV P0, #0xFF ; 将 0xFF 数据存入 P0 端口
END ; 程序结束
二、LED流水灯
1.电路设计图
2.C语言设计
//51单片机编程常用的头文件
#include <reg51.h>
#include <intrins.h>
//延迟函数
void delay_ms(int a)
{
int i,j;
for(i=0;i<a;i++)
{
for(j=0;j<1000;j++) _nop_();
}
}
void main(void)
{
while(1)
{
P0=0xfe;
delay_ms(50);
P0=0xfd;
delay_ms(50);
P0=0xfb;
delay_ms(50);
P0=0xf7;
delay_ms(50);
P0=0xef;
delay_ms(50);
P0=0xdf;
delay_ms(50);
P0=0xbf;
delay_ms(50);
P0=0x7f;
delay_ms(50);
}
}
3.汇编语言设计
ORG 0x0000 ;
MOV R1, #0x01 ;
MOV P1, R1 ;
LOOP:
RRC R1 ;
MOV P1, R1 ;
ACALL DELAY ;
SJMP LOOP ;
DELAY:
MOV R2, #0xFF
MOV R3, #0xFF
DJNZ R2, $
DJNZ R3, $
RET ;
END ;
4.显示效果