LCD Type MCU
Data Memory
The Data Memory is a volatile area of 8-bit wide RAM internal memory and is the location where
temporary information is stored. Divided into three sections, the first of these is an area of RAM
where special function registers are located. These registers have fixed locations and are neces-
sary for correct operation of the device. Many of these registers can be read from and written to di-
rectly under program control, however, some remain protected from user manipulation. The
second area of Data Memory is reserved for general purpose use. All locations within this area are
read and write accessible under program control. The third area is reserved for the LCD Memory.
This special area of Data Memory is mapped directly to the LCD display so data written into this
memory area will directly affect the displayed data. The addresses of the LCD Memory area over-
lap those in the General Purpose Data Memory area, switching between the two areas is achieved
by setting the Bank Pointer to the correct value.
Organization
The Special Purpose and General Purpose Data Memory are located at consecutive locations. All
are implemented in RAM and are 8 bits wide but the length of each memory section is dictated by
the type of microcontroller chosen. The start address of the Data Memory for all devices is the ad-
dress 00H. Registers which are common to all microcontrollers, such as ACC, PCL, etc., have the
same Data Memory address. The LCD Data Memory is mapped into Bank 1 of the Data Memory,
however, only the lower four bits are used. The higher four bits, if read by the program will return a
²0²
value. The start of LCD Data Memory for all devices is the address 40H. However, since the
LCD Data Memory is located in Bank 1, to access this area the Bank Pointer must first be set to a
value of
²01H².
Note that after power-on the contents of the Data Memory, including the LCD Data
Memory, will be in an unknown condition, the programmer must therefore ensure that the Data
Memory is properly initialized.
0 0 H
S p e c ia l P u r p o s e
D a ta M e m o ry
1 F H /5 F H
2 0 H /6 0 H
G e n e ra l P u rp o s e
D a ta M e m o ry
C a p a c ity is
D e v ic e D e p e n d e n t
7 F H /F F H
B a n k 0
B a n k 1
4 0
L C
C a
D e
H
0 0 H
S p e c
P u rp o
D a
M e m o
ia l
s e
ta
ry
3 F H
4 0 H
B a n k 1
L C D
M e m o ry
D M e m o ry
p a c ity is
v ic e D e p e n d e n t
B a n k 0
G e n e ra l
P u rp o s e
D a ta
M e m o ry
F F H
H T 4 9 R 3 0 A -1 /H T 4 9 C 3 0 -1 /H T 4 9 C 3 0 L
H T 4 9 R 5 0 A -1 /H T 4 9 C 5 0 -1 /H T 4 9 C 5 0 L
H T 4 9 R 7 0 A -1 /H T 4 9 C 7 0 -1 /H T 4 9 C 7 0 L
B a n k 0
B a n k 1
B a n k 2
B a n k 3
B a n k 2 , 3
G e n e ra l P u rp o s e
D a ta M e m o ry
H T 4 9 R U 8 0 /H T 4 9 C U 8 0
Note
Most of the Data Memory bits can be directly manipulated using the
²SET
[m].i² and
²CLR
[m].i²
with the exception of a few dedicated bits. The Data Memory can also be accessed through the
Memory Pointer registers MP0 and MP1.
34
Home Index Bookmark Pages Text
Previous Next
Pages: Home Index