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

📄 text1.asm

📁 通过两个光电传感器比较两侧的光线强度
💻 ASM
字号:
      ORG 0000H          
      lJMP MAIN       ;转主程序
      ORG 0013H
      LJMP INT11      ;转中断服务程序
      ORG 0100H
MAIN: MOV P1,#0FFH    ;P1口初始化
      MOV R0,#30H
      MOV R1,#02H
      SETB IT1
      SETB EA             
      SETB EX1
      MOV DPTR,#7FF8H
NEXT1:SETB PSW.5
      MOVX @DPTR,A
      JB PSW.5,$
      DJNZ R1,NEXT1   ;两次采样结17束
      MOV A,30H
      SUBB A,31H      ;环境初始化,差异存放于A处
      MOV R5,A
CAIJI:MOV R0,#30H
      MOV R1,#02H
      mov 40h,30h

      MOV DPTR,#7FF8H
NEXT: SETB PSW.5
      MOVX @DPTR,A
      JB PSW.5,$
      DJNZ R1,NEXT   
COMP: mov a,40h
      cjne a,30h,jixu   ;如果数据有变化则跳转,否则重新采样
      MOV P1,#00H
      acall delay
      ajmp caiji
jixu: jnc ahead        ;比原数据小则前进
      MOV A,30H
      subb A,R5        ;加上初始状态的差异
      CJNE A,31H,TURN
      ajmp caiji
ahead:MOV P1,#18H
      acall delay
      ajmp caiji
TURN: JC LEFTT         
      MOV P1,#05H
      acall delay     
      MOV P1,#05H
      acall delay1
      MOV P1,#05H
      acall delay1
      aJMP CAIJI
LEFTT:MOV P1,#03H
      acall delay      
      MOV P1,#03H
      acall delay1
      MOV P1,#03H
      acall delay1
      aJMP CAIJI
      SJMP $


DELAY:mov r4,#05h
   l3:mov r2,#25h
   l1:mov r3,#25h
   l2:nop
      djnz r3,l2
      djnz r2,l1
      djnz r4,l3
      ret

DELAY1:mov r4,#50h
   l31:mov r2,#25h
   l11:mov r3,#25h
   l21:nop
      djnz r3,l21
      djnz r2,l11
      djnz r4,l31
      ret

      ORG 0300H
INT11:MOVX A,@DPTR     
      MOV @R0,A
      INC DPTR
      INC R0
      CLR PSW.5
      RETI
      END

⌨️ 快捷键说明

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