145
The flash memory is divided into a number of memory banks, and each bank is 64 KB.
If 2 MB, it is divided into 32 banks. (8000/8300/8500)
If 4 MB, it is divided into 64 banks. (8400)
If 8 MB, it is divided into 128 banks. (8200/8700)
The kernel itself takes 2 banks, and the system reserves 1 bank (0xF60000~0xF6FFFF) for data
storage, such as the application settings. The rest banks are available for storing user programs as
well as font files. Because the flash memory is non-
volatile, it needs to be erased before writing to
the same bank, 0xF60000~0xF6FFFF. This memory bank is further divided into 256 records,
numbering from 1 ~ 256 and each with length limited to 255 bytes.
Note: (1) Up to 256 records can be saved. The flash memory can only be erased on a
bank basis, that is, all the records stored in 0xF60000 ~ 0xF6FFFF will be gone.
(2) For 8400, the system reserves 6 banks (0xF00000~0xF5FFFF) for future use.
The kern
el itself takes 22 banks, and the system reserves banks (0xF60000~0xF6FFFF,
0x800000~0xBFFFFF
) for data storage, such as the application settings. The rest banks are
available for storing user programs as well as font files.
User program location in flash: 0xC00000~0xDFFFFF
Kernel location in flash:0xE00000~0xF5FFFF
Bootloader location in flash: 0xFF0000~0xFFFFFF