标题:
[讨论]如何用三位显示数字呢?
[打印本页]
作者:
熙风
时间:
2009-7-7 16:03
标题:
[讨论]如何用三位显示数字呢?
最近看了2个数码管显示数的模块,如果是三位数码管是否要多用一路端口呢?
这是2个数码管的,三路的该怎么改?
Count EQU 30H
SP1 BIT P3.7
ORG 0
START: MOV Count,#00H
NEXT: MOV A,Count
MOV B,#10
DIV AB
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV P0,A
MOV A,B
MOVC A,@A+DPTR
MOV P2,A
WT: JNB SP1,WT
WAIT: JB SP1,WAIT
LCALL DELY10MS
JB SP1,WAIT
INC Count
MOV A,Count
CJNE A,#100,NEXT
LJMP START
DELY10MS: MOV R6,#20
D1: MOV R7,#248
DJNZ R7,$
DJNZ R6,D1
RET
TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
END
不好意思,本人初学,谢谢大家帮助
作者:
hg1949
时间:
2009-7-7 17:31
最近看了2个数码管显示数的模块,如果是三位数码管是否要多用一路端口呢?
这是2个数码管的,三路的该怎么改?
Count EQU 30H
SP1 BIT P3.7
ORG 0
START: MOV Count,#00H
NEXT: MOV A,Count
MOV B,#100 ;百位
DIV AB ;商A,余b
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV P0,A
MOV A,B
MOV B,#10 ;十位
DIV AB
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV P2,A
MOV A,B ;个位
MOVC A,@A+DPTR
MOV P1,A ;传递到第三位数码管码位,具体看试验板
WT: JNB SP1,WT
WAIT: JB SP1,WAIT
LCALL DELY10MS
JB SP1,WAIT
INC Count
MOV A,Count
CJNE A,#999,NEXT ;这里改成999
LJMP START
DELY10MS: MOV R6,#20
D1: MOV R7,#248
DJNZ R7,$
DJNZ R6,D1
RET
TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
END
作者:
nishibeitina
时间:
2009-7-7 21:08
真好
作者:
熙风
时间:
2009-7-8 07:54
非常感谢!
作者:
小雄
时间:
2009-7-31 15:39
很好~~~
作者:
小雄
时间:
2009-7-31 16:04
那里好像不用改成999哦,好像已经溢出了。
作者:
小雄
时间:
2009-7-31 16:11
最大只能改到255
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1