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

📄 am6083b3.asm

📁 用16C505写的汽车防盗器原代码
💻 ASM
📖 第 1 页 / 共 5 页
字号:

;*****************************************
;                SAVE STATUS
;*****************************************
SAVE_PP                                 ;
         MOVLW      30H                 ;
         CALL       OPCODE              ;
         BCF        CS_P                ;
         MOVLW      70H                 ;ADDRESS 30H FOR EEPROM
         CALL       OPCODE              ;

         MOVF       FLAG_T,W            ;STORIGE FLAG OF FLAG_T
         MOVWF      RW0                 ;
         CALL       WRITE               ;

         MOVLW      00H                 ;E/W ENABLE
         CALL       OPCODE              ;
         GOTO       END_PRM
;*****************************************
;**               OPCODE                **
;*****************************************
OPCODE                                  ;
         BANK_0                         ;
         MOVWF      COMMAND             ;    W
         MOVLW      NORA                ;
         TRIS       RB                  ;

         BCF        CLK_P               ;
         MOVLW      09H                 ;
         MOVWF      R1                  ;
         BCF        DIO_P               ;
         BSF        CS_P
         SETC                           ;
;;         GOTO       CONTINUE
CONTINUE                                ;
         CLRWDT                         ;
         SKPNC
         BSF        DIO_P               ;
;;       NOP
         NOP
         BSF        CLK_P               ;
         RLF        COMMAND             ;
;;       GOTO       DLA                 ;
;;DLA                                     ;
         GOTO       OPD                 ;
OPD                                     ;

         BCF        CLK_P               ;
         BCF        DIO_P               ;
         DECFSZ     R1                  ;
         GOTO       CONTINUE            ;
         RETLW      0
;**********************************     ;
;**     READ SECTION (TWICE)     **     ;
;**********************************     ;
READ                                    ;
         MOVLW      EXTA                ;
         TRIS       RB                  ;B11001111
         MOVLW      16D                 ;
         MOVWF      R1                  ;
READ_0                                  ;
         GOTO       READDD              ;
READDD                                  ;
         BSF        CLK_P               ;
         CLRWDT                         ;
         CLRC                           ;
         BTFSC      DIO_P               ;
         SETC                           ;
         RLF        RW0                 ;
         RLF        RW1
         NOP
         BCF        CLK_P               ;
         GOTO       DLB                 ;
DLB                                     ;
         DECFSZ     R1                  ;
         GOTO       READ_0              ;
         GOTO       END_PRM             ;
;**********************************     ;
;**       WRITE TO 93LC46        **     ;
;**********************************     ;
WRITE                                   ;
         MOVLW      NORA                ;
         TRIS       RB                  ;

         MOVLW      16D                 ;16BIT FOR ONE WORD
         MOVWF      R1                  ;
WRITE_0                                 ;
         BCF        DIO_P               ;
         RLF        RW0                 ;
         RLF        RW1                 ;
         SKPNC
         BSF        DIO_P               ;
         NOP
         NOP
         BSF        CLK_P               ;
;;        CLRWDT                         ;
         GOTO       DLC                 ;CLOCK
DLC
         GOTO       WRD                 ;CLOCK
WRD                                     ;
         BCF        CLK_P               ;
         BCF        DIO_P               ;
         DECFSZ     R1                  ;
         GOTO       WRITE_0             ;
         BCF        CS_P                ;
         GOTO       SDF                 ;
SDF                                     ;
         CLRF       RTCC                ;
         BSF        CS_P                ;
                                        ;
CHK                                     ;
         CLRWDT                         ;WATING TIME
         MOVLW      46D                 ;
         SUBWF      RTCC,W              ;
         SKPC                           ;
         GOTO       CHK                 ;
                                        ;
;-----------------------------------------------
END_PRM                                 ;
         BCF        CS_P                ;
         MOVLW  NM
         TRIS   RB
      ;   CLRF   RB			; remove , change 11/18/02  
         MOVLW      B'00000000'         ;
         TRIS       RC                  ;
  ;;     BANK_0                         ;
         RETLW      0                   ;

;*****************************************      ;
;         BUTTOM  FORMAT
;*****************************************
PASS_ALL                                        ;
         MOVLW  NM
         TRIS   RB

         BANK_2                                 ;
         CLRF       DEBUNSS_R                   ;
         BCF        FSR,PA1                     ;BANK 0
