专注电子技术学习与研究
当前位置:单片机教程网 >> MCU设计实例 >> 浏览文章

单片机跑马灯程序

作者:佚名   来源:本站原创   点击数:  更新时间:2008年06月15日   【字体:

***************************************************************************
;此程序是用单片机的p1口接八个led灯作跑马灯试验,八个led依次亮了又熄灭,形成漂亮
;的跑马灯。本人已经试验成功。
;单片机教程网http://www.51hei.com 原创
;该8路单片机跑马灯程序代码简单,电路也容易搭建,只需把led接在p1口上就可以了,希望大家能试验成功顺利的完成跑马灯报告
;***************************************************************************

org 0000h
ajmp start;跳转到程序开始
org 0030h;定义起始汇编地址
start:
mov a,#0ffh ;
clr c ;
mov r2,#08h ;循环八次。
loop: rlc a ;带进位左移。
mov p1,a ;此时led灯开始有反映了。
call delay ;延时
djnz r2,loop ;循环(djnz条件判断)
mov r2,#07h ;
loop1: rrc a ;带进位右移
mov p1,a ;此时led灯开始有反映了。
call delay ;延时
djnz r2,loop1 ;反复循环
jmp start ;回到程序的开头

delay: mov r3,#20 ;延时子程序
d1: mov r4,#20
d2: mov r5,#248
djnz r5,$
djnz r4,d2
单片机论坛http://www.51hei.com/bbs/ 有更多的跑马灯流水灯试验

---------3路单片机跑马灯程序---------------------------------------
ORG 0000H
LJMP MAIN
ORG 030H
MAIN: MOV P1,#0DBH ;化为2进制为11011011--0状态时led灯亮
ACALL DELay
MOV P1,#06DH ;化为2进制为01101101
ACALL DELay ;
MOV P1,#0B6H ;化为2进制为10110110
ACALL DELay
AJMP MAIN
delay: mov r7,#255
d1: mov r6,#255
d2: djnz r6,d2
djnz r7,d1
ret
end

关闭窗口