EasyManua.ls Logo

ST SPC560P34 - Boot from Uart-Autobaud Disabled; Figure 484. Start Address, VLE Bit and Download Size in Bytes

ST SPC560P34
936 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
RM0046 Boot Assist Module (BAM)
Doc ID 16912 Rev 5 817/936
Figure 484. Start address, VLE bit and download size in bytes
Download data
Each byte of data received is stored into device’s SRAM, starting from the address specified
in the previous protocol step.
The address increments until the number of bytes of data received matches the number of
bytes specified in the previous protocol step.
Since the SRAM is protected by 32-bit wide Error Correction Code (ECC), BAM always
writes bytes into SRAM grouped into 32-bit words. If the last byte received does not fall onto
a 32-bit boundary, BAM fills it with 0 bytes.
Then a “dummy” word (0x0000_0000) is written to avoid ECC error during core prefetch.
Execute code
The BAM program waits for the last echo message transmission being completed.
Then it restores the initial MCU configuration and jumps to the loaded code at Start Address
that was received in step 3 of the protocol.
At this point BAM has finished its tasks and MCU is controlled by new code executing from
SRAM.
33.5.6 Boot from UART—autobaud disabled
Configuration
Boot from UART protocol is implemented by LINFlex_0 module. Pins used are:
LINFlex_TX corresponds to pin B[2]
LINFlex_RX corresponds to pin B[3].
When autobaud feature is disabled, the system clock is driven by external oscillator.
LINFlex controller is configured to operate at a baud rate = system clock frequency/833 (see
Table 440 for baud rate example), using 8-bit data frame without parity bit and 1 stop bit.
START_ADDRESS[31:16]
START_ADDRESS[15:0]
VLE CODE_LENGTH[30:16]
CODE_LENGTH[15:0]

Table of Contents

Related product manuals