|
;********************************************************************************
;动态扫描显示895152,8个灯跑动。 数码管数据p0,数码管控制p2 ,8路指示灯p1口 *
;********************************************************************************
;* 日期: 2007-3-25 *
;* 版本: 3.0 *
;* 作者: 深圳学林电子有限公司 专业8051单片机教学站 *
;* 邮箱: sxj1974@163.com *
;* 网站: http://www.51c51.com http://www.8951.com 更多例程请登陆网站 *
;********************************************************************************
;* 硬件:此程序在本公司xlisp系列单片机实验仪运行通过 *
;********************************************************************************
;* 【版权】 Copyright(C)深圳学林电子有限公司 www.51c51.com All Rights Reserved *
;* 【声明】 此程序仅用于学习与参考,引用请注明版权和作者信息! *
;********************************************************************************
org 0000h
ajmp start
org 0080h
start:
mov 30h,#100 ;置循环初值
mov 31h,#0feh ;显示初码
mov a,31h
mov p1,a ;送显示
loop:
mov p0,#0ffh ;关显示
mov p2,#0ffh
clr p2.1 ;选中第一个数码管
mov p0,#20h ;显示8
lcall delay1 ; 延时1ms
mov p0,#0ffh ;关显示
mov p2,#0ffh
clr p2.2 ;选中第二个数码管
mov p0,#60h ;显示9
lcall delay1
mov p2,#0ffh
mov p0,#0ffh
clr p2.3
mov p0,#61h ;显示5
lcall delay1
mov p0,#0ffh
mov p2,#0ffh
clr p2.4
mov p0,#7eh ;显示1
lcall delay1
mov p0,#0ffh
mov p2,#0ffh
clr p2.5
mov p0,#61h ;显示5
lcall delay1
mov p0,#0ffh
mov p2,#0ffh
clr p2.6
mov p0,#0a2h ;显示2
lcall delay1
djnz 30h,loop
mov a,31h
rr a ;移动
mov 31h,a
mov p1,a ;送到p1口显示led
mov 30h,#100
ajmp loop
light1:
mov 32h,#08
mov a,31h
light2:
mov p1,a
lcall delay
rr a
djnz 32h,light2
ret
delay1: ;延时子程序
mov r6,#250
d1:djnz r6,d1
ret
DELAY: ;延时子程序
CLR P3.3
MOV R7,#255
D3 : MOV R6,#255
setb p3.3
D2: DJNZ R6,D2
clr p3.3
DJNZ R7,D3
SETB P3.3
RET
end
[em01][em01] |
|