English
Language : 

LM3S328 Datasheet, PDF (367/371 Pages) List of Unclassifed Manufacturers – Microcontroller
LM3S328 Data Sheet
20.3.1
20.3.2
COMMAND_PING (0x20)
This command simply accepts the command and sets the global status to success. The format of
the packet is as follows:
Byte[0] = 0x03;
Byte[1] = checksum(Byte[2]);
Byte[2] = COMMAND_PING;
The ping command has 3 bytes and the value for COMMAND_PING is 0x20 and the checksum of
one byte is that same byte, making Byte[1] also 0x20. Since the ping command has no real return
status, the receipt of an ACK can be interpreted as a successful ping to the flash loader.
COMMAND_GET_STATUS (0x23)
This command returns the status of the last command that was issued. Typically, this command
should be sent after every command to ensure that the previous command was successful or to
properly respond to a failure. The command requires one byte in the data of the packet and should
be followed by reading a packet with one byte of data that contains a status code. The last step is
to ACK or NAK the received data so the flash loader knows that the data has been read.
Byte[0] = 0x03
Byte[1] = checksum(Byte[2])
Byte[2] = COMMAND_GET_STATUS
20.3.3
COMMAND_DOWNLOAD (0x21)
This command is sent to the flash loader to indicate where to store data and how many bytes will
be sent by the COMMAND_SEND_DATA commands that follow. The command consists of two
32-bit values that are both transferred MSB first. The first 32-bit value is the address to start
programming data into, while the second is the 32-bit size of the data that will be sent. This
command also triggers an erase of the full area to be programmed so this command takes longer
than other commands. This results in a longer time to receive the ACK/NAK back from the board.
This command should be followed by a COMMAND_GET_STATUS to ensure that the Program
Address and Program size are valid for the device running the flash loader.
The format of the packet to send this command is a follows:
Byte[0] = 11
Byte[1] = checksum(Bytes[2:10])
Byte[2] = COMMAND_DOWNLOAD
Byte[3] = Program Address [31:24]
Byte[4] = Program Address [23:16]
Byte[5] = Program Address [15:8]
Byte[6] = Program Address [7:0]
Byte[7] = Program Size [31:24]
Byte[8] = Program Size [23:16]
Byte[9] = Program Size [15:8]
Byte[10] = Program Size [7:0]
20.3.4
COMMAND_SEND_DATA (0x24)
This command should only follow a COMMAND_DOWNLOAD command or another
COMMAND_SEND_DATA command if more data is needed. Consecutive send data commands
April 27, 2007
367
Preliminary