51 单片机:键控直流电机

2019-04-15 12:58发布

题目:用AT89C51单片机汇编语言写个控制电动机正反转的程序
P3.0的按钮是控制正转P3.1的按钮是控制反转P3.2的按钮是停止
用最短的汇编语言写出来,如果可以的话请一句句的解释一下。我不会弄中断。
题目链接:http://zhidao.baidu.com/question/1174282245905336899.html
电路如下:51 单片机:键控直流电机 - 非著名博主 - 电子信息角落
电路链接:http://xiangce.baidu.com/picture/detail/ea0d4712e074fe0477b2af599430fd5fcaf7ba9f
这么简单的问题,用不着使用中断。
做而论道编写的程序如下:
;直流电机控制    ORG   0000HP30:JB    P3.0, P31    ;检测按键    CALL  DELAY        ;延时    JB    P3.0, P31    ;消抖    JNB   P3.0, $      ;等待释放    MOV   P2, #01H     ;正转;------------------------P31:JB    P3.1, P32    ;轮流检测    CALL  DELAY    JB    P3.1, P32    JNB   P3.1, $    MOV   P2, #02H     ;反转;------------------------P32:JB    P3.2, P30    CALL  DELAY    JB    P3.2, P30    JNB   P3.2, $    MOV   P2, #03H     ;停转    SJMP  P30;------------------------DELAY:                 ;延时约10ms(fosc = 6MHz)    MOV   R6, #10    DJNZ  R7, $    DJNZ  R6, $ - 2    RET;------------------------END;------------------------
提问者评价:小弟谢过大神了,感激
后记:这程序写的:短小精悍,功能齐全,工作速度极快,并不低于使用中断的方法。