Jumper,
It seems the 16 series pics are different in how the libraries are assigned in memory space. I am going to look further in to it, but will try to mod the LOADER_USED jump as suggested.
stay tuned..
bill.
Jumper,
It seems the 16 series pics are different in how the libraries are assigned in memory space. I am going to look further in to it, but will try to mod the LOADER_USED jump as suggested.
stay tuned..
bill.
Well I did a bit more digging and talked to Jeff at MELabs.
This is what he told me :
<quote>
Jeff Schmoyer wrote:
Hello,
The problem is that you really can't do that. For the 14-bit
core parts, the library must be at the bottom of memory. The
bootloader has to be a completely separate program, including
its own library. This really isn't practical for a 14-bit
core part.
We did make a change for the PIC18 parts to allow the reset
location to be changed. This allows you to move the library
and the entire program up to higher memory. When you
boot load in a new program, it fills in at the bottom as
usual, with the bootloader and its library still up high.
For the 14-bit core parts, you will need to create an
assembler boot loader that does what you want, or modify
one of the many that are already out there.
To write one in PBP, you will need to move to a PIC18 part.
Thank you,
Jeff Schmoyer
microEngineering Labs, Inc.
</quote>
So it looks like it is back to reverse engineering other peoples ASM code to make it run in the 16F87. I am now going to look at the WLoader ASM and see how 'portable' it is to the 16F8x series.
Stay tuned...
bill.
This might be a silly question, but why not move to 18F parts and solve the problem that way?
Charles Linquist
Hi Charles,
I looked into using something like the 18F1320, but the HW UART pins have moved, which means a redesign of the PCB.
Wehn the product comes up for a design refresh I will look at moving to a new processor, but for now looks like I am stuck with the 16f87.
All is not lost as I think I can re-engineer the WLoader to work.
bill.
Still looking in to this and I think I have found a way. Using the SparkFun BLoader code and a quick tutorial on bit-banged serial ports in C I am aiming to do a bit of testing this weekend.
Not as nice as a pbp based one, but if it works - woohoo !
bill.
Bookmarks