ADUC816 Analog Devices, ADUC816 Datasheet - Page 40

no-image

ADUC816

Manufacturer Part Number
ADUC816
Description
Precision Analog Microcontroller: 1MIPS 8052 MCU + 8kB Flash + Dual 16-Bit ADC + 12-Bit DAC
Manufacturer
Analog Devices
Datasheet

Specifications of ADUC816

Mcu Core
8052
Mcu Speed (mips)
1.3
Sram (bytes)
256Bytes
Gpio Pins
34
Adc # Channels
4

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
ADUC816BS
Quantity:
1 138
Part Number:
ADUC816BSZ
Manufacturer:
AD
Quantity:
416
Part Number:
ADUC816BSZ
Manufacturer:
Analog Devices Inc
Quantity:
10 000
Part Number:
ADUC816BSZ
Manufacturer:
ADI/亚德诺
Quantity:
20 000
Part Number:
ADUC816BSZ-REEL
Manufacturer:
Analog Devices Inc
Quantity:
10 000
Flash/EE Memory Timing
The typical program/erase times for the Flash/EE Data
Memory are:
Using the Flash/EE Memory Interface
As with all Flash/EE memory architectures, the array can be pro-
grammed in-system at a byte level, although it must be erased
first; the erasure being performed in page blocks (4-byte pages
in this case).
A typical access to the Flash/EE Data array will involve setting
up the page address to be accessed in the EADRL SFR, config-
uring the EDATA1–4 with data to be programmed to the array
(the EDATA SFRs will not be written for read accesses) and
finally, writing the ECON command word which initiates one
of the six modes shown in Table XIII.
It should be noted that a given mode of operation is initiated as
soon as the command word is written to the ECON SFR. The
core microcontroller operation on the ADuC816 is idled until the
requested Program/Read or Erase mode is completed.
In practice, this means that even though the Flash/EE memory
mode of operation is typically initiated with a two-machine cycle
MOV instruction (to write to the ECON SFR), the next instruc-
tion will not be executed until the Flash/EE operation is complete
(250 μs or 2 ms later). This means that the core will not respond
to Interrupt requests until the Flash/EE operation is complete,
although the core peripheral functions like Counter/Timers will
continue to count and time as configured throughout this period.
Erase Full Array (640 Bytes) – 2 ms
Erase Single Page (4 Bytes) – 2 ms
Program Page (4 Bytes) – 250 μs
Read Page (4 Bytes) – Within Single Instruction Cycle
Erase-All
Although the 640-byte User Flash/EE array is shipped from the
factory pre-erased, i.e., Byte locations set to FFH, it is nonethe-
less good programming practice to include an erase-all routine as
part of any configuration/setup code running on the ADuC816.
An “ERASE-ALL” command consists of writing “06H” to the
ECON SFR, which initiates an erase of all 640 byte locations in
the Flash/EE array. This command coded in 8051 assembly would
appear as:
Program a Byte
In general terms, a byte in the Flash/EE array can only be pro-
grammed if it has previously been erased. To be more specific, a
byte can only be programmed if it already holds the value FFH.
Because of the Flash/EE architecture, this erasure must happen
at a page level; therefore, a minimum of four bytes (1 page) will
be erased when an erase command is initiated.
A more specific example of the Program-Byte process is shown
below. In this example the user writes F3H into the second
byte on Page 03H of the Flash/EE Data Memory space while
preserving the other three bytes already in this page. As the user
is only required to modify one of the page bytes, the full page must
be first read so that this page can then be erased without the exist-
ing data being lost.
This example, coded in 8051 assembly, would appear as:
REV. A

Related parts for ADUC816