Preliminary W78LE516
- 28 -
MOV IE,#82H ; TIMER0 INTERRUPT ENABLE FOR WAKE-UP FROM IDLE MODE
MOV R6,#FEH ; TL0 = FEH
MOV R7,#FFH ; TH0 = FFH
MOV TL0,R6
MOV TH0,R7
MOV TMOD,#01H ; TMOD = 01H, SET TIMER0 A 16-BIT TIMER
MOV TCON,#10H ; TCON = 10H, TR0 = 1,GO
MOV PCON,#01H ; ENTER IDLE MODE FOR LAUNCHING THE IN-SYSTEM
; PROGRAMMING
;********************************************************************************
;* Normal mode 64KB APROM program: depending user's application
;********************************************************************************
NORMAL_MODE:
. ; User's application program
.
.
.
EXAMPLE 2:
;*****************************************************************************************************************************
;* Example of 4 KB LDROM program: This loader program will erase the 64KB APROM first, then reads the new
;* code from external SRAM and program them into 64 KB APROM bank. XTAL = 16 MHz
;*****************************************************************************************************************************
.chip 8052
.RAMCHK OFF
.symbols
CHPCON EQU BFH
CHPENR EQU F6H
SFRAL EQU C4H
SFRAH EQU C5H
SFRFD EQU C6H
SFRCN EQU C7H
ORG 000H
LJMP 100H ; JUMP TO MAIN PROGRAM
;************************************************************************
;* 1. TIMER0 SERVICE VECTOR ORG = 0BH
;************************************************************************
ORG 000BH
CLR TR0 ; TR0 = 0, STOP TIMER0
MOV TL0,R6
MOV TH0,R7
RETI
;************************************************************************
;* 4KB LDROM MAIN PROGRAM
;************************************************************************
ORG 100H