After the AVBRL is started (via a reset, a power-up, or a jump from the main
application), the following protocol must be observed:
1. Upon power-up, reset, or as a result of a jump from the main application, the
AVRBL sends a ‘^’ (BOOTLOADER_ACTIVE_CHAR) at your selected baud
rate.
2. The host is then required to send the three-character entry sequence. This is
used to prevent an inadvertent attempt of reprogramming from taking place. If
the AVRBL does not receive these characters within the timeout period, the
AVRBL tests to see if there is code located in the main application area of flash.
If there is, then the AVRBL jumps to it, otherwise, execution stays within the
AVRBL indefinitely, waiting for the entry sequence.
3. Once the three-character entry sequence has been sent, the bootloader sends
the version string (Vx.xx) followed by a ‘?’ (READY_CHAR).
4. Upon receipt of the READY_CHAR, the host application should send the hex file
for the new/updated application program observing an X-ON / X_OFF
handshaking protocol to control data flow. The handshaking is very important as
the flash memory area writes much more slowly than the serial port can send
data.
37
7
The upgrade process can also be started without Windows software via the
sequence <ESC>U<CR>. The subsequent protocol must then be carried out
independently:
Laminator
Host
Hint
ˆ
BootLoader is ready
@&$
Start Download Sequence
V1.31
?
ready for Download
XON
enable Interface
:naatddd…c
Send 1 HexLine (Intel-Hex-Format)
-
if Checksum Error
XOFF
disable interface
%
if Verify-Error in Flash-Page
~
HexLine closed
#
EOF identified, exit with error
@
EOF identified, exit without error
AVR Programming Protocol