The way I intend to do things is like I have done on many other
products.
The flash will comprise 3 major regions:
* Philips ISP loader
* My "bootloader" the flash sector at address 0)
* "Application area" (the rest of flash)
Port 0.14 is wired such that it is normally pulled high, but with a
test point to allow it to be pulled low. During manufacturing, the
programming/test station has a test jig which pulls this pin low to
force the ISP mode. The flash is then programmed with my bootloader
and the application.
Once disconnected and rebooted, the code will execute my bootloader.
This has two roles:
* Firstly it does a checksum over the entire "application area". [ie.
similar in concept to the Philips bootloader checksum, but more
thorough] If the checksum fails or
* a break is detected,
then the bootloader will go int o the firmware upgrade mode to allow
the "application area" to be reprogrammed. Flash programming is done
with "In Application Programming" (IAP) described in Philips AN10256.
If the checksum is OK and there is no break, then the "applicaion" is
executed (ie. jump to first address in "application area").
--- In lpc2000@yahoogroups.com, Owen Mooney <ojm@s...> wrote:
> As I mentioned I am a newbie to this processor.
>
> I am currently waitng for my development tools but have larely
finished
> my circuit diagram, and need to deal with this pin.
>
> As a matter of principle I like to have firware upgrade capablity in
my
> products via a serial port. (Its difficult to otherwise access
hardware
> embedded in 1/2 an inch of epoxy!)
>
> I appreciate that this bit (and a reset) give access to the boot
loader.
> Is is also possible to jump into the boot loader from a running
program.
> If so what is the entry address and what conditons must I set up
before
Show quoted textHide quoted text
> I do. I expect to reset the program afterwards.
>
> Thanks
>
> Owen Mooney