欢迎访问ic37.com |
会员登录 免费注册
发布采购

HT48R01N 参数 Datasheet PDF下载

HT48R01N图片预览
型号: HT48R01N
PDF下载: 下载PDF文件 查看货源
内容描述: 小型封装8位OTP MCU [Small Package 8-Bit OTP MCU]
分类和应用:
文件页数/大小: 71 页 / 404 K
品牌: HOLTEK [ HOLTEK SEMICONDUCTOR INC ]
 浏览型号HT48R01N的Datasheet PDF文件第12页浏览型号HT48R01N的Datasheet PDF文件第13页浏览型号HT48R01N的Datasheet PDF文件第14页浏览型号HT48R01N的Datasheet PDF文件第15页浏览型号HT48R01N的Datasheet PDF文件第17页浏览型号HT48R01N的Datasheet PDF文件第18页浏览型号HT48R01N的Datasheet PDF文件第19页浏览型号HT48R01N的Datasheet PDF文件第20页  
HT46R01B/02B/01N/02N  
HT48R01B/02B/01N/02N  
Special Function Registers  
To ensure successful operation of the microcontroller,  
certain internal registers are implemented in the Data  
Memory area. These registers ensure correct operation  
of internal functions such as timers, interrupts, etc., as  
well as external functions such as I/O data control. The  
location of these registers within the Data Memory be-  
gins at the address ²00H² and are mapped into Bank 0.  
Any unused Data Memory locations between these spe-  
cial function registers and the point where the General  
Purpose Memory begins is reserved and attempting to  
read data from these locations will return a value of  
²00H².  
Memory Pointers - MP0, MP1  
Two Memory Pointers, known as MP0 and MP1 are pro-  
vided. These Memory Pointers are physically imple-  
mented in the Data Memory and can be manipulated in  
the same way as normal registers providing a conve-  
nient way with which to indirectly address and track  
data. When any operation to the relevant Indirect Ad-  
dressing Registers is carried out, the actual address that  
the microcontroller is directed to, is the address speci-  
fied by the related Memory Pointer. The following exam-  
ple shows how to clear a section of four Data Memory  
locations already defined as locations adres1 to adres4.  
Indirect Addressing Registers - IAR0, IAR1  
Accumulator - ACC  
The Indirect Addressing Registers, IAR0 and IAR1, al-  
though having their locations in normal RAM register  
space, do not actually physically exist as normal regis-  
ters. The method of indirect addressing for RAM data  
manipulation uses these Indirect Addressing Registers  
and Memory Pointers, in contrast to direct memory ad-  
dressing, where the actual memory address is speci-  
fied. Actions on the IAR0 and IAR1 registers will result in  
no actual read or write operation to these registers but  
rather to the memory location specified by their corre-  
sponding Memory Pointer, MP0 or MP1. Acting as a  
pair, IAR0 with MP0 and IAR1 with MP1 can together ac-  
cess data from the Data Memory. As the Indirect Ad-  
dressing Registers are not physically implemented,  
reading the Indirect Addressing Registers indirectly will  
return a result of ²00H² and writing to the registers indi-  
rectly will result in no operation.  
The Accumulator is central to the operation of any  
microcontroller and is closely related with operations  
carried out by the ALU. The Accumulator is the place  
where all intermediate results from the ALU are stored.  
Without the Accumulator it would be necessary to write  
the result of each calculation or logical operation such  
as addition, subtraction, shift, etc., to the Data Memory  
resulting in higher programming and timing overheads.  
Data transfer operations usually involve the temporary  
storage function of the Accumulator; for example, when  
transferring data between one user defined register and  
another, it is necessary to do this by passing the data  
through the Accumulator as no direct transfer between  
two registers is permitted.  
·
Indirect Addressing Program Example  
data .section ¢data¢  
adres1 db ?  
adres2 db ?  
adres3 db ?  
adres4 db ?  
block db ?  
code .section at 0 code  
org 00h  
start:  
mov a,04h  
; setup size of block  
; Accumulator loaded with first RAM address  
; setup memory pointer with first RAM address  
mov block,a  
mov a,offset adres1  
mov mp0,a  
loop:  
clr IAR0  
inc mp0  
sdz block  
jmp loop  
; clear the data at address defined by MP0  
; increment memory pointer  
; check if last memory location has been cleared  
continue:  
The important point to note here is that in the example shown above, no reference is made to specific Data Memory  
addresses.  
Rev.1.10  
16  
February 12, 2010  
 复制成功!