Family 1 commands—load variable length – Maxim Integrated MAXQ20-Based Microcontroller Bootloader Command Reference User Manual
Page 7

MAXQ20-Based Microcontroller Bootloader Command Reference
7
Family 1 Commands—Load Variable Length
Command 10h—Load Code Variable Length
Byte1
Byte2
Byte3
Byte4
(Length)
Bytes
Byte
Length+5
Byte
Length+6
Input
10h
Length
AddrL
AddrH
Data to load
00h
00h
Output
03Eh
This command programs (Length) bytes of data into the program flash starting at byte address (AddrH:AddrL),
with the following restrictions.
• The low bit of the AddrL is always forced to zero, since instructions in program flash must be word
aligned.
• In byte mode, if an odd number of bytes is input, the final word written to the program flash will have its
most significant byte set to 00h by default.
• Memory locations in flash which have previously been loaded must be erased using the Master Erase or
Erase Code Fixed Length commands before they can be loaded with a different value.
• In keeping with standard MAXQ little-endian memory architecture, the least significant byte of each word
is loaded first. For example, loading bytes (11h, 22h, 33h, 44h) starting at address 0000h, the first two
words of program space will be written to (2211h, 4433h).
Command 11h—Load Data Variable Length
Byte1
Byte2
Byte3
Byte4
(Length)
Bytes
Byte
Length+5
Byte
Length+6
Input
11h
Length
AddrL
AddrH
Data to load
00h
00h
Output
03Eh
This command writes (Length) bytes of data into the data SRAM starting at byte address (AddrH:AddrL).