求一个单片机倒计时十秒的C语言程序,然后LED灯亮(流水灯)的程序.

9到0倒计时

下面是我写的一段代码你看看,不知道是否符合你的要求。用一个八段LED显示数字1-9,并使用指示灯LED判断是否到9秒。 ORG 000BH
AJMP TIME
;----------------程序开始
START: MOV sec,#00H
MOV sec,#00H
MOV TH0,#3CH ;定时器赋初值
MOV TL0,#0B0H
MOV R0,#14H ;计数次数
MOV TMOD,#01H
SETB EA ;开中断
SETB ET0
SETB TR0
CLR LED
;----------------数码扫描开始
MAIN: MOV DPTR,#TAB ;查表TAB
MOV A,MIAO1 ;扫描第1个管子
MOVC A,@A+DPTR
MOV P0,A
CLR P2.0
ACALL DELAY
SETB P2.0
AJMP MAIN ;自身调用,反复扫描
;----------------计时程序开始工作
TIME: PUSH ACC
MOV TH0,#3CH ;重新赋初值
MOV TL0,#0B0H
DJNZ R0,RETUNT ;判断计时是否到一秒
MOV R0,#14H INC sec ;到一秒,“秒1”位加1
MOV A,sec
CJNE A,#09H,RETUNT ;判断是否溢出;
MOV MIAO1,#00H ;秒位溢出,归零
SETB LED
AJMP RETUNT
;----------------返回
RETUNT: POP ACC
RETI
;----------------显示表格
TAB: DB 3FH,06H,5BH,4FH,66H,
DB 6DH,7DH,07H,7FH,6FH
温馨提示:答案为网友推荐,仅供参考