|
;51单片机入门程序6
;工程名称:实现跑马灯效果,循环移位点亮一盏LED,运用左移指令
;编写日期:2009.7.4
;编写者:蓝柳柳 ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ORG 0000H MAIN: MOV A,#11111110B ;先把数11111110B送到累加器A,
LOOP: MOV P1,A ;把A里面的数11111110B送到P1端口输出显示
ACALL YS ;显示一小段时间
RL A ;把A里的数11111110B左移一位
AJMP LOOP ;回到LOOP处循环,即把左移后得到新的数码再显示,再刷新A
YS: ;延时子程序YS,功能是能让LED亮起来或者灭掉一小段时间
MOV R1,#200 ;让灯亮灭时间的长短也就是延时的长短跟#号后面的数据有关
D: MOV R2,#200 ;延时长点#号后面的数据就大点,延时短点#号后面的数据
T: MOV R3,#200 ;就小点,但#号后面最大的数据是255
DJNZ R3,$ DJNZ R2,T
DJNZ R1,D
RET ;子程序返回指令,子程序的设计一般都是因为主程序要调用它,
;调用完是要返回到主程序继续运行下一个语句的
END
|
|