Holtek HT67F2350 Manual page 56

Advanced a/d flash mcu with lcd & eeprom
Table of Contents

Advertisement

Table Program Example
The accompanying example shows how the table pointer and table data is defined and retrieved from
the device. This example uses raw table data located in the last page which is stored there using the
ORG statement. The value at this ORG statement is "1F00H" which refers to the start address of
the last page within the 8K Program Memory of the device. The table pointer low byte register is
setup here to have an initial value of "06H". This will ensure that the first data read from the data
table will be at the Program Memory address "1F06H" or 6 locations after the start of the last page.
Note that the value for the table pointer is referenced to the first address of the present page pointed
by the TBHP register if the "TABRD [m]" instruction is being used. The high byte of the table data
which in this case is equal to zero will be transferred to the TBLH register automatically when the
"TABRD [m]" instruction is executed.
Because the TBLH register is a read/write register and can be restored, care should be taken
to ensure its protection if both the main routine and Interrupt Service Routine use table read
instructions. If using the table read instructions, the Interrupt Service Routines may change the
value of the TBLH and subsequently cause errors if used again by the main routine. As a rule it is
recommended that simultaneous use of the table read instructions should be avoided. However, in
situations where simultaneous use cannot be avoided, the interrupts should be disabled prior to the
execution of any main routine table-read instructions. Note that all table related instructions require
two instruction cycles to complete their operation.
Table Read Program Example
tempreg1 db ?
tempreg2 db ?
:
mov a,06h
mov tblp,a
mov a,1fh
mov tbhp,a
:
tabrd
tempreg1
dec tblp
tabrd
tempreg2
:
org 1F00h
dc
00Ah, 00Bh, 00Ch, 00Dh, 00Eh, 00Fh, 01Ah, 01Bh
:
Rev. 1.60
Advanced A/D Flash MCU with LCD & EEPROM
; temporary register #1
; temporary register #2
; initialise low table pointer - note that this address is referenced
; to the last page or the page that tbhp pointed
; initialise high table pointer
; transfers value in table referenced by table pointer data at program
; memory address "1F06H" transferred to tempreg1 and TBLH
; reduce value of table pointer by one
; transfers value in table referenced by table pointer data at program
; memory address "1F05H" transferred to tempreg2 and TBLH in this
; example the data "1AH" is transferred to tempreg1 and data "0FH" to
; register tempreg2
; sets initial address of program memory
56
HT67F2350/HT67F2360
HT67F2370/HT67F2390
May 16, 2019

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the HT67F2350 and is the answer not in the manual?

This manual is also suitable for:

Ht67f2360Ht67f2370Ht67f2390

Table of Contents