HT45R34 Holtek Semiconductor, HT45R34 Datasheet - Page 6

no-image

HT45R34

Manufacturer Part Number
HT45R34
Description
C/R to F Type 8-Bit OTP MCU
Manufacturer
Holtek Semiconductor
Datasheet
www.DataSheet4U.com
Program Memory
The program memory is used to store the program in-
structions which are to be executed. It also contains
data, table, and interrupt entries, and is organized into
1024 14 bits, addressed by the program counter and ta-
ble pointer.
Certain locations in the program memory are reserved
for special usage:
Note: *9~*0: Table location bits
Rev. 1.20
TABRDC [m]
TABRDL [m]
Location 000H
This area is reserved for program initialisation. After a
device reset, the program always begins execution at
location 000H.
Location 004H
This location is reserved for the external interrupt 0
service program. If the INT0 input pin is activated, the
interrupt is enabled and the stack is not full, the pro-
gram begins execution at this location.
Location 008H
This location is reserved for the external interrupt 1
service program. If the INT1 input pin is activated, the
interrupt is enabled and the stack is not full, the pro-
gram begins execution at this location.
Location 00CH
This location is reserved for the Timer/Event Counter
interrupt service program. If a Timer interrupt results
from a Timer/Event Counter overflow, and the inter-
rupt is enabled and the stack is not full, the program
begins execution at this location.
Instruction
@7~@0: Table pointer bits
Program Memory
P9
*9
1
P8
*8
1
@7
@7
*7
@6
@6
*6
Table Location
6
Table Location
@5
@5
*5
Stack Register - STACK
This is a special part of the memory which is used to save
the contents of the program counter only. The stack is
organised into 4-levels and is neither part of the data nor
part of the program space, and is neither readable nor
writable. The activated level is indexed by the stack
pointer, SP and is neither readable nor writeable. At a
subroutine call or interrupt acknowledgment, the con-
tents of the program counter are pushed onto the stack.
At the end of a subroutine or an interrupt routine, signaled
P9~P8: Current program counter bits
Location 010H
This location is reserved for the external RC oscilla-
tion converter interrupt service program. If an interrupt
results from an external RC oscillation converter, and
if the interrupt is enabled and the stack is not full, the
program begins execution at this location.
Table location
Any location in the program memory can be used as a
look-up table. The instructions TABRDC [m] (the
current page, 1 page=256 words) and TABRDL [m]
transfer the contents of the lower-order byte to the
specified data memory, and the higher-order byte to
TBLH. 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 ta-
ble pointer, TBLP, is a read/write register, which indi-
cates the table location. Before accessing the table,
the location must be placed in TBLP. The TBLH regis-
ter is read only and cannot be restored. If the main
routine and the ISR (Interrupt Service Routine) both
employ the table read instruction, the contents of the
TBLH in the main routine are likely to be changed by
the table read instruction used in the ISR and errors
may occur. Therefore, using the table read instruction
in the main routine and also in the ISR should be
avoided. However, if the table read instruction has to
be used in both the main routine and in the ISR, the in-
terrupt should be disabled prior to the table read in-
struction execution. The interrupt should not be
re-enabled until TBLH has been backed up. All table
related instructions require two cycles to complete the
operation. These areas may function as normal pro-
gram memory depending upon the requirements.
@4
@4
*4
@3
@3
*3
@2
@2
*2
October 15, 2007
@1
@1
*1
HT45R34
@0
@0
*0

Related parts for HT45R34