51单片机汇编语言:定时器与中断

来源:互联网 发布:南京新大陆软件怎么样 编辑:程序博客网 时间:2024/06/16 11:12


P2.0~P2.2 分别接上了独立按键 K0、K1、K2。


P1 接上了 8 个 LED,输出低电平时发光。


要求:


按下 K1 键,P1.7 输出周期为 1s 的方波;


按下 K2 键,P1 输出循环流水灯,每 2 个灯亮 0.5s;


按下 K0 键,停止方波和流水灯的输出。


题目链接:http://zhidao.baidu.com/question/1174144495181691139.html


做而论道编写的程序如下:(2014-05-07 20:55 提问者采纳)


;-----------------------------------------

;

    ORG   0000H

    JMP   START

    ORG   000BH

;    JMP   T0_INT

T0_INT:

    MOV   TH0, #(65536 - 50000) / 256

    MOV   TL0, #(65536 - 50000) MOD 256

    DJNZ  R2, T0_END

    MOV   R2, #10

    JNB   F0, T0_2

    ORL   P1, #127

    CPL   P1.7

T0_END:

    RETI

T0_2:

    RL    A

    MOV   P1, A

    RETI    

;-----------------------------------------

START:

    MOV   TMOD, #01H

    MOV   TH0, #(65536 - 50000) / 256

    MOV   TL0, #(65536 - 50000) MOD 256

    MOV   IE, #82H


    MOV   A, #63

    MOV   R2, #10

    SETB  TR0

K1:

    JB    P2.1, K2

    SETB  F0

    SETB  TR0

K2:

    JB    P2.2, K0

    CLR   F0

    SETB  TR0

K0:

    JB    P2.0, K1

    CLR   TR0

    SJMP  K1

END

;-----------------------------------------


以上程序,已经通过实验的检验,符合题目要求。


提问者评价:谢谢。


1 0
原创粉丝点击