Specifications
MCU slave software
Developer’s Serial Bootloader, Rev. 13
Freescale Semiconductor 53
LDA #%00001001
STA FLCR ; set HVEN, keep PGM
D_US #T5US ; wait 5us
LDHX #DAT ; prepare addresses
TXS
LDHX ADRS
MOV LEN,POM
WR_ALG_L1:
PULA
STA X
AIX #1
D_US #T30US ; wait 30us
DBNZ POM,WR_ALG_L1 ; copy desired block of data
LDA #%00001000
STA FLCR ; keep HVEN, PGM off
D_US #T5US ; wait 5us
CLRA
STA FLCR ; HVEN off
D_US #T1US ; wait 1us
JMP RETWR ; finish with ACK (& restore STACK before)
WR_ALG_END:
END
Figure 34. FLASH programming routines source code
For improved readability, two timing macros (D_US and D_MS) are used in the code (Figure 35).
;*******************************************************************************************
D_MS: MACRO
LDA \1 ; [2] ||
\@L2: CLRX ; [1] ||
\@L1: NOP ; [1] |
DBNZX \@L1 ; [3] | 256*4 = 1024T
DBNZA \@L2 ; [3] || (1024+4)*(arg-1) + 2 T
ENDM
D_US: MACRO
LDA \1 ; [2]
\@L1: NOP ; [1]
DBNZA \@L1 ; [3] 4*(arg-1) + 2 T
ENDM
Figure 35. FLASH programming macros source code
8.4 MC68HC908GR
MC68HC908GR MCUs are smaller members of the MC68HC908GP Family, equipped with ROM
memory with on-chip FLASH programming routines available in the user mode.










