
HT48R06A-1
7
November 29, 2000
Certain locations in the program memory are
reserved for special usage:
Location 000H
This area is reserved for program initializa-
tion. After chip reset, the program always be-
gins execution at location 000H.
Location 004H
This area is reserved for the external inter-
rupt service program. If the INT input pin is
activated, the interrupt is enabled and the
stackisnotfull,theprogrambeginsexecution
at location 004H.
Location 008H
This area is reserved for the timer/event coun-
ter interrupt service program. If a timer inter-
rupt results from a timer/event counter
overflow,andiftheinterruptisenabledandthe
stack is not full, the program begins execution
at location 008H.
Table location
Any location in the PROM space can be used
as look-up tables. The instructions "TABRDC
[m]" (the current page, 1 page=256 words)
and "TABRDL [m]" (the last page) transfer
the contents of the lower-order byte to the
specified data memory, and the higher-order
byte to TBLH (08H). Only the destination of
the lower-order byte in the table is
well-defined, the other bits of the table word
are transferred to the lower portion of TBLH,
and the remaining 2 bits are read as "0". The
Table Higher-order byte register (TBLH) is
read only. The table pointer (TBLP) is a
read/write register (07H), which indicates the
table location. Before accessing the table, the
location must be placed in TBLP. The TBLH
is read only and cannot be restored. If the
main routine and the ISR (Interrupt Service
Mode
Program Counter
*9
*8
*7
*6
*5
*4
*3
*2
*1
*0
Initial Reset
0
0
0
0
0
0
0
0
0
0
External Interrupt
0
0
0
0
0
0
0
1
0
0
Timer/Event Counter Overflow
0
0
0
0
0
0
1
0
0
0
Skip
PC+2
Loading PCL
*9
*8
@7
@6
@5
@4
@3
@2
@1
@0
Jump, Call Branch
#9
#8
#7
#6
#5
#4
#3
#2
#1
#0
Return from Subroutine
S9
S8
S7
S6
S5
S4
S3
S2
S1
S0
Program counter
Note: *9~*0: Program counter bits
S9~S0: Stack register bits
#9~#0: Instruction code bits
@7~@0: PCL bits
= 1 / %
. >
6 6 >
. 6 6 >
# * + # ' ,
$ , * # 2
$ 1 & $. 1 / 1 ' ( 1 @ ' / 1 * . # * + # ' ,
9 / $ # . ' ( / $ # # - 0 /- = # * - / 1 . $
1 , $ # $ . /* - . / $ # / $ # # - 0 /- = # * - / 1 . $
* * < : - 0 ' = ( $ 7A * # 3 % 8
* * < : - 0 ' = ( $ 7A * # 3 % 8
* / $ B # ' . + $ % ) # * , / *
>
>
>
Program memory