毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

自动往返电动小汽车系统设计 第5页

更新时间:2010-2-23:  来源:毕业论文
自动往返电动小汽车系统设计 第5页
  CLR   PT1     ;恢复T1为低优先级
       SETB  P1.6     ;开7.5V电源(高速)
       CLR   P1.7     ;关4.3V
       CLR   P1.0     ;电机电源开
       CPL   30H     ;停车点位置判断标志取反
       JB   30H,STREN    ;为1(中途停车)转STREN
       LCALL  CLR00     ;是终点,调复0程序
 STREN:    RET      ;返回
CLR00:      MOV  70H,#00H     ;计时单元清0
         MOV  71H,#00H     ;计时单元清0
         MOV  72H,#00H     ;计时单元清0
         MOV  73H,#00H     ;计时单元清0
         RET        ;返回
;*  外中断1程序,里程计数用    *
;*  20H、21H、22H、24H作计数器   *
INTEX1:     PUSH  ACC       ;堆栈保护
         PUSH  PSW       ;
         CLR  EX1       ;关外中断1
         INC  20H       ;圈加1
 LLLL:     MOV  A,20H     ;判断是否满6圈
         CJNE  A,#06H,LLL    ;不满6圈转LLL退出
         MOV  20H,#00H     ;满6圈清0进位(6圈为1米)
         INC  21H       ;上位加1
         MOV  A,21H     ;判断是否满10
         CJNE  A,#0AH,LLL    ;不满10转LLL
         MOV  21H,#00H     ; 满10清0进1位
         INC  22H       ; 高位加1
         MOV  A,22H     ; 判断是否满10
         CJNE  A,#0AH,LLL    ; 不满10转LLL
         MOV  22H,#00H     ; 满10清0进1位
         INC  24H      ; 高位加1
         MOV  A,24H     ; 判断是否满10
         CJNE  A,#0AH,LLL    ; 不满10转LLL
         MOV  24H,#00H     ; 满10清0
LLL:       MOV  74H,21H     ; 将里程数移入显示单元(个位)
         MOV  75H,22H     ; 将里程数移入显示单元(十位)
         MOV  76H,24H     ; 将里程数移入显示单元(百位)
IN1RET:     POP  PSW      ;恢复堆栈
         POP  ACC     ;
         SETB  EX1      ;开外中断1
         RETI      ;中断返回
INTT1:       PUSH  ACC     ;堆栈保护
          PUSH  PSW     ;
          MOV TL1,#0B0H   ;赋50毫秒定时初值
          MOV TH1,#3CH    ;
          DEC R4     ;减1
          MOV A,R4     ;
          JNZ RETT0    ;不为0转RETT0
          MOV R4,#14H    ;为0(1秒到)重赋初值
          MOV R0,#71H    ;地址指向71H
          ACALL ADD1     ;加1秒操作
          MOV A,R3     ;
          CLR C     ;
          CJNE A,#60H,CC   ;是否为60秒?
CC:   JC RETT0    ;小于60转RETT0
          ACALL CLR0    ;大于或等于60清0
          MOV R0,#73H    ;指向分计时地址单元
          ACALL ADD1     ;分加1
          MOV A,R3     ;
          CLR C     ;
          CJNE A,#60H,CCC   ;是否为60分?
CCC:   JC   RETT0     ;小于60转RETT0
          ACALL CLR0     ;大于或等于60分计时单元清0
 RETT0:   POP  PSW     ;恢复堆栈
          POP  ACC     ;
          RETI      ;中断返回
 ADD1:   MOV A,@R0     ;取计数值
          DEC R0      ;指向低一个地址
          SWAP A      ;计数值高低四位交换
          ORL  A,@R0     ;相或组合成一个数据
          ADD  A,#01H     ;加1
          DA  A      ;十进制调整
          MOV  R3,A     ;暂存R3内
          ANL  A,#0FH     ;高四位变0
          MOV @R0,A     ;放回低地址
          MOV A,R3     ;取回R3内数据
          INC R0      ;地址加1
          SWAP A      ;高低四位交换
          ANL  A,#0FH     ;高四位为0
          MOV @R0,A     ;放回原地址
          RET       ;返回
CLR0:   CLR A      ;清A
          MOV  @R0,A     ;对应地址单元清0
          DEC R0      ;指向低一地址
          MOV @R0,A     ;清0
          RET       ;返回
DISP:   MOV R1,#70H     ;显示数据首址
          MOV R5,#0FEH     ;扫描字
PLAY:   MOV A,R5      ;扫描字入A
          MOV P2,A      ;从P2口输出
          MOV A,@R1     ;取显示数据
          MOV DPTR,#TAB     ;取段码表首址
          MOVC A,@A+DPTR     ; 查数据对应段码
          MOV P0,A      ;段码从P0口输出
          LCALL DL1MS    ;点亮1毫秒
          INC R1      ;指向下显示数地址

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

自动往返电动小汽车系统设计 第5页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。