at83c5122 ATMEL Corporation, at83c5122 Datasheet - Page 28

no-image

at83c5122

Manufacturer Part Number
at83c5122
Description
At83c5123 C51 Microcontroller With Usb And Smart Card Reader Interfaces
Manufacturer
ATMEL Corporation
Datasheet
Using CRAM Memory
The CRAM is a read / write volatile memory that is mapped in the program memory
space. Then when the power is switched off the code is lost and needs to be reload at
each power up. In return, the CRAM enables a lot of flexibility in the code development
as it can be programmed indefinitely. The user code running in the CRAM can perform
read operations in CRAM itself by means of MOVC instructions like any C51 microcon-
troller does. Although the writing operations in CRAM are usually handled by the
bootloader, it is possible for the user code to handle its own writing operations in CRAM
as well. The user code must call API functions provided by the bootloader in the ROM
memory. Refer to bootloader datasheet for further details about the use of these API
functions. These API functions use a mechanism provided by the AT8xC5122 microcon-
troller. When the bit RPS is set in RCON register (Table 8 on page 26), the MOVX
intructions are configured to write in CRAM instead of XRAM memory. However, due to
C51 architecture, it is not possible for the user code to write directly in CRAM when it is
itself running in CRAM. This is why the API functions must be called in order to have the
code executing in ROM while the CRAM is written.
Figure 12. Read / Write Mechanisms in CRAM Memory
A P I f u n c t i o n s
B O O T L O A D E R
R P S = 1
M O V X
W r i t i n g o p e r a t i o n
C R A M
U s e r c o d e
API Call
R e a d o p e r a t i o n
M O V C
AT8xC5122/23
28
4202E–SCR–06/06

Related parts for at83c5122