;-----------------------------------------      ;
BT1                                             ;S1
         BTFSC      FLAG_T,HIJACK_FG            ;CHECKUP CAR JACKING
         GOTO       BT3                         ;TO CHECKUP HIJACK RELESS
         MOVLW      KEY_1HP                     ;
         XORWF      BUTTON,W                    ;MATCH BUTTEN 1
         SKPZ                                   ;
         GOTO       BT2                         ;
         BTFSC      FLAG_T1,PRESS_FG            ;PRESSED BUTTEN 1
         GOTO       FAIL_XX
         BSF        FLAG_T1,PRESS_FG            ;ACTIVED BUTTEN 1 FUNTION
         BTFSC      FLAG_T,PANIC_FG             ;
         GOTO       END_SFF                     ;

;----------------------------------------------
TTXX                                            ;
;        BTFSC      FLAG_T,VALET_FG             ;
;        GOTO       VALET_S1                    ;
         BTFSS      FLAG_T,ALARM_FG             ;
         BTFSS      FLAG_T2,IGN_ON_FG           ;
         GOTO       JMP_IGN_OFF_S1

VALET_S1                                        ;
         MOVLW      0                           ;S1 OF VALET MODE
         ANDWF      RC                          ;AND ACC ON
         BCF        FLAG_T1,LAMP_ON_FG          ;

;;        BSF        LED_P                       ;
;;        BTFSS      FLAG_T,VALET_FG             ;
;;        BCF        LED_P                       ;

         BSF        FLAG_T5,LOCKUV_FG           ;IN DRIVING
         BSF        LOCK_P                      ;LOCK ACTIVE BY BT1
                                                ;
UNLOCK_XX                                       ;
;;        BTFSC      FLAG_T,VALET_FG             ;
         BTFSC      FLAG_T2,IGN_ON_FG           ;
         GOTO       VALET_NO_FLASH              ;REDY INTO ARME
         PAGE_1
         MOVLW      3                           ;
         BTFSS      FLAG_T5,LOCKUV_FG           ;
         MOVLW      5                           ;
         CALL       SP_ACTIVE_X                 ;
         CALL       GUN_TIMERS

;------------------------------------           ;
VALET_NO_FLASH                                  ;
         PAGE_0
         BANK_2                                 ;
         CLRF       GUN_RAM                     ;
;        BTFSC      FLAG_T,VALET_FG             ;
;        BSF        LED_P
        PAGE_1
         GOTO       END_PANIC_CAR1              ;TURN OFF PANIC
;--------------------------------------------   ;
JMP_IGN_OFF_S1
         BTFSS      FLAG_T,PANIC_FG             ;
         BTFSC      FLAG_T,SIREN_FG             ;
         GOTO       END_SFF
         BCF        FLAG_T,SILENT_FG

SILENT_POINT                                    ;
         PAGE_1                                 ;PAGE_1
         BTFSC      FLAG_T,ALARM_FG             ;
         BTFSC      FLAG_T4,WAIT_ALARM_FG       ;DISARM
         GOTO       ALARM
	 PAGE_0
	 GOTO       CAR_FINDER                  ;INTO CAR FINDER

;------------STOP ALARM-------------------------
END_SFF                                         ;
         BSF        FLAG_T1,PRESS_FG            ;
  	 MOVLW       B'00000000'		;  MOVLW      B'00001000'  	change 11/18/02
	 ANDWF       RC				;  ANDWF      RC  		change 11/18/02       						
         PAGE_1
         GOTO       END_PANIC_CAR2             ;


;-----------------------------------------      ;
BT2                                             ;S2
         MOVLW      KEY_2HP                     ;
         XORWF      BUTTON,W                    ;MATCH BUTTEN 1
         SKPZ                                   ;
         GOTO       BT3                       ;
         BTFSC      FLAG_T1,PRESS_FG            ;PRESSED BUTTEN 1
         GOTO       FAIL_XX
         BSF        FLAG_T1,PRESS_FG            ;ACTIVED BUTTEN 1 FUNTION
         BCF        FLAG_T,SIREN_FG             ;
         BCF        SIREN_P

;        BTFSC      FLAG_T,VALET_FG             ;
;        GOTO       VALET_S2                    ;

         BTFSS      FLAG_T,ALARM_FG
         BTFSS      FLAG_T2,IGN_ON_FG           ;
         GOTO       DISARM            ;

