; original File = D:\downloads IDM\Compressed\micro\Source Code PR13\PR13.hex
processor 16F876A
#include <P16F876A.INC>
__config 0x3F32
; _CP_OFF & _DEBUG_OFF & _WRT_OFF & _CPD_OFF & _LVP_OFF & _BODEN_OFF & _PWRTE_ON
; & _WDT_OFF & _HS_OSC
; RAM-Variable
LRAM_0x20 equ 0x20
LRAM_0x21 equ 0x21
LRAM_0x22 equ 0x22
LRAM_0x23 equ 0x23
LRAM_0x24 equ 0x24
; Program
Org 0x0000
; Reset-Vector
LADR_0x0000
MOVLW 0x20
MOVWF FSR
MOVLW 0x25
CALL LADR_0x000A
; Interrupt-Vector
BCF PCLATH,4 ; !!Bank Program-Page-Select
BCF PCLATH,3 ; !!Bank Program-Page-Select
GOTO LADR_0x0745
LADR_0x0007
XORWF FSR,W
CLRF INDF
INCF FSR,F
LADR_0x000A
XORWF FSR,W
BTFSS STATUS,Z
GOTO LADR_0x0007
CLRWDT
RETLW 0x00
Org 0x0719
LADR_0x0719
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF STATUS,RP1 ; !!Bank Register-Bank(2/3)-Select
MOVF LRAM_0x24,W
IORWF LRAM_0x23,W
IORWF LRAM_0x22,W
IORWF LRAM_0x21,W
BTFSS STATUS,Z
GOTO LADR_0x0722
GOTO LADR_0x0723
LADR_0x0722
GOTO LADR_0x0724
LADR_0x0723
GOTO LADR_0x0742
LADR_0x0724
MOVLW 0xFF
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF STATUS,RP1 ; !!Bank Register-Bank(2/3)-Select
ADDWF LRAM_0x21,F
MOVLW 0xFF
BCF STATUS,Z
BTFSC STATUS,C
ADDLW 0x01
BTFSS STATUS,Z
ADDWF LRAM_0x22,F
MOVLW 0xFF
BCF STATUS,Z
BTFSC STATUS,C
ADDLW 0x01
BTFSS STATUS,Z
ADDWF LRAM_0x23,F
MOVLW 0xFF
BCF STATUS,Z
BTFSC STATUS,C
ADDLW 0x01
BTFSS STATUS,Z
ADDWF LRAM_0x24,F
MOVF LRAM_0x24,W
IORWF LRAM_0x23,W
IORWF LRAM_0x22,W
IORWF LRAM_0x21,W
BTFSS STATUS,Z
GOTO LADR_0x0741
GOTO LADR_0x0742
LADR_0x0741
GOTO LADR_0x0724
LADR_0x0742
BCF STATUS,RP1 ; !!Bank Register-Bank(2/3)-Select
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
RETURN
LADR_0x0745
MOVLW 0xFF
BSF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF STATUS,RP1 ; !!Bank Register-Bank(2/3)-Select
MOVWF PORTB ; !!Bank!! PORTB - TRISB - PORTB - TRISB
CLRF PORTC ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
MOVLW 0xFF
MOVWF PORTA ; !!Bank!! PORTA - TRISA - Unimplemented - Unimplemented
MOVLW 0x06
MOVWF ADCON0 ; !!Bank!! ADCON0 - ADCON1 - Unimplemented - Unimplemented
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF PORTC,0 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
CLRF LRAM_0x20
BCF PORTC,1 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BCF PORTC,2 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BCF PORTC,3 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
LADR_0x0754
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF STATUS,RP1 ; !!Bank Register-Bank(2/3)-Select
BTFSC PORTB,0 ; !!Bank!! PORTB - TRISB - PORTB - TRISB
GOTO LADR_0x0759
GOTO LADR_0x075A
LADR_0x0759
GOTO LADR_0x0760
LADR_0x075A
CLRF LRAM_0x20
INCF LRAM_0x20,F
BSF PORTC,1 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BCF PORTC,2 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BCF PORTC,3 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
GOTO LADR_0x0777
LADR_0x0760
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF STATUS,RP1 ; !!Bank Register-Bank(2/3)-Select
BTFSC PORTB,1 ; !!Bank!! PORTB - TRISB - PORTB - TRISB
GOTO LADR_0x0765
GOTO LADR_0x0766
LADR_0x0765
GOTO LADR_0x076C
LADR_0x0766
MOVLW 0x02
MOVWF LRAM_0x20
BCF PORTC,1 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BSF PORTC,2 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BCF PORTC,3 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
GOTO LADR_0x0777
LADR_0x076C
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF STATUS,RP1 ; !!Bank Register-Bank(2/3)-Select
BTFSC PORTB,2 ; !!Bank!! PORTB - TRISB - PORTB - TRISB
GOTO LADR_0x0771
GOTO LADR_0x0772
LADR_0x0771
GOTO LADR_0x0777
LADR_0x0772
MOVLW 0x03
MOVWF LRAM_0x20
BCF PORTC,1 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BCF PORTC,2 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BSF PORTC,3 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
LADR_0x0777
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF STATUS,RP1 ; !!Bank Register-Bank(2/3)-Select
BTFSS PORTA,0 ; !!Bank!! PORTA - TRISA - Unimplemented - Unimplemented
GOTO LADR_0x077C
GOTO LADR_0x077D
LADR_0x077C
GOTO LADR_0x07FB
LADR_0x077D
DECF LRAM_0x20,W
BTFSS STATUS,Z
GOTO LADR_0x0781
GOTO LADR_0x0782
LADR_0x0781
GOTO LADR_0x07A6
LADR_0x0782
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF STATUS,RP1 ; !!Bank Register-Bank(2/3)-Select
BSF PORTC,1 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BSF PORTC,2 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BSF PORTC,3 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
MOVLW 0x50
MOVWF LRAM_0x21
MOVLW 0xC3
MOVWF LRAM_0x22
MOVLW 0x00
MOVWF LRAM_0x23
MOVLW 0x00
MOVWF LRAM_0x24
BCF PCLATH,4 ; !!Bank Program-Page-Select
BCF PCLATH,3 ; !!Bank Program-Page-Select
CALL LADR_0x0719
BCF PCLATH,4 ; !!Bank Program-Page-Select
BCF PCLATH,3 ; !!Bank Program-Page-Select
BCF PORTC,1 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BCF PORTC,2 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BCF PORTC,3 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
MOVLW 0x50
MOVWF LRAM_0x21
MOVLW 0xC3
MOVWF LRAM_0x22
MOVLW 0x00
MOVWF LRAM_0x23
MOVLW 0x00
MOVWF LRAM_0x24
BCF PCLATH,4 ; !!Bank Program-Page-Select
BCF PCLATH,3 ; !!Bank Program-Page-Select
CALL LADR_0x0719
BCF PCLATH,4 ; !!Bank Program-Page-Select
BCF PCLATH,3 ; !!Bank Program-Page-Select
GOTO LADR_0x0782
GOTO LADR_0x07FB
LADR_0x07A6
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF STATUS,RP1 ; !!Bank Register-Bank(2/3)-Select
MOVF LRAM_0x20,W
XORLW 0x02
BTFSS STATUS,Z
GOTO LADR_0x07AD
GOTO LADR_0x07AE
LADR_0x07AD
GOTO LADR_0x07CE
LADR_0x07AE
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF STATUS,RP1 ; !!Bank Register-Bank(2/3)-Select
BSF PORTC,0 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
MOVLW 0x50
MOVWF LRAM_0x21
MOVLW 0xC3
MOVWF LRAM_0x22
MOVLW 0x00
MOVWF LRAM_0x23
MOVLW 0x00
MOVWF LRAM_0x24
BCF PCLATH,4 ; !!Bank Program-Page-Select
BCF PCLATH,3 ; !!Bank Program-Page-Select
CALL LADR_0x0719
BCF PCLATH,4 ; !!Bank Program-Page-Select
BCF PCLATH,3 ; !!Bank Program-Page-Select
BCF PORTC,0 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
MOVLW 0x50
MOVWF LRAM_0x21
MOVLW 0xC3
MOVWF LRAM_0x22
MOVLW 0x00
MOVWF LRAM_0x23
MOVLW 0x00
MOVWF LRAM_0x24
BCF PCLATH,4 ; !!Bank Program-Page-Select
BCF PCLATH,3 ; !!Bank Program-Page-Select
CALL LADR_0x0719
BCF PCLATH,4 ; !!Bank Program-Page-Select
BCF PCLATH,3 ; !!Bank Program-Page-Select
GOTO LADR_0x07AE
GOTO LADR_0x07FB
LADR_0x07CE
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF STATUS,RP1 ; !!Bank Register-Bank(2/3)-Select
MOVF LRAM_0x20,W
XORLW 0x03
BTFSS STATUS,Z
GOTO LADR_0x07D5
GOTO LADR_0x07D6
LADR_0x07D5
GOTO LADR_0x07FB
LADR_0x07D6
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF STATUS,RP1 ; !!Bank Register-Bank(2/3)-Select
BSF PORTC,1 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BSF PORTC,2 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BSF PORTC,3 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BSF PORTC,0 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
MOVLW 0x50
MOVWF LRAM_0x21
MOVLW 0xC3
MOVWF LRAM_0x22
MOVLW 0x00
MOVWF LRAM_0x23
MOVLW 0x00
MOVWF LRAM_0x24
BCF PCLATH,4 ; !!Bank Program-Page-Select
BCF PCLATH,3 ; !!Bank Program-Page-Select
CALL LADR_0x0719
BCF PCLATH,4 ; !!Bank Program-Page-Select
BCF PCLATH,3 ; !!Bank Program-Page-Select
BCF PORTC,1 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BCF PORTC,2 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BCF PORTC,3 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
BCF PORTC,0 ; !!Bank!! PORTC - TRISC - Unimplemented - Unimplemented
MOVLW 0x50
MOVWF LRAM_0x21
MOVLW 0xC3
MOVWF LRAM_0x22
MOVLW 0x00
MOVWF LRAM_0x23
MOVLW 0x00
MOVWF LRAM_0x24
BCF PCLATH,4 ; !!Bank Program-Page-Select
BCF PCLATH,3 ; !!Bank Program-Page-Select
CALL LADR_0x0719
BCF PCLATH,4 ; !!Bank Program-Page-Select
BCF PCLATH,3 ; !!Bank Program-Page-Select
GOTO LADR_0x07D6
LADR_0x07FB
GOTO LADR_0x0754
CLRF STATUS
BCF PCLATH,4 ; !!Bank Program-Page-Select
BCF PCLATH,3 ; !!Bank Program-Page-Select
GOTO LADR_0x0000
End
kesigan07 WROTE:Error[126] D:\DOWNLOADS IDM\MICRO\SOURCE CODE PR13.ASM 295 : Argument out of range (07D6 not between 0000 and 03FF)..the coding are as below:-
Users browsing this forum: No registered users and 16 guests