英锐恩单片机论坛,Microchip单片机,模拟器件,接口电路,麦肯单片机,单片机应用交流

 找回密码
 立即注册
搜索
电子烟方案单片机单片机开发深圳单片机开发
单片机方案国产单片机8位单片机电子烟方案开发
查看: 3944|回复: 0
打印 上一主题 下一主题

摩托车报警器源程序

[复制链接]
跳转到指定楼层
1#
发表于 2009-5-6 09:57:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ORG 0000H     AJMP MAIN
    RG 0050H
MAIN: MOV P1,#0FFH
      ACALL DD3
LOOP: JNB P3.0,LOOP;判断VT是否有信号
      ACALL DL;延时防抖动
     JB P3.0,START;有信号则启动
     AJMP LOOP;无则返回
START:JNB P3.1,XD1;判断D1信号
      ACALL DL
     JB P3.1,FDSD;有则进入防盗设定
XD1: JNB P3.2,XD2;判断D2信号
     ACALL DL
     JB P3.2,CBA1;有则进入解除防盗
XD2: JNB P3.3,XD3;判断D3信号
     ACALL DL
     JB P3.3,CBA2;有则进入启动暖车
XD3: JNB P3.4,XD4;判断D4信号
     ACALL DL
     JB P3.4,CBA3;有则进入寻车求救
XD4: AJMP LOOP;无D1-D4的信号则返回
CBA1: AJMP JCFD
CBA2: AJMP QDNC
CBA3: AJMP XCQJ
FDSD: MOV R4,#0FH;二级设定键廷时用
      ACALL BJ;一级防盗设定程序,先报警
      CLR P1.1;熄火程序
      SETB P1.2
     ACALL DD2
     SETB P1.1
     ACALL DD1;延时3秒
FD1: JNB P3.5,FD2;判断振动信号
     ACALL DL
     JB P3.5,BZC;有则进入5秒声光报警程序
FD2: JNB P3.7,FD3;判断锁头正电线是否带电
     ACALL DL
     JB P3.7,BZC;有则进入5秒声光报警程序
FD3: JNB P3.0,FD4;判断VT是否有信号
     ACALL DL
     JB P3.2,CBA1
     JB P3.3,CBA2
     JB P3.4,CBA3
     JNB P3.1,CE
     ACALL CDSD;调用二级防盗报警
CE: JB P3.0,MAIN;有则返回
FD4: DJNZ R4,DE
     AJMP FB1 ;超过时间就转回到一级设定等待
DE: AJMP FD1
FB1: JNB P3.5,FB2;判断振动信号
     ACALL DL
JB P3.5,BZC;有则进入5秒声光报警程序
FB2: JNB P3.7,FB3;判断锁头正电线是否带电
     ACALL DL
     JB P3.7,BZC;有则进入5秒声光报警程序
FB3: JNB P3.0,FB4;判断VT是否有信号
     ACALL DL
     JB P3.2,CBA1
     JB P3.3,CBA2
     JB P3.4,CBA3
     JB P3.1,FDSD
FB4: AJMP FB1
CDSD: ACALL BBJ;进入二级无声防盗设定程序
      ACALL DD3;延时3秒
BD1: JNB P3.5,BD2;判断振动信号
     ACALL DL
     JB P3.5,CBZC;有则进入无声灯闪三下报警程序
BD2: JNB P3.7,BD3;判断锁头正电线是否带电
     ACALL DL
     JB P3.7,CBZC;有则进入无声灯闪三下报警程序
BD3: JNB P3.0,BD4;判断VT是否有信号
     ACALL DL
     JB P3.0,V;有则返回
BD4: AJMP BD1
V: AJMP LOOP
CBZC: ACALL CBJS
BZC: ACALL BJS;调用5秒声光报警程序
BG: ACALL DD3;延时3秒
    ACALL DD2;延时2秒
BR: JNB P3.5,BC1;判断振动信号
    ACALL DL
JB P3.5,JJ;有则进入二级15秒报警
BC1: JNB P3.7,BC2;判断锁头正电线是否带电
     ACALL DL
     JB P3.7,JJ;有则进入二级15秒报警
BC2: JNB P3.0,BC3;判断VT是否有信号
     ACALL DL
     JB P3.0,FH;有则返回
BC3: AJMP BD1
F: ACALL DD3;延时3秒
   ACALL DD2;延时2秒
   JNB P3.5,BZC1;判断振动信号
   ACALL DL
   JB P3.5,BJJ;有则进入一级15秒报警
BZC1: JNB P3.7,BZC2;判断锁头正电线是否带电
   ACALL DL
   JB P3.7,BJJ;有则进入一级15秒报警
BZC2: JNB P3.0,BZC3;判断VT是否有信号
   ACALL DL
   JB P3.0,FH;有则返回
BZC3: AJMP FD1
BJJ: ACALL BZJ;调用连续一级15秒声光报警程序
   ACALL DD1
   JNB P3.7,BJJ1;判断锁头正电线是否带电
   ACALL DL
   JB P3.7,XH;有则进入熄火程序
BJJ1: JNB P3.0,BJJ2;判断VT是否有信号
     ACALL DL
     JB P3.0,FH;有则返回
BJJ2: AJMP BJJ
XH: CLR P1.1;熄火程序
    SETB P1.2
    ACALL DD2
    SETB P1.1
    AJMP BJJ
