在 51 单片机系统中使用 8155(2)

来源:互联网 发布:windows ad域管理软件 编辑:程序博客网 时间:2024/05/21 11:12

以前写过一个使用 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 仿真,截图如下:

在 51 单片机系统中使用 8155(2) - 非著名博主 - 电子信息角落

插图不显示,可点击图片链接:

http://xiangce.baidu.com/picture/detail/20e8f7cc6edd8f3dd23a375d8368e8d928abf05e


也可以点击前面给出的题目链接,去看图。


仿真是成功了。但是,在实验箱中来做,可不一定就能成功。


因为实验箱中数码管的驱动电路,可能要复杂一些。


提问者在题目中,对硬件电路,也没有仔细的描述,也就只能这样了。


0 0