We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi,
I am using Phytex LPC3250 board for my design. I try to run the sample blinky application from the nand flash.
I download the Bootloader_NAND project to the flash and then download blinky. There is no problem here yet, I get the "Verify OK." messages.
However, when I power off and on the board, the code does not run. The application is not booted.
May this be a problem related to stage 1 loader? How can I be sure that stage 1 loader exists and boots the stage 2 loader?
Thanks in advance.
The stage one bootloader is in ROM on the processor silicon and it is executed after each reset.
If you look at chapter 35 of the user manual you can see the boot sequence.
A better question you might ask is whether the 2nd stage bootloader is being loaded from NAND and executing correctly.
Have you done a NAND erase? That would have removed the 2nd stage bootloader and you would then have to reload it.
What I have done is add some debug output to a serial port on the 2nd stage bootloader - It has been very useful to know what is happening in those early stages.
I erased the flash and then reloaded the Bootloader_NAND. There seems to be no problem, because I get the "Verify OK" mesage. I wonder whether the stage 1 loader is permanently in the chip? Can I somehow accidentally have erased it? So that the second stage bootloader is not loaded from NAND.
Or, is there any jumper configuration on the board for booting from NAND?
After booting the sample project I successfuly, I will also add some debug info in the 2nd stage bootloader.
"I wonder whether the stage 1 loader is permanently in the chip? Can I somehow accidentally have erased it? So that the second stage bootloader is not loaded from NAND."
As far as I am aware, the stage 1 loader is in ROM and cannot be erased.
You can load/run the 2nd stage loader using uVision - That might be a quicker way for you to see what's going wrong.
This time I am using the Bootloader_NOR and the code is booted without any problem.
Why can't I boot from NAND flash but can boot from NOR flash? Is there any jumper setting saying use the NOR flash?
Thank you.
"Is there any jumper setting saying use the NOR flash?"
I can't remember seeing one mentioned - But it's a while since I used the Phytec board and we now have our own design.
But ... did you try:
1 - Reading chapter 35 of the user manual on the boot sequence 2 - Adding debug code to the NAND 2nd boot loader 3 - Running the NAND 2nd loader under the debugger
Also:
1 - Looking at the Phytec circuit diagrams (which should have been supplied with your board) would give a clue as to whether there are any links controlling this action 2 - Checking the Phytec web site(s) for FAQ entries
It is fairly certain that this is NOT a Keil issue. I have been using their bootstrap loaders and example code for the LPC3250 for quite a while and experienced no serious problems.