您当前的位置:五五电子网电子知识单片机-工控设备51单片机AT89C52超声波测距器 正文
AT89C52超声波测距器

AT89C52超声波测距器

点击数:7303 次   录入时间:03-04 11:49:30   整理:http://www.55dianzi.com   51单片机
;共阳段码表            "0" "1"  "2"   "3"  "4" "5""6"  "7" "8" "9" "不亮""A""-"
;

;****************************************************
;*                    延时程序                      *
;****************************************************
;
             DL1MS: MOV    R6,#14H
             DL1:   MOV    R7,#19H
             DL2:   DJNZ   R7,DL2
                    DJNZ   R6,DL1
                    RET
;
;****************************************************
;*        距离计算程序 (=计数值*17/1000cm)          *
;****************************************************
;
work:     PUSH  ACC
          PUSH  PSW
          PUSH  B
          MOV   PSW, #18h
          MOV   R3,  45H
          MOV   R2,  44H
          MOV   R1,  #00D
          MOV   R0,  #17D
          LCALL MUL2BY2
          MOV   R3,  #03H
          MOV   R2,  #0E8H
          LCALL DIV4BY2
          LCALL DIV4BY2
          MOV   40H, R4
          MOV   A,40H
          JNZ   JJ0
          MOV   40H,#0AH    ;最高位为零,不点亮
JJ0:      MOV   A,  R0
          MOV   R4, A
          MOV   A,  R1
          MOV   R5, A
          MOV   R3,  #00D
          MOV   R2,  #100D
          LCALL DIV4BY2
          MOV   41H, R4
          MOV   A,41H
          JNZ   JJ1
          MOV   A,40H    ;次高位为0,先看最高位是否为不亮
          SUBB  A,#0AH
          JNZ   JJ1
          MOV   41H,#0AH ;最高位不亮,次高位也不亮
JJ1:      MOV   A,  R0
          MOV   R4, A
          MOV   A,  R1
          MOV   R5, A
          MOV   R3,  #00D
          MOV   R2,  #10D
          LCALL DIV4BY2
          MOV   42H, R4
          MOV   A,42H
          JNZ   JJ2
          MOV   A,41H    ;次次高位为0,先看次高位是否为不亮
          SUBB  A,#0AH
          JNZ   JJ2
          MOV   42H,#0AH ;次高位不亮,次次高位也不亮
JJ2:      MOV   43H, R0
          POP   B
          POP   PSW
          POP   ACC
          RET
;
;****************************************************
;*            两字节无符号数乘法程序                *
;****************************************************
; R7R6R5R4 <= R3R2 * R1R0
;
MUL2BY2:  CLR   A
          MOV   R7,  A
          MOV   R6,  A
          MOV   R5,  A
          MOV   R4,  A
          MOV   46H, #10H
MULLOOP1: CLR   C
          MOV   A,   R4
          RLC   A
          MOV   R4,  A
          MOV   A,   R5
          RLC   A

上一页  [1] [2] [3] [4]  下一页


本文关键字:超声波  51单片机单片机-工控设备 - 51单片机