⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chip cam open&short test3_a(20pin).asm

📁 这个代码是我本人写的一个通断测试仪
💻 ASM
字号:
OUT_3V3        BIT        P0.0
SYNC_SIGNAL    BIT        P0.6
DGND           BIT        P1.6

ORG     0000H
AJMP    PROG_MAIN
ORG     0030H

PROG_MAIN:
        CLR     EA
        MOV     SP,     #70H
        MOV     A,      #00H
        MOV     P1,     A                       ;打开所有的输出MOSFET(使测试LED不受此端影响)
        MOV     P2,     A
        MOV     P3,     A
        CLR     OUT_3V3                         ;将3.3V输出开启(断路测试时开)
        SETB    SYNC_SIGNAL                     ;将同步信号关断(高有效)
        LCALL   D250MS
        LCALL   D250MS                          ;等待接收端LED测试完成
        LCALL   D250MS
        
        MOV     A,      #0FFH
        MOV     P1,     A                       ;关掉所有的输出MOSFET,进入短路测试模式
        MOV     P2,     A
        MOV     P3,     A
        SETB    OUT_3V3                         ;将3.3V输出关断 ,进入短路测试模式
        LCALL   D250MS
        MOV     R0,     #7FH                    ;R0=SCAN WORD

OUTP1:  MOV     A,      R0
        RL      A
        MOV     R0,     A
        MOV     P1,     A
        LCALL   D1MS
        CLR     SYNC_SIGNAL
        NOP
        NOP
        NOP
        NOP
        NOP
        NOP
        NOP
        NOP
        SETB    SYNC_SIGNAL
        LCALL   D1MS
        CJNE    R0,     #7FH,    OUTP1
        MOV     P1,     #0FFH

OUTP2:  MOV     A,      R0
        RL      A
        MOV     R0,     A
        MOV     P2,     A
        LCALL   D1MS
        CLR     SYNC_SIGNAL
        NOP
        NOP
        NOP
        NOP
        NOP
        NOP
        NOP
        NOP
        SETB    SYNC_SIGNAL
        LCALL   D1MS
        CJNE    R0,     #7FH,    OUTP2
        MOV     P2,     #0FFH

OUTP3:  MOV     A,      R0
        RL      A
        MOV     R0,     A
        MOV     P3,     A
        LCALL   D1MS
        CLR     SYNC_SIGNAL
        NOP
        NOP
        NOP
        NOP
        NOP
        NOP
        NOP
        NOP
        SETB    SYNC_SIGNAL
        LCALL   D1MS
        CJNE    R0,     #0F7H,    OUTP3
        MOV     P3,     #0FFH

OPEN:   CLR     OUT_3V3
        CLR     DGND
        LCALL   D250MS
        CLR     SYNC_SIGNAL
        NOP
        NOP
        NOP
        NOP
        NOP
        NOP
        NOP
        NOP
        SETB    SYNC_SIGNAL
        LCALL   D1MS
        LCALL   D1MS
        MOV     P1,     #00H
        MOV     P2,     #00H
        MOV     P3,     #00H
        AJMP    $

D1MS:   MOV     R1,     #10
   D6:  MOV     R2,     #250
   D3:  DJNZ    R2,     D3
        DJNZ    R1,     D6
        RET

D50MS:  MOV     R1,     #50
   D1:  MOV     R2,     #250
   D2:  DJNZ    R2,     D2
        DJNZ    R1,     D1
        RET

D250MS: MOV     R1,     #250
   D5:  MOV     R2,     #250
   D4:  DJNZ    R2,     D4
        DJNZ    R1,     D5
        RET

END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -