Motorola reserves the right to make changes without further notice to any products
herein. Motorola makes no warranty, representation or guarantee regarding the
suitability of its products for any particular purpose, nor does Motorola assume any
liability arising out of the application or use of any product or circuit, and specifically
disclaims any and all liability, including without limitation consequential or incidental
damages. "Typical" parameters which may be provided in Motorola data sheets and/or
specifications can and do vary in different applications and actual performance may
vary over time. All operating parameters, including "Typicals" must be validated for
each customer application by customer’s technical experts. Motorola does not convey
any license under its patent rights nor the rights of others. Motorola products are not
designed, intended, or authorized for use as components in systems intended for
surgical implant into the body, or other applications intended to support or sustain life,
or for any other application in which the failure of the Motorola product could create a
situation where personal injury or death may occur. Should Buyer purchase or use
Motorola products for any such unintended or unauthorized application, Buyer shall
indemnify and hold Motorola and its officers, employees, subsidiaries, affiliates, and
distributors harmless against all claims, costs, damages, and expenses, and
reasonable attorney fees arising out of, directly or indirectly, any claim of personal
injury or death associated with such unintended or unauthorized use, even if such claim
alleges that Motorola was negligent regarding the design or manufacture of the part.
Motorola, Inc. is an Equal Opportunity/Affirmative Action Employer.
The MC68HC908AS60A and MC68HC908AZ60A are members of the
low-cost, high-performance M68HC08 Family of 8-bit microcontroller
units (MCUs). The M68HC08 Family is based on the customer-specified
integrated circuit (CSIC) design strategy. All MCUs in the family use the
enhanced M68HC08 central processor unit (CPU08) and are available
with a variety of modules, memory sizes and types, and package types.
These parts are designed to emulate the MC68HC08ASxx and
MC68HC08AZxx automotive families and may offer extra features which
are not available on those devices. It is the user’s responsibility to ensure
compatibility between the features used on the MC68HC908AS60A and
MC68HC908AZ60A and those which are available on the device which
will ultimately be used in the application.
1.3 Features
Features of the MC68HC908AS60A and MC68HC908AZ60A include:
•High-Performance M68HC08 Architecture
•Fully Upward-Compatible Object Code with M6805, M146805,
and M68HC05 Families
•8.4 MHz Internal Bus Frequency
•60 Kbytes of FLASH Electrically Erasable Read-Only Memory
(FLASH)
•FLASH Data Security
•1 Kbyte of On-Chip Electrically Erasable Programmable ReadOnly Memory with Security Option (EEPROM)
NOTE:The following pin descriptions are just a quick reference. For a more
detailed representation, see Input/Output Ports on page 353.
1.5.1 Power Supply Pins (VDD and VSS)
and VSS are the power supply and ground pins. The MCU operates
V
DD
from a single power supply.
Fast signal transitions on MCU pins place high, short-duration current
demands on the power supply. To prevent noise problems, take special
care to provide power supply bypassing at the MCU as shown in Figure
1-6. Place the C1 bypass capacitor as close to the MCU as possible. Use
a high-frequency response ceramic capacitor for C1. C2 is an optional
bulk current bypass capacitor for use in applications that require the port
pins to source high current levels.
VSS is also the ground for the port output buffers and the ground return
for the serial clock in the Serial Peripheral Interface module (SPI). See
Serial Peripheral Interface (SPI) on page 285.
NOTE:V
must be grounded for proper MCU operation.
SS
Technical DataMC68HC908AZ60A — Rev 2.0
40General DescriptionMOTOROLA
Page 41
1.5.2 Oscillator Pins (OSC1 and OSC2)
The OSC1 and OSC2 pins are the connections for the on-chip oscillator
circuit. See Clock Generator Module (CGM) on page 169.
General Description
Pin Assignments
1.5.3 External Reset Pin (RST
)
A logic 0 on the RST
is bidirectional, allowing a reset of the entire system. It is driven low when
any internal reset source is asserted. See System Integration Module
(SIM) on page 147 for more information.
1.5.4 External Interrupt Pin (IRQ)
IRQ is an asynchronous external interrupt pin. See External Interrupt
Module (IRQ) on page 235.
1.5.5 Analog Power Supply Pin (V
V
is the power supply pin for the analog portion of the Clock
DDA
Generator Module (CGM). See Clock Generator Module (CGM) on
page 169.
DDA
pin forces the MCU to a known startup state. RST
)
1.5.6 Analog Ground Pin (V
V
SSA
)
SSA
is the ground connection for the analog portion of the Clock
Generator Module (CGM). See Clock Generator Module (CGM) on
page 169.
1.5.7 External Filter Capacitor Pin (CGMXFC)
CGMXFC is an external filter capacitor connection for the Clock
Generator Module (CGM). See Clock Generator Module (CGM) on
page 169.
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAGeneral Description41
Page 42
General Description
1.5.8 ADC Analog Power Supply Pin (V
V
DDAREF
is the power supply pin for the analog portion of the Analog-toDigital Converter (ADC). See Analog-to-Digital Converter (ADC) on
page 471.
1.5.9 ADC Analog Ground Pin (AV
The AVSS/V
SS/VREFL
REFL
the reference low voltage for the Analog-to-Digital Converter (ADC). See
Analog-to-Digital Converter (ADC) on page 471.
1.5.10 ADC Reference High Voltage Pin (V
V
provides the reference high voltage for the Analog-to-Digital
REFH
Converter (ADC). See Analog-to-Digital Converter (ADC) on page
471.
DDAREF
)
)
pin provides both the analog ground connection and
)
REFH
1.5.11 Port A Input/Output (I/O) Pins (PTA7–PTA0)
PTA7–PTA0 are general-purpose bidirectional I/O port pins. See
Input/Output Ports on page 353.
1.5.12 Port B I/O Pins (PTB7/ATD7–PTB0/ATD0)
Port B is an 8-bit special function port that shares all eight pins with the
Analog-to-Digital Converter (ADC). See Analog-to-Digital Converter
(ADC) on page 471 and Input/Output Ports on page 353.
1.5.13 Port C I/O Pins (PTC5–PTC0)
PTC5–PTC3 and PTC1–PTC0 are general-purpose bidirectional I/O
port pins. PTC2/MCLK is a special function port that shares its pin with
the system clock which has a frequency equivalent to the system clock.
See Input/Output Ports on page 353.
Technical DataMC68HC908AZ60A — Rev 2.0
42General DescriptionMOTOROLA
Page 43
1.5.14 Port D I/O Pins (PTD7–PTD0/ATD8)
Port D is an 8-bit special-function port that shares seven of its pins with
the Analog-to-Digital Converter module (ADC-15), one of its pins with
the Timer Interface Module A (TIMA), and one more of its pins with the
Timer Interface Module B (TIMB). See Timer Interface Module A
(TIMA) on page 441, Timer Interface Module B (TIMB) on page 317,
Analog-to-Digital Converter (ADC) on page 471 and Input/Output
Ports on page 353.
1.5.15 Port E I/O Pins (PTE7/SPSCK–PTE0/TxD)
Port E is an 8-bit special function port that shares two of its pins with the
Timer Interface Module A (TIMA), four of its pins with the Serial
Peripheral Interface module (SPI), and two of its pins with the Serial
Communication Interface module (SCI). See Serial Communications
Interface (SCI) on page 243, Serial Peripheral Interface (SPI) on page
285, Timer Interface Module A (TIMA) on page 441, and Input/Output
Ports on page 353.
General Description
Pin Assignments
1.5.16 Port F I/O Pins (PTF6–PTF0/TACH2)
Port F is a 7-bit special function port that shares its pins with the Timer
Interface Module B (TIMB). Six of its pins are shared with the Timer
Interface Module A (TIMA-6). See Timer Interface Module A (TIMA) on
page 441, Timer Interface Module B (TIMB) on page 317, and
Input/Output Ports on page 353.
1.5.17 Port G I/O Pins (PTG2/KBD2–PTG0/KBD0)
Port G is a 3-bit special function port that shares all of its pins with the
Keyboard Module (KBD). See Keyboard Module (KBD) on page 431
and Input/Output Ports on page 353.
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAGeneral Description43
Page 44
General Description
1.5.18 Port H I/O Pins (PTH1/KBD4–PTH0/KBD3)
Port H is a 2-bit special-function port that shares all of its pins with the
Keyboard Module (KBD). See Keyboard Module (KBD) on page 431
and Input/Output Ports on page 353.
1.5.19 CAN Transmit Pin (CANTx)
This pin is the digital output from the CAN module (CANTx). See
MSCAN Controller (MSCAN08) on page 379.
1.5.20 CAN Receive Pin (CANRx)
This pin is the digital input to the CAN module (CANRx). See MSCAN
Controller (MSCAN08) on page 379.
1.5.21 BDLC Transmit Pin (BDTxD)
This pin is the digital output from the BDLC module (BDTxD). See Byte
Data Link Controller (BDLC) on page 483.
1.5.22 BDLC Receive Pin (BDRxD)
This pin is the digital input to the CAN module (BDRxD). See Byte Data
The CPU08 can address 64K bytes of memory space. The memory
map, shown in Figure 2-1, includes:
Section 2. Memory Map
•60K Bytes of FLASH EEPROM
•2048 Bytes of RAM
•1024 Bytes of EEPROM with Protect Option
•52 Bytes of User-Defined Vectors
•256 Bytes of Monitor ROM
The following definitions apply to the memory map representation of
reserved and unimplemented locations.
•Reserved — Accessing a reserved location can have
unpredictable effects on MCU operation.
•Unused — These locations are reserved in the memory map for
future use, accessing an unused location can have unpredictable
effects on MCU operation.
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAMemory Map49
Page 50
Memory Map
•Unimplemented — Accessing an unimplemented location can
cause an illegal address reset (within the constraints as outlined
in the System Integration Module (SIM)).
MC68HC908AZ60AMC68HC908AS60A
$0000
↓↓
$003F$003F
$0040
↓
$004F$004F
$0050
↓↓
$044F$044F
$0450
↓
$04FF
I/O REGISTERS, 16 BYTES
FLASH-2, 176 BYTES
I/O REGISTERS (64 BYTES)
UNIMPLEMENTED , 11 BYTES
I/O REGISTERS, 5 BYTES
RAM-1, 1024 BYTES
$0000
$0040
↓
$004A
$004B
$0050
$0450
$0500
↓
$057F
$0580
↓
$05FF$05FF
$0600
↓↓
$07FF$07FF
Technical DataMC68HC908AZ60A — Rev 2.0
50Memory MapMOTOROLA
CAN CONTROL AND MESSAGE
BUFFERS, 128 BYTES
FLASH-2, 128 BYTES
EEPROM-2, 512 BYTES
FLASH-2, 432 BYTES
↓
$0600
Page 51
MC68HC908AZ60AMC68HC908AS60A
Memory Map
Introduction
$0800
↓↓
$09FF$09FF
$0A00
↓↓
$0DFF$0DFF
$0E00
↓↓
$7FFF$7FFF
$8000
↓↓
$FDFF$FDFF
$FE00SIM BREAK STATUS REGISTER (SBSR) $FE00
$FE01SIM RESET STATUS REGISTER (SRSR)$FE01
$FE02
EEPROM-1, 512 BYTES
RAM-2 , 1024 BYTES
FLASH-2, 29,184 BYTES
FLASH-1, 32,256BYTES
RESERVED $FE02
$0800
$0A00
$0E00
$8000
$FE03SIM BREAK FLAG CONTROL REGISTER (SBFCR) $FE03
Note 1: Registers appearing in italics are for Motorola test purpose only and only appear in the Memory Map for reference.
Note2: While some differences between MC68HC908AS60A and MC68HC908AZ60A are highlighted, some registers remain available
on both parts. Refer to individual modules for details whether these registers are active or inactive.
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAMemory Map53
Page 54
Memory Map
2.3 I/O Section
Addresses $0000–$004F, shown in Figure 2-2, contain the I/O Data,
Status and Control Registers.
Addr.Register NameBit 7654321Bit 0
$0000Port A Data Register (PTA)
$0001Port B Data Register (PTB)
$0002Port C Data Register (PTC)
$0003Port D Data Register (PTD)
$0004
$0005
$0006
$0007
$0008Port E Data Register (PTE)
$0009Port F Data Register (PTF)
$000APort G Data Register (PTG)
$000BPort H Data Register (PTH)
$000C
$000D
$000E
Data Direction Register A
Data Direction Register B
Data Direction Register C
Data Direction Register D
Data Direction Register E
Data Direction Register F
Data Direction Register G
(DDRA)
(DDRB)
(DDRC)
(DDRD)
(DDRE)
(DDRF)
(DDRG)
Read:
Write:
Read:
Write:
Read:00
Write:RR
Read:
Write:
Read:
Write:
Read:
Write:
Read:
Write:R
Read:
Write:
Read:
Write:
Read:0
Write:R
Read:00000
Write:RRRRR
Read:000000
Write:RRRRRR
Read:
Write:
Read:0
Write:R
Read:00000
Write:RRRRR
PTA7PTA6PTA5PTA4PTA3PTA2PTA1PTA0
PTB7PTB6PTB5PTB4PTB3PTB2PTB1PTB0
PTC5PTC4PTC3PTC2PTC1PTC0
PTD7PTD6PTD5PTD4PTD3PTD2PTD1PTD0
DDRA7DDRA6DDRA5DDRA4DDRA3DDRA2DDRA1DDRA0
DDRB7DDRB6DDRB5DDRB4DDRB3DDRB2DDRB1DDRB0
MCLKE
N
DDRD7DDRD6DDRD5DDRD4DDRD3DDR2DDRD1DDRD0
PTE7PTE6PTE5PTE4PTE3PTE2PTE1PTE0
DDRE7DDRE6DDRE5DDRE4DDRE3DDRE2DDRE1DDRE0
0
DDRC5DDRC4DDRC3DDRC2DDRC1DDRC0
PTF6PTF5PTF4PTF3PTF2PTF1PTF0
PTG2PTG1PTG0
PTH1PTH0
DDRF6DDRF5DDRF4DDRF3DDRF2DDRF1DDRF0
DDRG2DDRG1DDRG0
Figure 2-2. I/O Data, Status and Control Registers (Sheet 1 of 5)
Technical DataMC68HC908AZ60A — Rev 2.0
54Memory MapMOTOROLA
Page 55
Memory Map
I/O Section
Addr.Register NameBit 7654321Bit 0
$000F
$0010SPI Control Register (SPCR)
$0011
$0012SPI Data Register (SPDR)
$0013SCI Control Register 1 (SCC1)
$0014SCI Control Register 2 (SCC2)
$0015SCI Control Register 3 (SCC3)
$0016SCI Status Register 1 (SCS1)
$0017SCI Status Register 2 (SCS2)
$0018SCI Data Register (SCDR)
$0019SCI Baud Rate Register (SCBR)
$001A
$001B
$001CPLL Control Register (PCTL)
$001D
$001E
$001F
$0020
Data Direction Register H
(DDRH)
SPI Status and Control
Register (SPSCR)
IRQ Status and Control
Register (ISCR)
Keyboard Status and Control
Register (KBSCR)
PLL Bandwidth Control
Register (PBWC)
PLL Programming Register
(PPG)
Configuration Write-Once
Register (CONFIG-1)
Timer A Status and Control
Register (TASC)
Read:000000
Write:RRRRRR
Read:
Write:
Read:SPRF
Write:
Read:R7R6R5R4R3R2R1R0
Write:T7T6T5T4T3T2T1T0
Read:
Write:
Read:
Write:
Read:R8
Write:
Read:SCTETCSCRFIDLEORNFFEPE
Write:
Read:000000BKFRPF
Write:
Read:R7R6R5R4R3R2R1R0
Write:T7T6T5T4T3T2T1T0
Read:00
Write:
Read:0000IRQF0
Write:RRRRRACK
Read:0000KEYF0
Write:
Read:
Write:
Read:
Write:
Read:
Write:
Read:
Write:
Read:TOF
Write:0TRSTR
SP RIERSPMSTRCPOLCPHASPWOMS PESP TIE
ERRIE
LOOPSENSCITXINVMWAKEILTYPENPTY
SCTIETCIESCRIEILIETERERWUSBK
T8RRORIENEIEFEIEPEIE
PLLIE
AUTO
MUL7MUL6MUL5MUL4VRS7VRS6VRS5VRS4
LVI STO
P
PLLF
LOCK
RLVIRSTLVIPWR SSRECCOPLSTOPCOPD
TOIETSTOP
OVRFMODFSPTE
SCP1SCP0RSCR2SCR1SCR0
PLLONBCS
ACQXLD
00
MODFE
ACKK
1111
0000
PS2PS1PS0
DDRH1DDRH0
N
SPR1SPR0
IMASKMODE
IMASKK MODEK
Figure 2-2. I/O Data, Status and Control Registers (Sheet 2 of 5)
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAMemory Map55
Page 56
Memory Map
Addr.Register NameBit 7654321Bit 0
Read:000
Write:
Read:Bit 1514131211109Bit 8
Write:RRRRRRRR
Read:Bit 7654321Bit 0
Write:RRRRRRRR
Read:
Write:
Read:
Write:
Read:CH0F
Write:0
Read:
Write:
Read:
Write:
Read:CH1F
Write:0R
Read:
Write:
Read:
Write:
Read:CH2F
Write:0
Read:
Write:
Read:
Write:
Read:CH3F
Write:0R
Read:
Write:
Read:
Write:
Read:CH4F
Write:0
Bit 1514131211109Bit 8
Bit 7654321Bit 0
CH0IEMS0BMS0AELS0BELS0ATOV0CH0MAX
Bit 1514131211109Bit 8
Bit 7654321Bit 0
CH1IE
Bit 1514131211109Bit 8
Bit 7654321Bit 0
CH2IEMS2BMS2AELS2BELS2ATOV2CH2MAX
Bit 1514131211109Bit 8
Bit 7654321Bit 0
CH3IE
Bit 1514131211109Bit 8
Bit 7654321Bit 0
CH4IEMS4BMS4AELS4BELS4ATOV4CH4MAX
KBIE4KBIE3KBIE2KBIE1KBIE0
0
MS1AELS1BELS1ATOV1CH1MAX
0
MS3AELS3BELS3ATOV3CH3MAX
$0021
$0022
$0023
$0024
$0025
$0026
$0027
$0028
$0029
$002A
$002B
$002C
$002D
$002E
$002F
$0030
$0031
$0032
Keyboard Interrupt Enable
Register (KBIER)
Timer A Counter Register
High (TACNTH)
Timer A Counter Register
Low (TACNTL)
Timer A Modulo Register
High (TAMODH)
Timer A Modulo Register
Low (TAMODL)
Timer A Channel 0 Status and
Control Register (TASC0)
Timer A Channel 0 Register
High (TACH0H)
Timer A Channel 0 Register
Low (TACH0L)
Timer A Channel 1 Status and
Control Register (TASC1)
Timer A Channel 1 Register
High (TACH1H)
Timer A Channel 1 Register
Low (TACH1L)
Timer A Channel 2 Status and
Control Register (TASC2)
Timer A Channel 2 Register
High (TACH2H)
Timer A Channel 2 Register
Low (TACH2L)
Timer A Channel 3 Status and
Control Register (TASC3)
Timer A Channel 3 Register
High (TACH3H)
Timer A Channel 3 Register
Low (TACH3L)
Timer A Channel 4 Status and
Control Register (TASC4)
Figure 2-2. I/O Data, Status and Control Registers (Sheet 3 of 5)
Technical DataMC68HC908AZ60A — Rev 2.0
56Memory MapMOTOROLA
Page 57
Memory Map
I/O Section
Addr.Register NameBit 7654321Bit 0
$0033
$0034
$0035
$0036
$0037
$0038
$0039
$003A
$003B
$003CBDLC Control Register 1 (BCR1)
$003DBDLC Control Register 2 (BCR2)
$003E
$003FBDLC Data Register (BDR)
$0040
$0041
$0042
$0043
$0044
Timer A Channel 4 Register High
(TACH4H)
Timer A Channel 4 Register Low
(TACH4L)
Timer A Channel 5 Status and
Control Register (TASC5)
Timer A Channel 5 Register
High (TACH5H)
Timer A Channel 5 Register
Low (TACH5L)
Analog-to-Digital Status and
Control Register (ADSCR)
Analog-to-Digital Data Register
(ADR)
Analog-to-Digital Input Clock
Register (ADICLK)
BDLC Analog and Roundtrip Delay
Register (BARD)
BDLC State Vector Register
(BSVR)
Timer B Status and Control
Register (TBSCR)
Timer B Counter Register High
(TBCNTH)
Timer B Counter Register Low
(TBCNTL)
Timer B Modulo Register High
(TBMODH)
Timer B Modulo Register Low
(TBMODL)
Read:
Write:
Read:
Write:
Read:CH5F
Write:0R
Read:
Write:
Read:
Write:
Read:COCO
Write:R
Read:AD7AD6AD5AD4AD3AD2AD1AD0
Write:RRRRRRRR
Read:
Write:RRRR
Read:
Write:RR
Read:
Write:RR
Read:
Write:
Read:00I3I2I1I000
Write:RRRRRRRR
Read:
Write:
Read:TOF
Write:0TRSTR
Read:Bit 1514131211109Bit 8
Write:RRRRRRRR
Read:Bit 7654321Bit 0
Write:RRRRRRRR
Read:
Write:
Read:
Write:
Bit 1514131211109Bit 8
Bit 7654321Bit 0
CH5IE
Bit 1514131211109Bit 8
Bit 7654321Bit 0
AIENADCOADCH4ADCH3ADCH2ADCH1ADCH0
ADIV2ADIV1ADIV0ADICLK
ATERXPOL
IMSGCLKSR1R0
ALOOPDLOOPRX4XENBFSTEODTSIFRTMIFR1 TMIFR0
BD7BD6BD5BD4BD3BD2BD1BD0
TOIETSTOP
Bit 1514131211109Bit 8
Bit 7654321Bit 0
0
MS5AELS5BELS5ATOV5CH5MAX
0000
00
00
BO3BO2BO1BO0
00
PS2PS1PS0
IEWCM
Figure 2-2. I/O Data, Status and Control Registers (Sheet 4 of 5)
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAMemory Map57
Page 58
Memory Map
Addr.Register NameBit 7654321Bit 0
$0045
$0046
$0047
$0048Write:0R
$0049
$004A
$004B
$004C
$004D
$004E
$004F
Timer B CH0 Status and Control
Register (TBSC0)
Timer B CH0 Register High
(TBCH0H)
Timer B CH0 Register Low
(TBCH0L)
Timer B CH1 Status and Control
Register (TBSC1)
Timer B CH1 Register High
(TBCH1H)
Timer B CH1 Register Low
(TBCH1L)
PIT Status and Control Register
(PSC)
PIT Counter Register High
(PCNTH)
PIT Counter Register Low
(PCNTL)
PIT Modulo Register High
(PMODH)
PIT Modulo Register Low
(PMODL)
Read:CH0F
Write:0
Read:
Write:
Read:
Write:
Read:CH1F
Read:
Write:
Read:
Write:
Read:POF
Write:0PRST
Read:Bit 1514131211109Bit 8
Write:
Read:Bit 7654321Bit 0
Write:
Read:
Write:
Read:
Write:
Bit 1514131211109Bit 8
Bit 7654321Bit 0
Bit 1514131211109Bit 8
Bit 7654321Bit 0
Bit 1514131211109Bit 8
Bit 7654321Bit 0
CH0IEMS0BMS0AELS0BELS0ATOV0CH0MAX
CH1IE
POIEPSTOP
0
MS1AELS1BELS1ATOV1CH1MAX
00
PPS2PPS1PPS0
= UnimplementedR= Reserved
Figure 2-2. I/O Data, Status and Control Registers (Sheet 5 of 5)
All registers are shown for both MC68HC908AS60A and
MC68HC908AZ60A. Refer to individual module sections to determine if
the module is available and the register active or not.
2.4 Additional Status and Control Registers
Selected addresses in the range $FE00 to $FFCB contain additional
Status and Control registers as shown inFigure 2-3. A noted exception
is the COP Control Register (COPCTL) at address $FFFF.
Figure 2-3. Additional Status and Control Registers (Sheet 1 of 2)
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAMemory Map59
Page 60
Memory Map
Addr.Register NameBit 7654321Bit 0
$FF71EE2DIV Lo Non-volatile Register Read:
(EE2DIVLNVR)
$FF7A EE2DIV Divider High Register Read:
(EE2DIVH)
$FF7BEE2DIV Divider Low Register Read:
(EE2DIVL)
EEPROM-2 Nonvolatile Register
(EE2NVR)
EEPROM-2 Control Register
(EE2CR)
EEPROM-2 Array Configuration
Register (EE2ACR)
FLASH-1 Block Protect Register
(FL1BPR)
FLASH-2 Block Protect Register
(FL2BPR)
FLASH-1 Control Register
(FL1CR)
$FE7C
$FE7D
$FE7F
$FF80
$FF81
$FF88
Read:
Read:
Read:
Read:
Read:
Read:0000
EEDIV7 EEDIV6EEDIV5EEDIV4EEDIV3EEDIV2EEDIV1EEDIV0
EEDIVSECD
EEDIV7 EEDIV6EEDIV5EEDIV4EEDIV3EEDIV2EEDIV1EEDIV0
UNUSEDUNUSEDUNUSE
Write:
UNUSE
Write:
Write:
Write:
Write:
Write:
D
UNUSEDUNUSEDUNUSE
BPR7BPR6BPR5BPR4BPR3BPR2BPR1BPR0
BPR7BPR6BPR5BPR4BPR3BPR2BPR1BPR0
0000
EEPRTC
D
0
EEOFF EERAS1 EERAS0EELATAUTOEEPGM
EEPRTC
D
EEBP3EEBP2EEBP1EEBP0
T
EEBP3EEBP2EEBP1EEBP0
T
HVENVERFERASEPGM
EEDIV1
0
EEDIV9 EEDIV8
$FFFFCOP Control Register (COPCTL)
Figure 2-3. Additional Status and Control Registers (Sheet 2 of 2)
Read:LOW BYTE OF RESET VECTOR
Write:WRITING TO $FFFF CLEARS COP COUNTER
= UnimplementedR= Reserved
Technical DataMC68HC908AZ60A — Rev 2.0
60Memory MapMOTOROLA
Page 61
2.5 Vector Addresses and Priority
Addresses in the range $FFCC to $FFFF contain the user-specified
vector locations. The vector addresses are shown inTable 2-1. Please
note that certain vector addresses differ between the
MC68HC908AS60A and the MC68HC908AZ60A as shown in the table.
It is recommended that all vector addresses are defined.
This section describes the 2048 bytes of random-access memory
(RAM).
Section 3. RAM
3.3 Functional Description
Addresses $0050 through $044F and $0A00 through $0DFF are RAM
locations. The location of the stack RAM is programmable with the reset
stack pointer instruction (RSP). The 16-bit stack pointer allows the stack
RAM to be anywhere in the 64K-byte memory space.
NOTE:For correct operation, the stack pointer must point only to RAM
locations.
Within page zero are 176 bytes of RAM. Because the location of the
stack RAM is programmable, all page zero RAM locations can be used
for input/output (I/O) control and user data or code. When the stack
pointer is moved from its reset location at $00FF, direct addressing
mode instructions can access all page zero RAM locations efficiently.
Page zero RAM, therefore, provides ideal locations for frequently
accessed global variables.
Before processing an interrupt, the CPU uses five bytes of the stack to
save the contents of the CPU registers.
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLARAM63
Page 64
RAM
NOTE:For M68HC05, M6805, and M146805 compatibility, the H register is not
stacked.
During a subroutine call, the CPU uses two bytes of the stack to store
the return address. The stack pointer decrements during pushes and
increments during pulls.
NOTE:Be careful when using nested subroutines. The CPU could overwrite
data in the RAM during a subroutine or during the interrupt stacking
operation.
This section describes the operation of the embedded FLASH-1
memory. This memory can be read, programmed and erased from a
single external supply. The program and erase operations are enabled
through the use of an internal charge pump.
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAFLASH-1 Memory65
Page 66
FLASH-1 Memory
4.3 Functional Description
The FLASH-1 memory is an array of 32,256 bytes with two bytes of block
protection (one byte for protecting areas within FLASH-1 array and one
byte for protecting areas within FLASH-2 array) and an additional 40
bytes of user vectors on the MC68HC908AS60A and 52 bytes of user
vectors on the MC68HC908AZ60A. An erased bit reads as a logic 1 and
a programmed bit reads as a logic 0.
Memory in the FLASH-1 array is organized into rows within pages. There
are two rows of memory per page with 64 bytes per row. The minimum
erase block size is a single page,128 bytes. Programming is performed
on a per-row basis, 64 bytes at a time. Program and erase operations
are facilitated through control bits in the FLASH-1 Control Register
(FL1CR). Details for these operations appear later in this section.
The FLASH-1 memory map consists of:
•$8000–$FDFF: User Memory (32,256 bytes)
•$FF80: FLASH-1 Block Protect Register (FL1BPR)
•$FF81: FLASH-2 Block Protect Register (FL2BPR)
•$FF88: FLASH-1 Control Register (FL1CR)
•$FFCC–$FFFF: these locations are reserved for user-defined
interrupt and reset vectors (Please see Vector Addresses and
Priority on page 61 for details)
Programming tools are available from Motorola. Contact your local
Motorola representative for more information.
NOTE:A security feature prevents viewing of the FLASH contents.
(1)
1. No security feature is absolutely secure. However, Motorola’s strategy is to make reading or
copying the FLASH difficult for unauthorized users.
Technical DataMC68HC908AZ60A — Rev 2.0
66FLASH-1 MemoryMOTOROLA
Page 67
FLASH-1 Control and Block Protect Registers
4.4 FLASH-1 Control and Block Protect Registers
The FLASH-1 array has two registers that control its operation, the
FLASH-1 Control Register (FL1CR) and the FLASH-1 Block Protect
Register (FL1BPR).
4.4.1 FLASH-1 Control Register
The FLASH-1 Control Register (FL1CR) controls FLASH-1 program and
erase operations.
Address:$FF88
Bit 7654321Bit 0
FLASH-1 Memory
Read:0000
HVENMASSERASEPGM
Write:
Reset:00000000
Figure 4-1. FLASH-1 Control Register (FL1CR)
HVEN — High-Voltage Enable Bit
This read/write bit enables the charge pump to drive high voltages for
program and erase operations in the array. HVEN can only be set if
either PGM = 1 or ERASE = 1 and the proper sequence for program
or erase is followed.
1 = High voltage enabled to array and charge pump on
0 = High voltage disabled to array and charge pump off
MASS — Mass Erase Control Bit
Setting this read/write bit configures the FLASH-1 array for mass or
page erase operation.
This read/write bit configures the memory for erase operation.
ERASE is interlocked with the PGM bit such that both bits cannot be
set at the same time.
This read/write bit configures the memory for program operation.
PGM is interlocked with the ERASE bit such that both bits cannot be
equal to 1 or set to 1 at the same time.
1 = Program operation selected
0 = Program operation unselected
4.4.2 FLASH-1 Block Protect Register
The FLASH-1 Block Protect Register (FL1BPR) is implemented as a
byte within the FLASH-1 memory and therefore can only be written
during a FLASH programming sequence. The value in this register
determines the starting location of the protected range within the
FLASH-1 memory.
These eight bits represent bits [14:7] of a 16-bit memory address. Bit15 is logic 1 and bits [6:0] are logic 0s.
Technical DataMC68HC908AZ60A — Rev 2.0
68FLASH-1 MemoryMOTOROLA
Page 69
FLASH-1 Memory
FLASH-1 Control and Block Protect Registers
The resultant 16-bit address is used for specifying the start address
of the FLASH-1 memory for block protection. FLASH-1 is protected
from this start address to the end of FLASH-1 memory at $FFFF. With
this mechanism, the protect start address can be $XX00 and $XX80
(128 byte page boundaries) within the FLASH-1 array.
16-bit memory address
Start address of FLASH block protect
1
FLBPR value
0000000
Figure 4-3. FLASH-1 Block Protect Start Address
FLASH-1 Protected Ranges:
FL1BPR[7:0]Protected Range
$FFNo Protection
$FE$FF00 – $FFFF
$FD$FE80 – $FFFF
$0B$8580 – $FFFF
$0A$8500 – $FFFF
$09$8480 – $FFFF
$08$8400 – $FFFF
$04$8200 – $FFFF
$03$8180 – $FFFF
$02$8100 – $FFFF
$01$8080 – $FFFF
$00$8000 – $FFFF
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAFLASH-1 Memory69
Page 70
FLASH-1 Memory
Decreasing the value in FL1BPR by one increases the protected range
by one page (128 bytes). However, programming the block protect
register with $FE protects a range twice that size, 256 bytes, in the
corresponding array. $FE means that locations $FF00–$FFFF are
protected in FLASH-1.
The FLASH memory does not exist at some locations. The block
protection range configuration is unaffected if FLASH memory does not
exist in that range. Refer to the memory map and make sure that the
desired locations are protected.
4.5 FLASH-1 Block Protection
Due to the ability of the on-board charge pump to erase and program the
FLASH memory in the target application, provision is made for protecting
blocks of memory from unintentional erase or program operations due to
system malfunction. This protection is done by using the FLASH-1 Block
Protection Register (FL1BPR). FL1BPR determines the range of the
FLASH-1 memory which is to be protected. The range of the protected
area starts from a location defined by FL1BPR and ends at the bottom
of the FLASH-1 memory ($FFFF). When the memory is protected, the
HVEN bit can not be set in either ERASE or PROGRAM operations.
NOTE:In performing a program or erase operation, the FLASH-1 Block Protect
Register must be read after setting the PGM or ERASE bit and before
asserting the HVEN bit.
When the FLASH-1 Block Protect Register is programmed with all 0’s,
the entire memory is protected from being programmed and erased.
When all the bits are erased (all 1’s), the entire memory is accessible for
program and erase.
When bits within FL1BPR are programmed (logic 0), they lock a block of
memory address ranges as shown in FLASH-1 Block Protect Register
on page 68. If FL1BPR is programmed with any value other than $FF,
the protected block of FLASH memory can not be erased or
programmed.
Technical DataMC68HC908AZ60A — Rev 2.0
70FLASH-1 MemoryMOTOROLA
Page 71
NOTE:The vector locations and the FLASH Block Protect Registers are located
in the same page. FL1BPR and FL2BPR are not protected with special
hardware or software; therefore, if this page is not protected by FL1BPR
and the vector locations are erased by either a page or a mass erase
operation, both FL1BPR and FL2BPR will also get erased.
4.6 FLASH-1 Mass Erase Operation
Use this step-by-step procedure to erase the entire FLASH-1 memory to
read as logic 1:
1.Set both the ERASE bit and the MASS bit in the FLASH-1 Control
Register (FL1CR).
2.Read the FLASH-1 Block Protect Register (FL1BPR).
FLASH-1 Memory
FLASH-1 Mass Erase Operation
3.Write to any FLASH-1 address within the FLASH-1 array with any
data.
NOTE:If the address written to in Step 3 is within address space protected by
the FLASH-1 Block Protect Register (FL1BPR), no erase will occur.
4.Wait for a time, t
NVS
.
5.Set the HVEN bit.
6.Wait for a time, t
MERASE
.
7.Clear the ERASE bit.
8.Wait for a time, t
NVHL
.
9.Clear the HVEN bit.
10.Wait for a time, t
, after which the memory can be accessed in
RCV
normal read mode.
NOTE:A. Programming and erasing of FLASH locations can not be performed
by code being executed from the same FLASH array.
B. While these operations must be performed in the order shown, other
unrelated operations may occur between the steps. Care must be taken
however to ensure that these operations do not access any address
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAFLASH-1 Memory71
Page 72
FLASH-1 Memory
within the FLASH array memory space such as the COP Control
Register (COPCTL) at $FFFF.
C. It is highly recommended that interrupts be disabled during
program/erase operations.
4.7 FLASH-1 Page Erase Operation
Use this step-by-step procedure to erase a page (128 bytes) of FLASH1 memory to read as logic 1:
1.Set the ERASE bit and clear the MASS bit in the FLASH-1 Control
Register (FL1CR).
2.Read the FLASH-1 Block Protect Register (FL1BPR).
3.Write any data to any FLASH-1 address within the address range
of the page (128 byte block) to be erased.
4.Wait for time, t
5.Set the HVEN bit.
6.Wait for time, t
.
NVS
ERASE
.
7.Clear the ERASE bit.
8.Wait for time, t
NVH
.
9.Clear the HVEN bit.
10.Wait for a time, t
, after which the memory can be accessed in
RCV
normal read mode.
NOTE:A. Programming and erasing of FLASH locations can not be performed
by code being executed from the same FLASH array.
B. While these operations must be performed in the order shown, other
unrelated operations may occur between the steps. Care must be taken
however to ensure that these operations do not access any address
within the FLASH array memory space such as the COP Control
Register (COPCTL) at $FFFF.
C. It is highly recommended that interrupts be disabled during
program/erase operations.
Technical DataMC68HC908AZ60A — Rev 2.0
72FLASH-1 MemoryMOTOROLA
Page 73
4.8 FLASH-1 Program Operation
Programming of the FLASH memory is done on a row basis. A row
consists of 64 consecutive bytes with address ranges as follows:
•$XX00 to $XX3F
•$XX40 to $XX7F
•$XX80 to $XXBF
•$XXC0 to $XXFF
During the programming cycle, make sure that all addresses being
written to fit within one of the ranges specified above. Attempts to
program addresses in different row ranges in one programming cycle will
fail. Use this step-by-step procedure to program a row of FLASH-1
memory.
FLASH-1 Memory
FLASH-1 Program Operation
NOTE:In order to avoid program disturbs, the row must be erased before any
byte on that row is programmed.
1.Set the PGM bit in the FLASH-1 Control Register (FL1CR). This
configures the memory for program operation and enables the
latching of address and data programming.
2.Read the FLASH-1 Block Protect Register (FL1BPR).
3.Write to any FLASH-1 address within the row address range
desired with any data.
4.Wait for time, t
5.Set the HVEN bit.
6.Wait for time, t
7.Write data byte to the FLASH-1 address to be programmed.
8.Wait for time, t
9.Repeat step 7 and 8 until all the bytes within the row are
programmed.
.
NVS
.
PGS
PROG
.
10.Clear the PGM bit.
11.Wait for time, t
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAFLASH-1 Memory73
NVH
.
Page 74
FLASH-1 Memory
12.Clear the HVEN bit.
13.Wait for a time, t
, after which the memory can be accessed in
RCV
normal read mode.
The FLASH Programming Algorithm Flowchart is shown in Figure 4-4.
NOTE:A. Programming and erasing of FLASH locations can not be performed
by code being executed from the same FLASH array.
B. While these operations must be performed in the order shown, other
unrelated operations may occur between the steps. Care must be taken
however to ensure that these operations do not access any address
within the FLASH array memory space such as the COP Control
Register (COPCTL) at $FFFF.
C. It is highly recommended that interrupts be disabled during
program/erase operations.
D. Do not exceed t
PROG
maximum or t
cumulative high voltage programming time to the same row before next
erase. t
must satisfy this condition: t
HV
max. Please also see FLASH Memory Characteristics on page 543.
maximum. t
HV
+ t
NVS
NVH
+ t
PGS
is defined as the
HV
+ (t
PROG
X 64) ð t
HV
E. The time between each FLASH address change (step 7 to step 7), or
the time between the last FLASH address programmed to clearing the
PGM bit (step 7 to step 10) must not exceed the maximum programming
time, t
PROG
max.
F. Be cautious when programming the FLASH-1 array to ensure that
non-FLASH locations are not used as the address that is written to when
selecting either the desired row address range in step 3 of the algorithm
or the byte to be programmed in step 7 of the algorithm. This applies
particularly to:
•$FFD2-$FFD3 and $FFDA-$FFFF: Vector area on
MC68HC908AS60A (40 bytes)
•$FFCC-$FFFF: Vector area on MC68HC908AZ60A (52 bytes)
Technical DataMC68HC908AZ60A — Rev 2.0
74FLASH-1 MemoryMOTOROLA
Page 75
FLASH-1 Memory
FLASH-1 Program Operation
Algorithm for programming
a row (64 bytes) of FLASH memory
1
2
Read the FLASH block protect register
3
Write any data to any FLASH address
Set PGM bit
within the row address range desired
4
5
6
7
Wait for a time, t
Set HVEN bit
Wait for a time, t
Write data to the FLASH address
to be programmed
8
Wait for a time, t
nvs
pgs
PROG
Completed
programming
Y
this row?
N
NOTE:
10
Clear PGM bit
The time between each FLASH address change (step 7 to step 7), or
the time between the last FLASH address programmed
to clearing PGM bit (step 7 to step 10)
11
Wait for a time, t
nvh
must not exceed the maximum programming
time, t
PROG
max.
12
Clear HVEN bit
This row program algorithm assumes the row/s
to be programmed are initially erased.
13
Wait for a time, t
rcv
End of programming
Figure 4-4. FLASH Programming Algorithm Flowchart
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAFLASH-1 Memory75
Page 76
FLASH-1 Memory
4.9 Low-Power Modes
The WAIT and STOP instructions will place the MCU in low power
consumption standby modes.
4.9.1 WAIT Mode
Putting the MCU into wait mode while the FLASH is in read mode does
not affect the operation of the FLASH memory directly; however, no
memory activity will take place since the CPU is inactive.
The WAIT instruction should not be executed while performing a
program or erase operation on the FLASH. Wait mode will suspend any
FLASH program/erase operations and leave the memory in a Standby
Mode.
4.9.2 STOP Mode
Putting the MCU into stop mode while the FLASH is in read mode does
not affect the operation of the FLASH memory directly; however, no
memory activity will take place since the CPU is inactive.
The STOP instruction should not be executed while performing a
program or erase operation on the FLASH. Stop mode will suspend any
FLASH program/erase operations and leave the memory in a Standby
Mode.
NOTE:Standby Mode is the power saving mode of the FLASH module, in which
all internal control signals to the FLASH are inactive and the current
consumption of the FLASH is minimum.
This section describes the operation of the embedded FLASH-2
memory. This memory can be read, programmed and erased from a
single external supply. The program and erase operations are enabled
through the use of an internal charge pump.
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAFLASH-2 Memory77
Page 78
FLASH-2 Memory
5.3 Functional Description
The FLASH-2 memory is a non-continuos array consisting of a total of
29,616 bytes on the MC68HC908AS60A and 29,488 bytes on the
MC68HC908AZ60A. An erased bit reads as a logic 1 and a programmed
bit reads as a logic 0.
Memory in the FLASH-2 array is organized into rows within pages. There
are two rows of memory per page with 64 bytes per row. The minimum
erase block size is a single page,128 bytes. Programming is performed
on a per-row basis, 64 bytes at a time. Program and erase operations
are facilitated through control bits in the FLASH-2 Control Register
(FL2CR). Details for these operations appear later in this section.
The FLASH-2 memory map consists of:
•$0450–$05FF: User Memory on MC68HC908AS60A (432 bytes)
•$0450–$04FF: User Memory on MC68HC908AZ60A (176 bytes)
•$0580–$05FF: User Memory on MC68HC908AZ60A (128 bytes)
•$0E00–$7FFF: User Memory (29,616 bytes)
•$FF81: FLASH-2 Block Protect Register (FL2BPR)
–Note that FL2BPR physically resides within FLASH-1 memory
addressing space
•$FE08: FLASH-2 Control Register (FL2CR)
Programming tools are available from Motorola. Contact your local
Motorola representative for more information.
NOTE:A security feature prevents viewing of the FLASH contents.
(1)
1. No security feature is absolutely secure. However, Motorola’s strategy is to make reading or
copying the FLASH difficult for unauthorized users.
Technical DataMC68HC908AZ60A — Rev 2.0
78FLASH-2 MemoryMOTOROLA
Page 79
FLASH-2 Control and Block Protect Registers
5.4 FLASH-2 Control and Block Protect Registers
The FLASH-2 array has two registers that control its operation, the
FLASH-2 Control Register (FL2CR) and the FLASH-2 Block Protect
Register (FL2BPR).
5.4.1 FLASH-2 Control Register
The FLASH-2 Control Register (FL2CR) controls FLASH-2 program and
erase operations.
Address:$FE08
Bit 7654321Bit 0
FLASH-2 Memory
Read:0000
HVENMASSERASEPGM
Write:
Reset:00000000
Figure 5-1. FLASH-2 Control Register (FL2CR)
HVEN — High-Voltage Enable Bit
This read/write bit enables the charge pump to drive high voltages for
program and erase operations in the array. HVEN can only be set if
either PGM = 1 or ERASE = 1 and the proper sequence for program
or erase is followed.
1 = High voltage enabled to array and charge pump on
0 = High voltage disabled to array and charge pump off
MASS — Mass Erase Control Bit
Setting this read/write bit configures the FLASH-2 array for mass or
page erase operation.
This read/write bit configures the memory for erase operation.
ERASE is interlocked with the PGM bit such that both bits cannot be
set at the same time.
This read/write bit configures the memory for program operation.
PGM is interlocked with the ERASE bit such that both bits cannot be
equal to 1 or set to 1 at the same time.
1 = Program operation selected
0 = Program operation unselected
5.4.2 FLASH-2 Block Protect Register
The FLASH-2 Block Protect Register (FL2BPR) is implemented as a
byte within the FLASH-1 memory and therefore can only be written
during a FLASH programming sequence. The value in this register
determines the starting location of the protected range within the
FLASH-2 memory.
NOTE:The FLASH-2 Block Protect Register (FL2BPR) controls the block
protection for the FLASH-2 array. However, FL2BPR is implemented
within the FLASH-1 memory array and therefore, the FLASH-1 Control
Register (FL1CR) must be used to program/erase FL2BPR.
FL2BPR[7:0] — Block Protect Register Bit7 to Bit0
These eight bits represent bits [14:7] of a 16-bit memory address. Bit15 is logic 1 and bits [6:0] are logic 0s.
Technical DataMC68HC908AZ60A — Rev 2.0
80FLASH-2 MemoryMOTOROLA
Page 81
FLASH-2 Memory
FLASH-2 Control and Block Protect Registers
The resultant 16-bit address is used for specifying the start address
of the FLASH-2 memory for block protection. FLASH-2 is protected
from this start address to the end of FLASH-2 memory at $7FFF. With
this mechanism, the protect start address can be $XX00 and $XX80
(128 byte page boundaries) within the FLASH-2 array.
16-bit memory address
Start address of FLASH block protect
1
FLBPR value
0000000
Figure 5-3. FLASH-2 Block Protect Start Address
FLASH-2 Protected Ranges:
FL2BPR[7:0]Protected Range
$FFNo Protection
$FE$7F00 – $7FFF
$FD$7E80 – $7FFF
$0B$0580 – $7FFF
$0A$0500 – $7FFF
$09$0480 – $7FFF
$08$0450 – $7FFF
$04$0450 – $7FFF
$03$0450 – $7FFF
$02$0450 – $7FFF
$01$0450 – $7FFF
$00$0450 – $7FFF
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAFLASH-2 Memory81
Page 82
FLASH-2 Memory
Decreasing the value in FL2BPR by one increases the protected range
by one page (128 bytes). However, programming the block protect
register with $FE protects a range twice that size, 256 bytes, in the
corresponding array. $FE means that locations $7F00–$7FFF are
protected in FLASH-2.
The FLASH memory does not exist at some locations. The block
protection range configuration is unaffected if FLASH memory does not
exist in that range. Refer to the memory map and make sure that the
desired locations are protected.
5.5 FLASH-2 Block Protection
Due to the ability of the on-board charge pump to erase and program the
FLASH memory in the target application, provision is made for protecting
blocks of memory from unintentional erase or program operations due to
system malfunction. This protection is done by using the FLASH-2 Block
Protection Register (FL2BPR). FL2BPR determines the range of the
FLASH-2 memory which is to be protected. The range of the protected
area starts from a location defined by FL2BPR and ends at the bottom
of the FLASH-2 memory ($7FFF). When the memory is protected, the
HVEN bit can not be set in either ERASE or PROGRAM operations.
NOTE:In performing a program or erase operation, the FLASH-2 Block Protect
Register must be read after setting the PGM or ERASE bit and before
asserting the HVEN bit.
When the FLASH-2 Block Protect Register is programmed with all 0’s,
the entire memory is protected from being programmed and erased.
When all the bits are erased (all 1’s), the entire memory is accessible for
program and erase.
When bits within FL2BPR are programmed (logic 0), they lock a block of
memory address ranges as shown in FLASH-2 Block Protect Register
on page 80. If FL2BPR is programmed with any value other than $FF,
the protected block of FLASH memory can not be erased or
programmed.
Technical DataMC68HC908AZ60A — Rev 2.0
82FLASH-2 MemoryMOTOROLA
Page 83
NOTE:The vector locations and the FLASH Block Protect Registers are located
in the same page. FL1BPR and FL2BPR are not protected with special
hardware or software; therefore, if this page is not protected by FL1BPR
and the vector locations are erased by either a page or a mass erase
operation, both FL1BPR and FL2BPR will also get erased.
5.6 FLASH-2 Mass Erase Operation
Use this step-by-step procedure to erase the entire FLASH-2 memory to
read as logic 1:
1.Set both the ERASE bit and the MASS bit in the FLASH-2 Control
Register (FL2CR).
2.Read the FLASH-2 Block Protect Register (FL2BPR).
FLASH-2 Memory
FLASH-2 Mass Erase Operation
3.Write to any FLASH-2 address within the FLASH-2 array with any
data.
NOTE:If the address written to in Step 3 is within address space protected by
the FLASH-2 Block Protect Register (FL2BPR), no erase will occur.
4.Wait for a time, t
NVS
.
5.Set the HVEN bit.
6.Wait for a time, t
MERASE
.
7.Clear the ERASE bit.
8.Wait for a time, t
NVHL
.
9.Clear the HVEN bit.
10.Wait for a time, t
, after which the memory can be accessed in
RCV
normal read mode.
NOTE:A. Programming and erasing of FLASH locations can not be performed
by code being executed from the same FLASH array.
B. While these operations must be performed in the order shown, other
unrelated operations may occur between the steps. Care must be taken
however to ensure that these operations do not access any address
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAFLASH-2 Memory83
Page 84
FLASH-2 Memory
within the FLASH array memory space such as the COP Control
Register (COPCTL) at $FFFF.
C. It is highly recommended that interrupts be disabled during
program/erase operations.
5.7 FLASH-2 Page Erase Operation
Use this step-by-step procedure to erase a page (128 bytes) of FLASH2 memory to read as logic 1:
1.Set the ERASE bit and clear the MASS bit in the FLASH-2 Control
Register (FL2CR).
2.Read the FLASH-2 Block Protect Register (FL2BPR).
3.Write any data to any FLASH-2 address within the address range
of the page (128 byte block) to be erased.
4.Wait for time, t
5.Set the HVEN bit.
6.Wait for time, t
.
NVS
ERASE
.
7.Clear the ERASE bit.
8.Wait for time, t
NVH
.
9.Clear the HVEN bit.
10.Wait for a time, t
, after which the memory can be accessed in
RCV
normal read mode.
NOTE:A. Programming and erasing of FLASH locations can not be performed
by code being executed from the same FLASH array.
B. While these operations must be performed in the order shown, other
unrelated operations may occur between the steps. Care must be taken
however to ensure that these operations do not access any address
within the FLASH array memory space such as the COP Control
Register (COPCTL) at $FFFF.
C. It is highly recommended that interrupts be disabled during
program/erase operations.
Technical DataMC68HC908AZ60A — Rev 2.0
84FLASH-2 MemoryMOTOROLA
Page 85
5.8 FLASH-2 Program Operation
Programming of the FLASH memory is done on a row basis. A row
consists of 64 consecutive bytes with address ranges as follows:
•$XX00 to $XX3F
•$XX40 to $XX7F
•$XX80 to $XXBF
•$XXC0 to $XXFF
During the programming cycle, make sure that all addresses being
written to fit within one of the ranges specified above. Attempts to
program addresses in different row ranges in one programming cycle will
fail. Use this step-by-step procedure to program a row of FLASH-2
memory.
FLASH-2 Memory
FLASH-2 Program Operation
NOTE:In order to avoid program disturbs, the row must be erased before any
byte on that row is programmed.
1.Set the PGM bit in the FLASH-2 Control Register (FL2CR). This
configures the memory for program operation and enables the
latching of address and data programming.
2.Read the FLASH-2 Block Protect Register (FL2BPR).
3.Write to any FLASH-2 address within the row address range
desired with any data.
4.Wait for time, t
5.Set the HVEN bit.
6.Wait for time, t
7.Write data byte to the FLASH-2 address to be programmed.
8.Wait for time, t
9.Repeat step 7 and 8 until all the bytes within the row are
programmed.
.
NVS
.
PGS
PROG
.
10.Clear the PGM bit.
11.Wait for time, t
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAFLASH-2 Memory85
NVH
.
Page 86
FLASH-2 Memory
12.Clear the HVEN bit.
13.Wait for a time, t
, after which the memory can be accessed in
RCV
normal read mode.
The FLASH Programming Algorithm Flowchart is shown in Figure 5-4.
NOTE:A. Programming and erasing of FLASH locations can not be performed
by code being executed from the same FLASH array.
B. While these operations must be performed in the order shown, other
unrelated operations may occur between the steps. Care must be taken
however to ensure that these operations do not access any address
within the FLASH array memory space such as the COP Control
Register (COPCTL) at $FFFF.
C. It is highly recommended that interrupts be disabled during
program/erase operations.
D. Do not exceed t
PROG
maximum or t
cumulative high voltage programming time to the same row before next
erase. t
must satisfy this condition: t
HV
max. Please also see FLASH Memory Characteristics on page 543.
maximum. t
HV
+ t
NVS
NVH
+ t
PGS
is defined as the
HV
+ (t
PROG
X 64) ð t
HV
E. The time between each FLASH address change (step 7 to step 7), or
the time between the last FLASH address programmed to clearing the
PGM bit (step 7 to step 10) must not exceed the maximum programming
time, t
PROG
max.
F. Be cautious when programming the FLASH-2 array to ensure that
non-FLASH locations are not used as the address that is written to when
selecting either the desired row address range in step 3 of the algorithm
or the byte to be programmed in step 7 of the algorithm. This applies
particularly to:
•$0450-$047F: First row of FLASH-2 (48 bytes)
Technical DataMC68HC908AZ60A — Rev 2.0
86FLASH-2 MemoryMOTOROLA
Page 87
FLASH-2 Memory
FLASH-2 Program Operation
Algorithm for programming
a row (64 bytes) of FLASH memory
1
2
Read the FLASH block protect register
3
Write any data to any FLASH address
Set PGM bit
within the row address range desired
4
5
6
7
Wait for a time, t
Set HVEN bit
Wait for a time, t
Write data to the FLASH address
to be programmed
8
Wait for a time, t
nvs
pgs
PROG
Completed
programming
Y
this row?
N
NOTE:
10
Clear PGM bit
The time between each FLASH address change (step 7 to step 7), or
the time between the last FLASH address programmed
to clearing PGM bit (step 7 to step 10)
11
Wait for a time, t
nvh
must not exceed the maximum programming
time, t
PROG
max.
12
Clear HVEN bit
This row program algorithm assumes the row/s
to be programmed are initially erased.
13
Wait for a time, t
rcv
End of programming
Figure 5-4. FLASH Programming Algorithm Flowchart
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAFLASH-2 Memory87
Page 88
FLASH-2 Memory
5.9 Low-Power Modes
The WAIT and STOP instructions will place the MCU in low power
consumption standby modes.
5.9.1 WAIT Mode
Putting the MCU into wait mode while the FLASH is in read mode does
not affect the operation of the FLASH memory directly; however, no
memory activity will take place since the CPU is inactive.
The WAIT instruction should not be executed while performing a
program or erase operation on the FLASH. Wait mode will suspend any
FLASH program/erase operations and leave the memory in a Standby
Mode.
5.9.2 STOP Mode
Putting the MCU into stop mode while the FLASH is in read mode does
not affect the operation of the FLASH memory directly; however, no
memory activity will take place since the CPU is inactive.
The STOP instruction should not be executed while performing a
program or erase operation on the FLASH. Stop mode will suspend any
FLASH program/erase operations and leave the memory in a Standby
Mode.
NOTE:Standby Mode is the power saving mode of the FLASH module, in which
all internal control signals to the FLASH are inactive and the current
consumption of the FLASH is minimum.
This section describes the 512 bytes of electrically erasable
programmable read-only memory (EEPROM) residing at address range
$0800 to $09FF. There are 1024 bytes of EEPROM available on the
MC68HC908AS60A and MC68HC908AZ60A which are physically
located in two 512 byte arrays. For information relating to the array
covering address range $0600 to $07FF please see EEPROM-2
Memory on page 109.
Features of the EEPROM-1 include the following:
•512 bytes Non-Volatile Memory
•Byte, Block, or Bulk Erasable
•Non-Volatile EEPROM Configuration and Block Protection
Options
•On-chip Charge Pump for Programming/Erasing
•Security Option
•AUTO Bit Driven Programming/Erasing Time Feature
Technical DataMC68HC908AZ60A — Rev 2.0
90EEPROM-1 MemoryMOTOROLA
Page 91
EEPROM-1 Memory
EEPROM-1 Register Summary
6.4 EEPROM-1 Register Summary
The EEPROM-1 Register Summary is shown in Figure 6-1.
Addr.Register NameBit 7654321Bit 0
EE1DIV Non-volatile
$FE10
EE1DIV Non-volatile
$FE11
EE1 Divider Register High
$FE1A
$FE1B
$FE1C
EE1 Divider Register Low
EEPROM-1 Non-volatile
Register High
(EE1DIVHNVR)*
Register Low
(EE1DIVLNVR)*
(EE1DIVH)
(EE1DIVL)
Register
(EE1NVR)*
Read:
EEDIVSECD
Write:
Reset:Unaffected by reset; $FF when blank
Read:
EEDIV7EEDIV6EEDIV5EEDIV4EEDIV3EEDIV2EEDIV1EEDIV0
Write:
Reset:Unaffected by reset; $FF when blank
Read:
EEDIVSECD
Write:
Reset:Contents of EE1DIVHNVR ($FE10), Bits [6:3] = 0
Read:
EEDIV7EEDIV6EEDIV5EEDIV4EEDIV3EEDIV2EEDIV1EEDIV0
Write:
Reset:Contents of EE1DIVLNVR ($FE11)
Read:
UNUSED UNUSED UNUSED EEPRTCTEEBP3EEBP2EEBP1EEBP0
Write:
Reset:Unaffected by reset; $FF when blank; factory programmed $F0
RRRREEDIV10EEDIV9EEDIV8
0000
EEDIV10EEDIV9EEDIV8
EEPROM-1 Control
$FE1D
EEPROM-1 Array
$FE1F
* Non-volatile EEPROM register; write by programming.
The 512 bytes of EEPROM-1 are located at $0800-$09FF and can be
programmed or erased without an additional external high voltage
supply. The program and erase operations are enabled through the use
of an internal charge pump. For each byte of EEPROM, the write/erase
endurance is 10,000 cycles.
6.5.1 EEPROM-1 Configuration
The 8-bit EEPROM-1 Non-Volatile Register (EE1NVR) and the 16-bit
EEPROM-1 Timebase Divider Non-Volatile Register (EE1DIVNVR)
contain the default settings for the following EEPROM configurations:
•EEPROM-1 Timebase Reference
•EEPROM-1 Security Option
•EEPROM-1 Block Protection
EE1NVR and EE1DIVNVR are non-volatile EEPROM registers. They
are programmed and erased in the same way as EEPROM bytes. The
contents of these registers are loaded into their respective volatile
registers during a MCU reset. The values in these read/write volatile
registers define the EEPROM-1 configurations.
For EE1NVR, the corresponding volatile register is the EEPROM-1
Array Configuration Register (EE1ACR). For the EE1DIVNCR (two 8-bit
registers: EE1DIVHNVR and EE1DIVLNVR), the corresponding volatile
register is the EEPROM-1 Divider Register (EE1DIV: EE1DIVH and EE1
DIVL).
Technical DataMC68HC908AZ60A — Rev 2.0
92EEPROM-1 MemoryMOTOROLA
Page 93
6.5.2 EEPROM-1 Timebase Requirements
A 35µs timebase is required by the EEPROM-1 control circuit for
program and erase of EEPROM content. This timebase is derived from
dividing the CGMXCLK or bus clock (selected by EEDIVCLK bit in
CONFIG-2 Register) using a timebase divider circuit controlled by the
16-bit EEPROM-1 Timebase Divider EE1DIV Register (EE1DIVH and
EE1DIVL).
As the CGMXCLK or bus clock is user selected, the EEPROM-1
Timebase Divider Register must be configured with the appropriate
value to obtain the 35 µs. The timebase divider value is calculated by
using the following formula:
EE1DIV= INT[Reference Frequency(Hz) x 35 x10
This value is written to the EEPROM-1 Timebase Divider Register
(EE1DIVH and EE1DIVL) or programmed into the EEPROM-1
Timebase Divider Non-Volatile Register prior to any EEPROM program
or erase operations(see EEPROM-1 Configuration on page 92 and
EEPROM-1 Timebase Requirements on page 93).
EEPROM-1 Memory
Functional Description
-6
+0.5]
6.5.3 EEPROM-1 Program/Erase Protection
The EEPROM has a special feature that designates the 16 bytes of
addresses from $08F0 to $08FF to be permanently secured. This
program/erase protect option is enabled by programming the EEPRTCT
bit in the EEPROM-1 Non-Volatile Register (EE1NVR) to a logic zero.
Once the EEPRTCT bit is programmed to 0 for the first time:
•Programming and erasing of secured locations $08F0 to $08FF is
permanently disabled.
•Secured locations $08F0 to $08FF can be read as normal.
•Programming and erasing of EE1NVR is permanently disabled.
•Bulk and Block Erase operations are disabled for the unprotected
locations $0800-$08EF, $0900-$09FF.
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAEEPROM-1 Memory93
Page 94
EEPROM-1 Memory
•Single byte program and erase operations are still available for
locations $0800-$08EF and $0900-$09FF for all bytes that are not
protected by the EEPROM-1 Block Protect EEBPx bits (see
EEPROM-1 Block Protection on page 94 and EEPROM-1 Array
Configuration Register on page 101)
NOTE:Once armed, the protect option is permanently enabled. As a
consequence, all functions in the EE1NVR will remain in the state they
were in immediately before the security was enabled.
6.5.4 EEPROM-1 Block Protection
The 512 bytes of EEPROM-1 are divided into four 128-byte blocks. Each
of these blocks can be protected from erase/program operations by
setting the EEBPx bit in the EE1NVR. Table 6-1 shows the address
ranges for the blocks.
Table 6-1. EEPROM-1 Array Address Blocks
Block Number (EEBPx)Address Range
EEBP0$0800–$087F
EEBP1$0880–$08FF
EEBP2$0900–$097F
EEBP3$0980–$09FF
These bits are effective after a reset or a upon read of the EE1NVR
register. The block protect configuration can be modified by
erasing/programming the corresponding bits in the EE1NVR register
and then reading the EE1NVR register. Please see EEPROM-1 Array
Configuration Register on page 101 for more information.
NOTE:Once EEDIVSECD in the EE1DIVHNVR is programmed to 0 and after a
system reset, the EE1DIV security feature is permanently enabled
because the EEDIVSECD bit in the EE1DIVH is always loaded with 0
thereafter. Once this security feature is armed, erase and program mode
are disabled for EE1DIVHNVR and EE1DIVLNVR. Modifications to the
EE1DIVH and EE1DIVL registers are also disabled. Therefore, be
cautious on programming a value into the EE1DIVHNVR.
Technical DataMC68HC908AZ60A — Rev 2.0
94EEPROM-1 MemoryMOTOROLA
Page 95
6.5.5 EEPROM-1 Programming and Erasing
The unprogrammed or erase state of an EEPROM bit is a logic 1. The
factory default for all bytes within the EEPROM-1 array is $FF.
The programming operation changes an EEPROM bit from logic 1 to
logic 0 (programming cannot change a bit from logic 0 to a logic 1). In a
single programming operation, the minimum EEPROM programming
size is one bit; the maximum is eight bits (one byte).
The erase operation changes an EEPROM bit from logic 0 to logic 1. In
a single erase operation, the minimum EEPROM erase size is one byte;
the maximum is the entire EEPROM-1 array.
The EEPROM can be programmed such that one or multiple bits are
programmed (written to a logic 0) at a time. However, the user may never
program the same bit location more than once before erasing the entire
byte. In other words, the user is not allowed to program a logic 0 to a bit
that is already programmed (bit state is already logic 0).
EEPROM-1 Memory
Functional Description
For some applications it might be advantageous to track more than 10K
events with a single byte of EEPROM by programming one bit at a time.
For that purpose, a special selective bit programming technique is
available. An example of this technique is illustrated in Table 6-2.
Table 6-2. Example Selective Bit Programming Description
Description
Original state of byte (erased)n/a1111:1111
First event is recorded by programming bit position 01111:11101111:1110
Second event is recorded by programming bit position 11111:11011111:1100
Third event is recorded by programming bit position 21111:10111111:1000
Fourth event is recorded by programming bit position 31111:01111111:0000
Events five through eight are recorded in a similar fashion
Program Data
in Binary
Result
in Binary
Note that none of the bit locations are actually programmed more than
once although the byte was programmed eight times.
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAEEPROM-1 Memory95
Page 96
EEPROM-1 Memory
When this technique is utilized, a program/erase cycle is defined as
multiple program sequences (up to eight) to a unique location followed
by a single erase operation.
Program/Erase
Using AUTO Bit
EEPROM-1
Programming
An additional feature available for EEPROM-1 program and erase
operations is the AUTO mode. When enabled, AUTO mode will activate
an internal timer that will automatically terminate the program/erase
cycle and clear the EEPGM bit. Please see EEPROM-1 Programming
on page 96, EEPROM-1 Erasing on page 97 and EEPROM-1 Control
Register on page 99 for more information.
The unprogrammed or erase state of an EEPROM bit is a logic 1.
Programming changes the state to a logic 0. Only EEPROM bytes in the
non-protected blocks and the EE1NVR register can be programmed.
Use the following procedure to program a byte of EEPROM:
1.Clear EERAS1 and EERAS0 and set EELAT in the EE1CR.
NOTE:If using the AUTO mode, also set the AUTO bit during Step 1.
2.Write the desired data to the desired EEPROM address.
3.Set the EEPGM bit.
(C)
Go to Step 7 if AUTO is set.
(A)
(B)
4.Wait for time, t
EEPGM
, to program the byte.
5.Clear EEPGM bit.
6.Wait for time, t
EEFPV
, for the programming voltage to fall. Go to
Step 8.
7.Poll the EEPGM bit until it is cleared by the internal timer.
8.Clear EELAT bits.
(E)
(D)
NOTE:A. EERAS1 and EERAS0 must be cleared for programming. Setting the
EELAT bit configures the address and data buses to latch data for
programming the array. Only data with a valid EEPROM-1 address will
be latched. If EELAT is set, other writes to the EE1CR will be allowed
after a valid EEPROM-1 write.
Technical DataMC68HC908AZ60A — Rev 2.0
96EEPROM-1 MemoryMOTOROLA
Page 97
EEPROM-1 Memory
Functional Description
B. If more than one valid EEPROM write occurs, the last address and
data will be latched overriding the previous address and data. Once data
is written to the desired address, do not read EEPROM-1 locations other
than the written location. (Reading an EEPROM location returns the
latched data and causes the read address to be latched).
C. The EEPGM bit cannot be set if the EELAT bit is cleared or a nonvalid EEPROM address is latched. This is to ensure proper
programming sequence. Once EEPGM is set, do not read any
EEPROM-1 locations; otherwise, the current program cycle will be
unsuccessful. When EEPGM is set, the on-board programming
sequence will be activated.
D. The delay time for the EEPGM bit to be cleared in AUTO mode is less
than t
EEPGM
. However, on other MCUs, this delay time may be different.
For forward compatibility, software should not make any dependency on
this delay time.
E. Any attempt to clear both EEPGM and EELAT bits with a single
instruction will only clear EEPGM. This is to allow time for removal of
high voltage from the EEPROM-1 array.
EEPROM-1 ErasingThe programmed state of an EEPROM bit is logic 0. Erasing changes
the state to a logic 1. Only EEPROM-1 bytes in the non-protected blocks
and the EE1NVR register can be erased.
Use the following procedure to erase a byte, block or the entire
EEPROM-1 array:
1.Configure EERAS1 and EERAS0 for byte, block or bulk erase; set
EELAT in EE1CR.
(A)
NOTE:If using the AUTO mode, also set the AUTO bit in Step 1.
2.Byte erase: write any data to the desired address.
Block erase: write any data to an address within the desired
block.
(B)
(B)
Bulk erase: write any data to an address within the array.
3.Set the EEPGM bit.
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAEEPROM-1 Memory97
(C)
Go to Step 7 if AUTO is set.
(B)
Page 98
EEPROM-1 Memory
4.Wait for a time: t
t
EEBULK.
for bulk erase.
EEBYTE
for byte erase; t
EEBLOCK
for block erase;
5.Clear EEPGM bit.
6.Wait for a time, t
EEFPV
7.Poll the EEPGM bit until it is cleared by the internal timer.
8.Clear EELAT bits.
, for the erasing voltage to fall. Go to Step 8.
(D)
(E)
NOTE:A. Setting the EELAT bit configures the address and data buses to latch
data for erasing the array. Only valid EEPROM-1 addresses will be
latched. If EELAT is set, other writes to the EE1CR will be allowed after
a valid EEPROM-1 write.
B. If more than one valid EEPROM write occurs, the last address and
data will be latched overriding the previous address and data. Once data
is written to the desired address, do not read EEPROM-1 locations other
than the written location. (Reading an EEPROM location returns the
latched data and causes the read address to be latched).
C. The EEPGM bit cannot be set if the EELAT bit is cleared or a nonvalid EEPROM address is latched. This is to ensure proper
programming sequence. Once EEPGM is set, do not read any
EEPROM-1 locations; otherwise, the current program cycle will be
unsuccessful. When EEPGM is set, the on-board programming
sequence will be activated.
D. The delay time for the EEPGM bit to be cleared in AUTO mode is less
than t
EEBYTE /tEEBLOCK/tEEBULK
. However, on other MCUs, this delay
time may be different. For forward compatibility, software should not
make any dependency on this delay time.
E. Any attempt to clear both EEPGM and EELAT bits with a single
instruction will only clear EEPGM. This is to allow time for removal of
high voltage from the EEPROM-1 array.
Technical DataMC68HC908AZ60A — Rev 2.0
98EEPROM-1 MemoryMOTOROLA
Page 99
6.6 EEPROM-1 Register Descriptions
Four I/O registers and three non-volatile registers control program, erase
and options of the EEPROM-1 array.
6.6.1 EEPROM-1 Control Register
This read/write register controls programming/erasing of the array.
Address:$FE1D
Bit 7654321Bit 0
EEPROM-1 Memory
EEPROM-1 Register Descriptions
Read:
UNUSED
Write:
Reset:00000000
0
EEOFFEERAS1EERAS0EELATAUTOEEPGM
= Unimplemented
Figure 6-2. EEPROM-1 Control Register (EE1CR)
Bit 7— Unused bit
This read/write bit is software programmable but has no functionality.
EEOFF — EEPROM-1 power down
This read/write bit disables the EEPROM-1 module for lower power
consumption. Any attempts to access the array will give unpredictable
results. Reset clears this bit.
EERAS1 and EERAS0 — Erase/Program Mode Select Bits
These read/write bits set the erase modes. Reset clears these bits.
Table 6-3. EEPROM-1 Program/Erase Mode Select
EEBPxEERAS1EERAS0MODE
000Byte Program
001Byte Erase
010Block Erase
011Bulk Erase
1XXNo Erase/Program
X = don’t care
MC68HC908AZ60A — Rev 2.0Technical Data
MOTOROLAEEPROM-1 Memory99
Page 100
EEPROM-1 Memory
EELAT — EEPROM-1 Latch Control
This read/write bit latches the address and data buses for
programming the EEPROM-1 array. EELAT cannot be cleared if
EEPGM is still set. Reset clears this bit.
1 = Buses configured for EEPROM-1 programming or erase
operation
0 = Buses configured for normal operation
AUTO — Automatic termination of program/erase cycle
When AUTO is set, EEPGM is cleared automatically after the
program/erase cycle is terminated by the internal timer.
(See note D for EEPROM-1 Programming on page 96, EEPROM-1
Erasing on page 97 and EEPROM Memory Characteristics on
page 542)
1 = Automatic clear of EEPGM is enabled
0 = Automatic clear of EEPGM is disabled
EEPGM — EEPROM-1 Program/Erase Enable
This read/write bit enables the internal charge pump and applies the
programming/erasing voltage to the EEPROM-1 array if the EELAT
bit is set and a write to a valid EEPROM-1 location has occurred.
Reset clears the EEPGM bit.
1 = EEPROM-1 programming/erasing power switched on
0 = EEPROM-1 programming/erasing power switched off
NOTE:Writing logic 0s to both the EELAT and EEPGM bits with a single
instruction will clear EEPGM only to allow time for the removal of high
voltage.
Technical DataMC68HC908AZ60A — Rev 2.0
100EEPROM-1 MemoryMOTOROLA
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.