Datasheet
Memory
MC68HC908QB8 Data Sheet, Rev. 3
30 Freescale Semiconductor
2.5 Random-Access Memory (RAM)
This MCU includes static RAM. The locations in RAM below $0100 can be accessed using the more
efficient direct addressing mode, and any single bit in this area can be accessed with the bit manipulation
instructions (BCLR, BSET, BRCLR, and BRSET). Locating the most frequently accessed program
variables in this area of RAM is preferred.
The RAM retains data when the MCU is in low-power wait or stop mode. At power-on, the contents of
RAM are uninitialized. RAM data is unaffected by any reset provided that the supply voltage does not drop
below the minimum value for RAM retention.
For compatibility with older M68HC05 MCUs, the HC08 resets the stack pointer to $00FF. In the devices
that have RAM above $00FF, it is usually best to reinitialize the stack pointer to the top of the RAM so the
direct page RAM can be used for frequently accessed RAM variables and bit-addressable program
variables. Include the following 2-instruction sequence in your reset initialization routine (where RamLast
is equated to the highest address of the RAM).
LDHX #RamLast+1 ;point one past RAM
TXS ;SP<-(H:X-1)
Table 2-1. Vector Addresses
Vector Priority Vector Address Vector
Lowest
Highest
IF22–
IF16
$FFD0–
$FFDC
Not used
IF15 $FFDE,F ADC conversion complete vector
IF14 $FFE0,1 Keyboard vector
IF13 $FFE2,3 SPI transmit vector
IF12 $FFE4,5 SPI receive vector
IF11 $FFE6,7 ESCI transmit vector
IF10 $FFE8,9 ESCI receive vector
IF9 $FFEA,B ESCI error vector
IF8 — Not used
IF7 $FFEE,F TIM1 Channel 3 vector
IF6 $FFF0,1 TIM1 Channel 2 vector
IF5 $FFF2,3 TIM1 overflow vector
IF4 $FFF4,5 TIM1 Channel 1 vector
IF3 $FFF6,7 TIM1 Channel 0 vector
IF2 — Not used
IF1 $FFFA,B IRQ
vector
— $FFFC,D SWI vector
— $FFFE,F Reset vector