以前写过一个使用 8155 的文章,可见:
http://hi.baidu.com/do_sermon/item/59a91304a43caf046c90489a
现在又有这样一个题目:
http://zhidao.baidu.com/question/1883284845551915188.html
http://hi.baidu.com/kbkgpitkhtbbksq/item/f71dbf3bd7ae66192e20c438
实验箱是8031单片机,连接了一个8155。
8155的A口字形输出,B口字位输出,
8155 IO/M 连接 8031 P2.0,
8155CE 连 P2.7连8155CE。
呵呵,这个电路,和做而论道前面写的文章,电路是相同的。
为此题目,做而论道编写的程序如下:
;=====================================================
ORG 0000H
JMP START
ORG 000BH
JMP T0_INT
;---------------------------
START:
MOV DPTR, #0100H
MOV A, #03H
MOVX @DPTR, A
MOV TMOD, #01H
MOV TH0, #9EH
MOV TL0, #58H
SETB TR0
MOV IE, #82H
MOV SP, #60H
MOV R3, #20
CLR A
MOV R4, A
MOV R5, A
MOV R6, A
;---------------------------
HERE:
MOV R0, #06H
MOV R1, #127
MOV R2, #3
LOP:MOV A, @R0
MOV B, #10
DIV AB
CALL DISP_ONE
MOV A, B
CALL DISP_ONE
DEC R0
DJNZ R2, LOP
LJMP HERE
;---------------------------
DISP_ONE:
MOV DPTR, #DISTAB
MOVC A, @A + DPTR
MOV DPTR, #0101H
MOVX @DPTR, A
INC DPTR
MOV A, R1
MOVX @DPTR, A
RR A
MOV R1, A
DJNZ R7, $
DJNZ R7, $
MOV A, #255
MOVX @DPTR, A
RET
DISTAB:
DB 0FCH, 60H,0DAH,0F2H, 66H,0B6H,0BEH,0E0H,0FEH,0F6H
;---------------------------
T0_INT:
MOV TH0, #9EH
MOV TL0, #58H
DJNZ R3, T0_EXIT
MOV R3, #5; 40
INC R4
CJNE R4, #60, T0_EXIT
MOV R4, #0
INC R5
CJNE R5, #60, T0_EXIT
MOV R5, #0
INC R6
CJNE R6, #24, T0_EXIT
MOV R6, #0
T0_EXIT:
RETI
END
;=====================================================
利用 PROTEUS 仿真,截图如下:
插图不显示,可点击图片链接:
http://xiangce.baidu.com/picture/detail/20e8f7cc6edd8f3dd23a375d8368e8d928abf05e
也可以点击前面给出的题目链接,去看图。
仿真是成功了。但是,在实验箱中来做,可不一定就能成功。
因为实验箱中数码管的驱动电路,可能要复杂一些。
提问者在题目中,对硬件电路,也没有仔细的描述,也就只能这样了。