HT83F10 HOLTEK [Holtek Semiconductor Inc], HT83F10 Datasheet - Page 9

no-image

HT83F10

Manufacturer Part Number
HT83F10
Description
Flash Type Voice OTP MCU
Manufacturer
HOLTEK [Holtek Semiconductor Inc]
Datasheet
However, when the stack is full, a CALL subroutine in-
struction can still be executed which will result in a stack
overflow. Precautions should be taken to avoid such
cases which might cause unpredictable program
branching.
Arithmetic and Logic Unit - ALU
The arithmetic-logic unit or ALU is a critical area of the
microcontroller that carries out arithmetic and logic op-
erations of the instruction set. Connected to the main
microcontroller data bus, the ALU receives related in-
struction codes and performs the required arithmetic or
logical operations after which the result will be placed in
the specified register. As these ALU calculation or oper-
ations may result in carry, borrow or other status
changes, the status register will be correspondingly up-
dated to reflect these changes. The ALU supports the
following functions:
Program Memory
The Program Memory is the location where the user
code or program is stored. By using the appropriate pro-
gramming tools, this Program memory device offer us-
ers the flexibility to conveniently debug and develop
their applications while also offering a means of field
programming.
Structure
The program memory stores the program instructions
that are to be executed. It also includes data, table and
interrupt entries, addressed by the Program Counter
along with the table pointer. The program memory size
is 2K 15 bits. Certain locations in the program memory
are reserved for special usage.
Special Vectors
Within the Program Memory, certain locations are re-
served for special usage such as reset and interrupts.
Rev. 1.00
Arithmetic operations ADD, ADDM, ADC, ADCM,
SUB, SUBM, SBC, SBCM, DAA
Logic operations AND, OR, XOR, ANDM, ORM,
XORM, CPL, CPLA
Rotation RRA, RR, RRCA, RRC, RLA, RL, RLCA,
RLC
Increment and Decrement INCA, INC, DECA, DEC
Branch decision JMP, SZ, SZA, SNZ, SIZ, SDZ, SIZA,
SDZA, CALL, RET, RETI
Location 000H
This vector is reserved for use by the device reset for
program initialisation. After a device reset is initiated, the
program will jump to this location and begin execution.
9
Location 004H
This vector is used by the external interrupt. If the ex-
ternal interrupt pin on the device goes low, the pro-
gram will jump to this location and begin execution if
the external interrupt is enabled and the stack is not
full.
Location 008H
This vector is used by the 8-bit Timer 0. If a overflow
occurs, the program will jump to this location and be-
gin execution if the timer interrupt is enabled and the
stack is not full.
Location 00CH
This vector is used by the 8-bit Timer1. If a overflow
occurs, the program will jump to this location and be-
gin execution if the timer interrupt is enabled and the
stack is not full.
Location 010H
Reserved.
Location 014H
This vector is used by the SIM Bus interrupt service
program. If the SIM Bus interrupt resulting from a
slave address is matched or if 8 bits of data have been
received or transmitted successfully from the I
face, or 8 bits of data have been received or transmit-
ted successful from SPI interface, the program will
jump to this location and begin execution if the inter-
rupt is enabled and the stack is not full.
Program Memory Structure
HT83FXX
May 12, 2009
2
C inter-

Related parts for HT83F10