您的位置:首页 > 其它

51单片机,汇编语言,按键操作控制

2016-01-25 12:01 218 查看
硬件电路:

P1.0 ~ P1.5 外接 6 个 LED,分别称为 D1 ~ D6,低电平发光。

P0.0 ~ P0.3 外接 4 个 按键,分别称为 K1 ~ K4。
P3.2 ~ P3.3 外接 2 个 按键,分别称为 K5 ~ K6。

用汇编语言编程进行控制,要求:

当按下 K1 时,D1 发光;
按下 K2 时,D2、D3 发光;
按下 K3 时,D4、D5、D6 发光;
按下 K4 时,D1、D3、D6 发光;
按下 K5 时,全部熄灭;
按下 K6 时,全亮。

用查询方式完成上述动作。
 
做而论道编写的程序如下:

                          2013-04-19 23:06

    ORG   0000H

START:
    JNB   P0.0, K1
    JNB   P0.1, K2
    JNB   P0.2, K3
    JNB   P0.3, K4
    JNB   P3.2, K5
    JNB   P3.3, K6
    SJMP  START
;-----------------------
K1:
    CALL  DL10MS
    JB    P0.0, START
    JNB   P0.0, $
    CLR   P1.0     ;按下K1键时,D1二极管发光;
    SJMP  START
;-----------------------
K2:
    CALL  DL10MS
    JB    P0.1, START
    JNB   P0.1, $
    CLR   P1.1     ;按下K2键时,D2、D3发光;
    CLR   P1.2
    SJMP  START
;-----------------------
K3:
    CALL  DL10MS
    JB    P0.2, START
    JNB   P0.2, $
    CLR   P1.3     ;按下K3键时,D4、D5、D6发光;
    CLR   P1.4
    CLR   P1.5
    SJMP  START
;-----------------------
K4:
    CALL  DL10MS
    JB    P0.3, START
    JNB   P0.3, $
    CLR   P1.0     ;按下K4键时,D1、D3、D6发光。
    CLR   P1.4
    CLR   P1.5
    SJMP  START
;-----------------------
K5:
    CALL  DL10MS
    JB    P3.2, START
    JNB   P3.2, $
    MOV   P1, #255 ;按下K5是全部熄灭;
    SJMP  START
;-----------------------
K6:
    CALL  DL10MS
    JB    P3.3, START
    JNB   P3.3, $
    MOV   P1, #0   ;按下K6是全亮;
    SJMP  START
;-----------------------
DL10MS:
    MOV   R6, #10
    DJNZ  R7, $
    DJNZ  R7, $
    DJNZ  R6, $ - 4
    RET
;-----------------------
END

回答提交后,百度知道就抽风了,给出了如下提示:

>_<!! 您的回答可能违反了知道内容规范,暂时仅您自己可见。可发起申诉找回。

呵呵,这种情况,见得多了,进行投诉,也可能正常显示,但是,往往都是晚三秋了。

原题网址:http://zhidao.baidu.com/question/542487454.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: