SPC5674F Serial Bootload Code

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

SPC5674F Serial Bootload Code

1,120 Views
pyi285
Contributor II

I'm trying to run a bootloader through serial communication, but the program crashes in the middle of what's wrong with the code I wrote. I'm looking for someone who can explain this in detail or modify the code.
The attached file below is the code I wrote. Please refer to what the problem is.
The link is a site that was used after watching this, modifying or transforming it.
https://community.nxp.com/t5/MPC5xxx/MPC5674F-Bootload/td-p/1615404


#scp5674F #MPC5676M

0 Kudos
11 Replies

1,109 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

Hi @pyi285 

I took a quick look at your project and I can see that you are using SSD drivers from original bootloader. But it's necessary to use drivers directly for MPC5674F:

https://www.nxp.com/webapp/Download?colCode=MPC5674F_C90FL_SSD_DRV

I recommend to check section "2 MEMORY LAYOUT" in the user manual of the driver to understand the mapping. The flash is interleaved in high address space on this device, so it's little bit different here.

Regards,

Lukas

0 Kudos

1,009 Views
pyi285
Contributor II

I downloaded it by following the link you gave. What should I do next?

0 Kudos

981 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

You should find the drivers at this path after installation:

c:\Program Files (x86)\Freescale\Standard Software C90FL Driver v1.0.4\MPC5674_5676R\

Replace the drivers in your project and see the user manual UM_C90FL_MM_SSD.pdf for details.

0 Kudos

979 Views
pyi285
Contributor II
I'm currently looking at it now. But which code is better to use, vle or book?
0 Kudos

976 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

Your project which you shared earlier is VLE, so you need to use VLE version of the drivers. BOOKE would not work.

0 Kudos

960 Views
pyi285
Contributor II

This is the code I made with the code link you gave. But the eraser code works, but the board receives data through serial communication (RS232) and I want to program it in the board, but it doesn't work. Can you see why?

Question
1. Serial communication is performed, but the received data is not stored in the flexi memory on the board (I sent the converted.s19 file with the Teraterm program)


2. If, after solving number 1, is there a way to jump to the desired address without resetting the board, load it from there, and run the application program (aka bootloader)?

The continued questioning may upset you, but to me it is really important.
I'm counting on you

0 Kudos

937 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

1. Is Xon/Xoff flow control enabled on your host? This is a must have.

2. I do not recommend this. You would have to do complete deinitialization of everything. Reset is much more efficient.

Regards,

Lukas

0 Kudos

931 Views
pyi285
Contributor II
1. Set the current host
port: com1
Baud rate: 115200
Data: 8 bit
Parity: none
Stop: 1 bit
Flowcontrol: none

2. If you reset or turn off the power, all the contents downloaded to Flash/Ram will disappear.
0 Kudos

858 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

"Flowcontrol: none" - well, as I wrote in previous post, Xon-Xoff is mandatory. It won't work without this.

0 Kudos

742 Views
pyi285
Contributor II

Could you please take a look at my code? I did everything, but the problem is AppExecute(); The bootloader does not work when I use the function. Can you tell me if there is something wrong?

0 Kudos

970 Views
pyi285
Contributor II
Thank you very much for your steady reply
0 Kudos