FH: AJMP MAIN
JJ: ACALL BZ;调用二级无灯闪15秒报警程序
    ACALL DD1
    JNB P3.7,JJ1;判断锁头正电线是否带电
    ACALL DL
    JB P3.7,XH;有则进入熄火程序
JJ1: JNB P3.0,JJ2;判断VT是否有信号
    ACALL DL
    JB P3.0,FH;有则返回
JJ2: AJMP JJ
H: CLR P1.1;熄火程序
   SETB P1.2
   ACALL DD2
   SETB P1.1
   AJMP BJJ
CH: AJMP MAIN
JCFD: ACALL BJ;解除防盗程序,声光2次
   ACALL DD1
   ACALL BJ
   CLR P1.1
   SETB P1.2
   ACALL DD2
   AJMP MAIN
QDNC: MOV R3,#32H ;起动廷时用程序
EF: JB P3.0,EF
E1: MOV R4,#0FFH
E2: MOV R5,#0FH
  ACALL DL
HG: JB P3.0,GQ ;检测VT信号
   ACALL DL
  DJNZ R5,$
   DJNZ R4,E2
   DJNZ R3,E1
AJMP LOOP ;廷时时间内无再有信号则返回
GQ: ACALL DL
   JB P3.3,EW;再检测D3信号
  AJMP LOOP
EW: CLR P1.2;有测启动暖车程序
CLR P1.0
ACALL DD2
JB P3.0,$
SETB P1.0
ACALL DD3
AJMP LOOP
XCQJ: MOV R3,#0FH;寻车求救程序(13响)
XCQJ1:ACALL XBJ
ACALL DD1
JNB P3.0,XCQJ2;判断VT是否有信号
ACALL DL
JB P3.0,XCQJ3;有则返回
XCQJ2JNZ R3,XCQJ1
XCQJ3:AJMP LOOP
DL: MOV R6,#0AH;按键延时子程序
DJNZ R6,$
RET
DD3: MOV R5,#09H;3秒延时子程序
D3: MOV R6,#0FFH
D4: MOV R7,#0FFH
DJNZ R7,$
DJNZ R6,D4
DJNZ R5,D3
RET
DD2: MOV R5,#06H;2秒延时子程序
D5: MOV R6,#0FFH
D6: MOV R7,#0FFH
DJNZ R7,$
DJNZ R6,D6
DJNZ R5,D5
RET
DD1: MOV R5,#03H;1秒延时子程序
D0: MOV R6,#0FFH
D1: MOV R7,#0FFH
DJNZ R7,$
DJNZ R6,D1
DJNZ R5,D0
RET
BBJ: CLR P1.3;灯光报警子程序
MOV R6,#0FFH
BB1: MOV R7,#0FFH
DJNZ R7,$
DJNZ R6,BB1
SETB P1.3
RET
XBJ: CLR P1.3;寻车报警子程序
CLR P1.4
MOV R6,#0FFH
XB1: MOV R7,#0FFH
DJNZ R7,$
DJNZ R6,XB1
SETB P1.4
SETB P1.3
RET
BJ: CLR P1.3;报警声子程序
CLR P1.4
MOV R6,#5FH
B1: MOV R7,#0FFH
DJNZ R7,$
DJNZ R6,B1
SETB P1.4
SETB P1.3
RET
STA: AJMP START
   CBJS: AJMP CJCT
   BJS: AJMP BJCT
   BZ: CLR P1.4
   CLR P1.1
   MOV R4,#0FH;二级报警程序(15响)
CQ1: ;无灯闪报警
   ACALL DD1
   JNB P3.0,CB1;判断VT是否有信号
   ACALL DL
   JB P3.0,CB2;有则返回
CB1: DJNZ R4,CQ1
CB2: SETB P1.1
   SETB P1.4
   AJMP BG
BZJ: CLR P1.4
    CLR P1.1
    MOV R4,#0FH;一级防盗报警程序(15响)
CC1: ACALL BBJ ;声光报警
     ACALL DD1
     JNB P3.0,CJ1;判断VT是否有信号
     ACALL DL
     JB P3.0,CJ2;有则返回
CJ1: DJNZ R4,CC1
CJ2: SETB P1.1
     SETB P1.4
     AJMP F
BJCT: CLR P1.4
     MOV R4,#05H;一级防盗报警程序(5声响)
CJ: ACALL BBJ
     ACALL DD1
     JNB P3.0,CAJ1;判断VT是否有信号
     ACALL DL
     JB P3.0,CAJ2;有则返回
CAJ1: DJNZ R4,CJ
CAJ2: SETB P1.1
    SETB P1.4
    AJMP F
CJCT: MOV R4,#03H;二级防盗报警程序(3闪灯)
BJ1: ACALL BBJ
     ACALL DD1
     JNB P3.0,AJ1;判断VT是否有信号
     ACALL DL
     JB P3.0,AJ2;有则返回
AJ1: DJNZ R4,BJ1
AJ2: SETB P1.1
     AJMP BG
     END
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|公司首页|Microchip单片机,模拟器件,接口电路,麦肯单片机,单片机应用交流 ( 粤ICP备09008620号 )

GMT+8, 2024-12-25 11:17 , Processed in 0.056417 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表