64
SAM9X25 [DATASHEET]
11054E–ATARM–10-Mar-2014
Mode commands:
Normal mode configures SAM-BA Monitor to send / receive data in binary format,
Terminal mode configures SAM-BA Monitor to send / receive data in ascii format.
Write commands: Write a byte (O), a halfword (H) or a word (W) to the target.
Address: Address in hexadecimal.
Value: Byte, halfword or word to write in hexadecimal.
Output: ‘>’
Read commands: Read a byte (o), a halfword (h) or a word (w) from the target.
Address: Address in hexadecimal.
Output: The byte, halfword or word read in hexadecimal followed by ‘>’
Send a file (S): Send a file to a specified address.
Address: Address in hexadecimal.
Output: ‘>’
Note:
There is a time-out on this command which is reached when the prompt ‘>’ appears before the end of the com-
mand execution.
Receive a file (R): Receive data into a file from a specified address
Address: Address in hexadecimal.
NbOfBytes
: Number of bytes in hexadecimal to receive.
Output: ‘>’
Go (G): Jump to a specified address and execute the code.
Address: Address to jump in hexadecimal.
Output: ‘>’once returned from the program execution. If the executed program does not handle the link
register at its entry and does not return, the prompt will not be displayed.
Get Version (V): Return the Boot Program version.
Output: version, date and time of ROM code followed by ‘>’.
11.5.2 DBGU Serial Port
Communication is performed through the DBGU serial port initialized to 115,200 Baud, 8 bits of data, no parity, 1 stop bit.
11.5.2.1 Supported External Crystal/External Clocks
The SAM-BA Monitor supports a frequency of 12 MHz to allow DBGU communication for both external crystal and
external clock.
11.5.2.2 Xmodem Protocol
The Send and Receive File commands use the Xmodem protocol to communicate. Any terminal performing this protocol
can be used to send the application file to the target. The size of the binary file to send depends on the SRAM size
embedded in the product. In all cases, the size of the binary file must be lower than the SRAM size because the Xmodem
protocol requires some SRAM memory in order to work.
The Xmodem protocol supported is the 128-byte length block. This protocol uses a two-character CRC16 to guarantee
detection of a maximum bit error.
Xmodem protocol with CRC is accurate provided both sender and receiver report successful transmission. Each block of
the transfer looks like:
<SOH><blk #><255-blk #><--128 data bytes--><checksum> in which:
<SOH> = 01 hex
<blk #> = binary number, starts at 01, increments by 1, and wraps 0FFH to 00H (not to 01)
<255-blk #> = 1’s complement of the blk#.
<checksum> = 2 bytes CRC16