Experimenting with compiling the Mircochip HID USB bootloader and using my pickit2 to burn it into a PIC16F1455. This (bootloader) seemed to start and run fine in my USB Low Pincount Demo board, and the 2.90 bootloader utility detects the bootloader ok.
When I attempt to compile a simple blinky...
'#chip 16F1455, 16
'#option bootloader 0xb00
'Main routine
Start:
'Turn one LED on, the other off
SET PORTA.5 ON
Wait 10 Us
'Now toggle the LEDs
SET PORTA.5 OFF
'2 ms period/500 Hz signal
Wait 10 us
goto Start
I see this error ...
"Error: First page of program memory is full, please reduce size of Main and Interrupt routines"
This is very new for me, suggestions anyone?
Best,
R.
Last edit: Randall Young 2015-03-01
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Typically your bootloading software will make memory adjustments when loading the chip. Remove #option bootloader ... and see if this compiles, loads and executes as expected.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Would it be possible to re-visit this? On the 18F the option bootloader offset is no problem, but since more people is using the 16f1459 /5 /4 it might be useful to get this going?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I have used the HID USB bootloader for the 16f1459 / 4 / 5 and as mentioned above the option bootloader offset makes great cow basic complain about the first page being full. After searching a while I found another usb bootloader that have an offset of 512 and great cow basic does compile a small program but the moment the program gets bigger it complains about the same thing.
4.0 Sec. Compiler Version: 0.98.01 2017-10-27 Program Memory: 1531/8192 words (18.69%) RAM: 0/1024 bytes (0.%) Chip: 16F1459
Anything bigger than that and I get the same error "page one full". On the 18f parts this does not happen, but I really want to use the 16f1459 / 4 / 5 since it is increddibly cheap.
Thanks for a great free compiler, beggars cant be choosers, but I would like it if you can look at this.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Just an update: making the program into sub routines did not work. how do I tell breat cow basic where my main program starts and stops? I usually use ether a do.... loop, or a goto label:
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Howdy folks!
Experimenting with compiling the Mircochip HID USB bootloader and using my pickit2 to burn it into a PIC16F1455. This (bootloader) seemed to start and run fine in my USB Low Pincount Demo board, and the 2.90 bootloader utility detects the bootloader ok.
When I attempt to compile a simple blinky...
'#chip 16F1455, 16
'#option bootloader 0xb00
'Main routine
Start:
'Turn one LED on, the other off
SET PORTA.5 ON
Wait 10 Us
'Now toggle the LEDs
SET PORTA.5 OFF
'2 ms period/500 Hz signal
Wait 10 us
goto Start
I see this error ...
"Error: First page of program memory is full, please reduce size of Main and Interrupt routines"
This is very new for me, suggestions anyone?
Best,
R.
Last edit: Randall Young 2015-03-01
Typically your bootloading software will make memory adjustments when loading the chip. Remove #option bootloader ... and see if this compiles, loads and executes as expected.
It seems that '#option bootoader does not allow addresses above 0x7DF. Is this correct?
'
This is what I'm seeing as well...
I'm hoping to find a USB boot-loader for this cheap, fast, accurate little PIC compatible with Great Cow ... Here's another candidate.
https://code.google.com/p/pic16f1454-bootloader/
Seems stable and fast. See attached requirements for MpLabX for apps compatible with this facility. How do we map to Great Cow?
I had good luck with the Tiny Bootloader http://tinypicbootload.sourceforge.net/.
They have one for the 16f1454/1455/1459. No OPTION Bootloader ORG offset required.
Thank you, that's very helpful.
Would it be possible to re-visit this? On the 18F the option bootloader offset is no problem, but since more people is using the 16f1459 /5 /4 it might be useful to get this going?
And please dont reccomend a serial bootloader...
Pleae elaborate. What is question?
We are working hand in hard with TinyBootLoader+. It works very well - but, is the answering the right question? :-)
I have used the HID USB bootloader for the 16f1459 / 4 / 5 and as mentioned above the option bootloader offset makes great cow basic complain about the first page being full. After searching a while I found another usb bootloader that have an offset of 512 and great cow basic does compile a small program but the moment the program gets bigger it complains about the same thing.
4.0 Sec. Compiler Version: 0.98.01 2017-10-27 Program Memory: 1531/8192 words (18.69%) RAM: 0/1024 bytes (0.%) Chip: 16F1459
Anything bigger than that and I get the same error "page one full". On the 18f parts this does not happen, but I really want to use the 16f1459 / 4 / 5 since it is increddibly cheap.
Thanks for a great free compiler, beggars cant be choosers, but I would like it if you can look at this.
Second call for it the same issue this month.
Meanwhile simple cut the long piece of code into two subs. Not idea but this will work.
Thank you, will give it a try.
Just an update: making the program into sub routines did not work. how do I tell breat cow basic where my main program starts and stops? I usually use ether a do.... loop, or a goto label:
onother update: it works.... lol
did it wrong the first time
Last edit: Gert vd Walt 2018-03-23
The minimum structure that I use:
tx
Indeed Tiny Bootloader+ works very well, as I have used countless times, even on LANs to remotely upload new OS.
Great little bootloader.
Last edit: Hanspeter 2019-07-16