当前位置:首页 > 单片机 > 单片机
[导读] 这是一款0-999999计数器的另一种形式。;****************************org 00hORG 0000HAJMP MAINORG 0030HMAIN:MOV 30H,#00H ;30h--33h is a buffer for four 7-segmentLEDdisplay.MOV 31H,#00H ;at th

 

这是一款0-999999计数器的另一种形式。
;****************************
org 00h
ORG 0000H
AJMP MAIN
ORG 0030H
MAIN:
MOV 30H,#00H ;30h--33h is a buffer for four 7-segmentLEDdisplay.
MOV 31H,#00H ;at the beginning,the four 7-seg led all diaplay zero.

MOV 32H,#00H
MOV 33H,#00H
MOV DPTR,#TAB
MAIN1:
mov 35h,#10
lop1:
MOV 34H,#00 ;34h and 35h is a counter for control the counter time.the 00h equal 256.
LOOP:
MOV A,30H
MOVC A,@A+DPTR
SETB P2.1
CLR P2.6
MOV P0,A
LCALL DELAY
MOV P0,#0FFH ;display the lowest 7-seg led.

MOV A,31H
MOVC A,@A+DPTR
SETB P2.6
CLR P2.5
MOV P0,A
LCALL DELAY
MOV P0,#0FFH

MOV A,32H
MOVC A,@A+DPTR
SETB P2.5
CLR P2.4
MOV P0,A
LCALL DELAY
MOV P0,#0FFH

MOV A,33H
MOVC A,@A+DPTR
SETB P2.4
CLR P2.3
MOV P0,A
LCALL DELAY
MOV P0,#0FFH ;display the highest 7-seg led.

SETB P2.3
CLR P2.2
MOV P0,#28h
LCALL DELAY
MOV P0,#0FFH ;display the highest 7-seg led.

SETB P2.2
CLR P2.1
MOV P0,#28h
LCALL DELAY
MOV P0,#0FFH ;display the highest 7-seg led.


DJNZ 34H,LOOP ;sCANone time,34h decrease one,if 34h decrease to zero,the buffer content will change.

djnz 35h,lop1

INC 30H
MOV A,30H
CJNE A,#10,MAIN1
MOV 30H,#00H ;if 30h increase to 10,then clear 30h and increase 31h.

INC 31H
MOV A,31H
CJNE A,#10,MAIN1
MOV 31H,#00H ;if 31h increase to 10,then clear 31h and increase 32h.

INC 32H
MOV A,32H
CJNE A,#10,MAIN1
MOV 32H,#00H ;if 32h increase to 10,then clear 32h and increase 33h.

INC 33H
MOV A,33H
CJNE A,#10,MAIN2
MOV 33H,#00H ;if 33h increase to 10,then clear 33h and jump to main.
AJMP MAIN

main2: ajmp main1
DELAY:
CLR P3.3
MOV R7,#2
NOP
NOP
D1: MOV R6,#2
SETB P3.3
D2: DJNZ R6,D2
CLR P3.3
DJNZ R7,D1
SETB P3.3
RET
TAB:
DB 28H,7EH,0A2H,62H,74H,61H,21H,7AH,20H,60H

END

 

 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