UART Boot Loader Design - AN4767 & AN4767SW

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

UART Boot Loader Design - AN4767 & AN4767SW

Jump to solution
1,534 Views
jeniabrook
Contributor II

Hello all,

Eventually I decided to follow up "UART Boot Loader Design on Kentis E Series" document.

I have KE06Z128. I've downloaded AN4767SW and integrated it in KDS and configured UART for communication.

Also downloaded AN2295 PC side host GUI for tools to decode the  s19 file and transfer the application code to target MCU by UART interface.

When I run with debugger and connect to the AN2295 GUI, it communicates and get the IDENT info:

01.jpg

But when I'm trying to 'Erase' or 'Program' it fails:

02.jpg

my configurations from FC_protocol.h:

03.jpg

MyBlink.srec is just mine little program to test the serial boot loader, I've test it, work good.

What could be the problem?

Jenia.

Labels (1)
0 Kudos
1 Solution
966 Views
jeremyzhou
NXP Employee
NXP Employee

Hi Jenia,

Regarding to the kind of issue, I'd highly recommend you to capture the waveform by oscilloscope when click the Erase and Program buttons, then compare the captured waveform with the Fig 1 illustrates.2016-07-05_19-01-05.jpg

Hope it helps.
Have a great day,
Ping

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

View solution in original post

5 Replies
966 Views
jeremyzhou
NXP Employee
NXP Employee

Hi Jenia,

I was wondering if you can illustrate the whole procedures of porting the demo from the IAR to the KDS.

I'll appreciate a lot if you can upload the demo, then I can replicate the issue on my site and it can accelerate the investigation of the issue.

I'm looking forward to your reply.
Have a great day,
Ping

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
966 Views
jeniabrook
Contributor II

Hi Ping,

I've created new project in KDS with PE, added UART component for communication and IntFlash for write/erase the flash.

In main() function added the code from the source in "Bootloader_sci.c". In addition added "FC_Protocol.c" & "FC_Protocol.h" to the project and updated the relevant functions for communication and write/erase the flash with ones from PE.

I don't know how to upload the .zip file to this thread, so I uploaded it to mine google drive with shareable link:

Bootloader.rar - Google Drive

Thank you for your help.

BR,

Jenia

0 Kudos
967 Views
jeremyzhou
NXP Employee
NXP Employee

Hi Jenia,

Regarding to the kind of issue, I'd highly recommend you to capture the waveform by oscilloscope when click the Erase and Program buttons, then compare the captured waveform with the Fig 1 illustrates.2016-07-05_19-01-05.jpg

Hope it helps.
Have a great day,
Ping

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

966 Views
jeniabrook
Contributor II

Thank you.

The problem was in communications. I've checked accordingly to the protocol that you posted here, the address that I received was wrong maybe due to polling in UART.

Switched to interrupts in UART and that solved the problem.

BR,

Jenia

0 Kudos
966 Views
huyrua291996
Contributor I

Hi, I also got the problem like you, but it still didnt work

Did you use UART interrupt for RX or both RX, TX. If both, how did you do

And do you use RTS CTS?

0 Kudos