Searching \ for '[PIC]: Not enough Program Memory on a 16F876' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page: www.piclist.com/techref/microchip/memory.htm?key=memory
Search entire site for: 'Not enough Program Memory on a 16F876'.

Exact match. Not showing close matches.
PICList Thread
'[PIC]: Not enough Program Memory on a 16F876'
2002\10\16@054159 by Martin.Buehler

picon face
i have a project, using a 16F876.
as i ran out of program memory in an early phase, i moved all constants,
look-up tables, and text strings to an external i2c eeprom, to save
memory.
now, in the final phase, i run out of program memory again, and i cannot
see, where i could reduce the code. i need about 3kb more space.
what's the best way to go?
is there a 1:1 replacement for the 16f876 with more memory?
or is it possible to distribute the code on 2 pics in a simple way?
thanks for your help!
tino

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2002\10\16@054824 by Andy Kunz

flavicon
face
>is there a 1:1 replacement for the 16f876 with more memory?
>or is it possible to distribute the code on 2 pics in a simple way?
>thanks for your help!

Look to the 18F line.  I had the same problem with a 16F877 and swapped
over to an 18F452.  There were only minor tweaks to get the C code to fly
in the new chip.

Andy

-------------------------------------------------------------------
Race Boats  - spam_OUTandyTakeThisOuTspamRC-Hydros.com      http://www.RC-Hydros.com
Airplanes   - .....andyKILLspamspam@spam@FlyingHobbies.com  http://www.FlyingHobbies.com
Electronics - andyspamKILLspamMontanaDesign.com  http://www.MontanaDesign.com
-------------------------------------------------------------------

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2002\10\16@055030 by Wouter van Ooijen

face picon face
> i have a project, using a 16F876.
> as i ran out of program memory in an early phase, i moved all
> constants,
> look-up tables, and text strings to an external i2c eeprom, to save
> memory.
> now, in the final phase, i run out of program memory again,
> and i cannot
> see, where i could reduce the code. i need about 3kb more space.
> what's the best way to go?
> is there a 1:1 replacement for the 16f876 with more memory?
> or is it possible to distribute the code on 2 pics in a simple way?
> thanks for your help!

Look again at your code, and again, and again. Don't look for local
gain, see the whole picture and try do to more with less code. No luck?
Pull out a hair or two and get an 18F242 or even a 252, and do some
rework on your code (asm) or buy a new compiler (C).

Wouter van Ooijen

-- -------------------------------------------
Van Ooijen Technische Informatica: http://www.voti.nl
consultancy, development, PICmicro products

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2002\10\16@060354 by Raphael Jacquot

flavicon
face
On Wed, 2002-10-16 at 11:40, .....Martin.BuehlerKILLspamspam.....KEYMILE.COM wrote:
> i have a project, using a 16F876.
> as i ran out of program memory in an early phase, i moved all constants,
> look-up tables, and text strings to an external i2c eeprom, to save
> memory.
> now, in the final phase, i run out of program memory again, and i cannot
> see, where i could reduce the code. i need about 3kb more space.
> what's the best way to go?
> is there a 1:1 replacement for the 16f876 with more memory?
> or is it possible to distribute the code on 2 pics in a simple way?
> thanks for your help!

one solution may be to recode some functions/modules in assembly, such
as the I/O, often used functions, whatever, as hand-written assembly is
usually _much_ shorter than compiled-C code

Sincerely

Raphael

> tino
>
> --
> http://www.piclist.com hint: The PICList is archived three different
> ways.  See http://www.piclist.com/#archives for details.
--
Raphael Jacquot <EraseMEsxpertspam_OUTspamTakeThisOuTesitcom.org>

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2002\10\16@081154 by mike

flavicon
face
On Wed, 16 Oct 2002 11:48:53 +0200, you wrote:

>> i have a project, using a 16F876.
>> as i ran out of program memory in an early phase, i moved all
>> constants,
>> look-up tables, and text strings to an external i2c eeprom, to save
>> memory.
>> now, in the final phase, i run out of program memory again,
>> and i cannot
>> see, where i could reduce the code. i need about 3kb more space.
>> what's the best way to go?
>> is there a 1:1 replacement for the 16f876 with more memory?
>> or is it possible to distribute the code on 2 pics in a simple way?
>> thanks for your help!
>
>Look again at your code, and again, and again. Don't look for local
>gain, see the whole picture and try do to more with less code. No luck?
>Pull out a hair or two and get an 18F242 or even a 252, and do some
>rework on your code (asm) or buy a new compiler (C).
You can always squeeze in another word.... problem is the time
required to do this increases exponentially with each successive word!

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2002\10\16@082234 by ISO-8859-1?Q?Ruben_J=F6nsson?=

flavicon
face
Another option is to create a sort of code interpreter (type BASIC) and have your instructions in external EEPROM.

This will of course execute slower and require a total rewrite of the software.

Your best bet is probably to switch to the 18 series.

Ruben

==============================
Ruben Jönsson
AB Liros Electronic
Box 9124, 200 39 Malmö, Sweden
TEL INT +46 40142078
FAX INT +46 40947388
rubenspamspam_OUTpp.sbbs.se
==============================

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2002\10\16@084938 by Olin Lathrop

face picon face
> i have a project, using a 16F876.
> as i ran out of program memory in an early phase, i moved all constants,
> look-up tables, and text strings to an external i2c eeprom, to save
> memory.
> now, in the final phase, i run out of program memory again, and i cannot
> see, where i could reduce the code. i need about 3kb more space.
> what's the best way to go?

The easiest would be if you can figure out how to reduce the code size of
the existing code.  Look over everything again with an eye towards reducing
code size.

The fallback is to use a PIC 18F252.  It is pin compatible and has more code
space.  However the instruction set is different enough that you will need
to do some amount of conversion.


*****************************************************************
Embed Inc, embedded system specialists in Littleton Massachusetts
(978) 742-9014, http://www.embedinc.com

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2002\10\16@113540 by John Hansen

picon face
Another approach is to offload some of the processing on a second
PIC.  That unfortunately would also involve substantial redesign, but at
least you wouldn't have to learn the new instruction set.  I have
successfully done this, for example, in a case where part of the processing
was driving an LCD display.  I dedicated one pin to communicating between
PICs and off-loaded all the display routines to a second, smaller PIC.

John Hansen


{Quote hidden}

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


More... (looser matching)
- Last day of these posts
- In 2002 , 2003 only
- Today
- New search...