VALET_S2                                        ;BUTTEN 1 IN
         BCF        FLAG_T1,LAMP_ON_FG          ;
         MOVLW      B'00000001'			; MOVLW      B'00001001'   change 11/18/02
         ANDWF      RC				; ANDWF      RC            change 11/18/02

;        BTFSC      FLAG_T,VALET_FG             ;
;        BSF        LED_P                       ;

         BSF        UNLOCK_P                    ;
         BCF        FLAG_T5,LOCKUV_FG           ;
         GOTO       UNLOCK_XX                   ;
                                                ;

;-------------BUTTEN 3----------------------------       ;
BT3                                             ;S3
         MOVLW      KEY_3HP                     ;PRESS BUTTON 2
         XORWF      BUTTON,W                    ;
         SKPZ                                   ;
         GOTO       BT12
         BTFSS      FLAG_T1,PRESS_FG
         BTFSS      FLAG_T,HIJACK_FG
         GOTO       JMP_XXA                     ;

	 BTFSC      FLAG_T2,IGN_ON_FG
         BTFSS      FLAG_T1,I2SEC_FG            ;PRESS BUTTON 2 FOR OVER
         GOTO       FAIL_XX                     ;2SCEONDS TO
         BSF        FLAG_T1,PRESS_FG            ;RELEASS CAR JACKING

OUT_CARJACK

         BCF        SIREN_P                     ;
         BCF        FLAG_T,HIJACK_FG            ;

         PAGE_1
         MOVLW       1
         CALL       LAMP_ACTIVE
         BCF        FLAG_T1,LED_ON_FG           ;
         PAGE_0
         GOTO       START_CC1                   ;DISARM FROM HIJACK


;-----------------------------------------      ;

JMP_XXA
         BTFSC      FLAG_T1,PRESS_FG            ;
         GOTO       FAIL_XX                         ;
         BSF        FLAG_T1,PRESS_FG            ;
;        BTFSC      FLAG_T,VALET_FG
;        GOTO       FAIL_XX
;---------------------------------------------

         BTFSS      FLAG_T,PANIC_FG             ;
         BTFSC      FLAG_T,SIREN_FG
         GOTO       END_SFF

         BTFSC      FLAG_T2,IGN_ON_FG           ;
         GOTO       INTO_CAR_HIJACK
         BSF        FLAG_T,SILENT_FG
         GOTO       SILENT_POINT

INTO_CAR_HIJACK
         BTFSS      DISP_RAM,DIP_ANTICAR_FG     ;
         GOTO       FAIL_XX                    ;
         PAGE_1
         GOTO       ANTI_HIJACK                 ;INTO CAR JACK



;------- PANIC BY BUTTEN 1+2 TRIGGER -----------
BT12                                            ;
         BTFSC      FLAG_T,HIJACK_FG            ;
         GOTO       FAIL_XX                    ;
         MOVLW      KEY_12HP                    ;PRESS KEY1+2
         XORWF      BUTTON,W                    ;
         BTFSS      FLAG_T,PANIC_FG             ;
         SKPZ                                   ;
         GOTO       BT23                       ;

ACT_PANIC                                       ;
         BTFSS      FLAG_T,HIJACK_FG            ;ACTIVE PANIC
         BTFSC      FLAG_T1,PRESS_FG            ;
         GOTO       FAIL_XX                         ;
         BSF        FLAG_T1,PRESS_FG            ;
;        BTFSC      FLAG_T,VALET_FG
;        GOTO       FAIL_XX
        PAGE_1
         GOTO       PANIC                       ;PANIC

;---------------BUTTON 2+3---------------------------
BT23
         BTFSC      FLAG_T,ALARM_FG             ;
         GOTO       FAIL_XX                    ;
         MOVLW      KEY_23                      ;PRESS KEY1+2
         XORWF      BUTTON,W                    ;
         SKPZ                                   ;
         GOTO       FAIL_XX                    ;
         BSF        FLAG_T1,PRESS_FG            ;
         BSF        TRUNK_P                     ;
         GOTO       FAIL_XX                     ;

;-------------------------------------------
;               ALL  DISABLE               -
;-------------------------------------------

⌨️ 快捷键说明

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