Sign in

username:

password:



Not a member?

Search piclist



Search tips

Subscribe to piclist



piclist by Keywords

12F675 | 16F628 | 16F84 | 16f877 | 16F877A | 16F88 | 18F458 | ADC | AVR | Bootloader | CAN | CCS | CRC | EAGLE | EEPROM | ICD | ICSP | IDE | JDM | LED | Macros | Microchip | MPLAB | PCB-CAD | PIC10F | Pic12f675 | PIC16F84 | PIC16F84A | PIC16F877 | PIC18 | PIC18F452 | PicBasic | PICC | PICSTART | PWM | RS-485 | RS232 | SMT | SPI | UART | USART | USB | Wireless | Wisp628 | Xilinx

Ads

Discussion Groups

Discussion Groups | Piclist | more program space

A discussion group for the PICMicro microcontroller. Also called the Microchip PIC, this list is dedicated to the use and abuse of this fine, simple, microcontroller. Close to topic posts are welcome, ie. general electronics.

more program space - mr_gees100_peas - Feb 28 0:49:00 2006

Hi,
    I'm not an expert at his so my question may seem a bit naive. Is
there a way to have more program space for you pic micro besides
upgrading to a pic with more space. I mean is it possible to use an
external eeprom for additional program space? and if so how?
	


(You need to be a member of piclist -- send a blank email to piclist-subscribe@yahoogroups.com )


Re: more program space - Harold Hallikainen - Feb 28 0:56:00 2006

> Hi,
>     I'm not an expert at his so my question may seem a bit naive. Is
> there a way to have more program space for you pic micro besides
> upgrading to a pic with more space. I mean is it possible to use an
> external eeprom for additional program space? and if so how?
>

Some PICs have a mode that accepts external memory, but that takes a whole
lot of pins. The PIC family has a very nice upgrade path of pin compatible
parts so when you run out of memory, you just get the next bigger part.
I've never used the external program capability of those few pics that do
have it.

Haroold

-- 
FCC Rules Updated Daily at http://www.hallikainen.com



(You need to be a member of piclist -- send a blank email to piclist-subscribe@yahoogroups.com )

Re: Microchip self programmer - R Ramesh - Feb 28 1:10:00 2006

Note : i want to do my microchipp need to uograde its programm memory. I will be sending the hex codes thru the I2C then i need to load in to the program memory.
This is to help whenthe system in customer place, if we want to upgrade it then it will be easy
 
////////////////////
thanks for you reply,
 
My intention is ,customer not to know about the codes. now the memory for my usage us more enough. ( the flash memory is 64K). so i want to uograde the microchip itself.
 
Is anybidy know about the self programming?? Is any infomation plese convey it to me. Not much info on web.
 
Thanks
Ramesh
 

mr_gees100_peas <g...@hotmail.com> wrote:
Hi,
    I'm not an expert at his so my question may seem a bit naive. Is
there a way to have more program space for you pic micro besides
upgrading to a pic with more space. I mean is it possible to use an
external eeprom for additional program space? and if so how?
      urs,
     Ramesh






(You need to be a member of piclist -- send a blank email to piclist-subscribe@yahoogroups.com )

Re: more program space - sahfeie - Feb 28 2:36:00 2006

I think external eeprom is for additional memory space only. not for program
www.geocities.com/sahfeie/electronics

----- Original Message ----- 
From: "mr_gees100_peas" <geovar13@geov...>
To: <piclist@picl...>
Sent: Tuesday, February 28, 2006 12:49 PM
Subject: [piclist] more program space
	> Hi,
>     I'm not an expert at his so my question may seem a bit naive. Is
> there a way to have more program space for you pic micro besides
> upgrading to a pic with more space. I mean is it possible to use an
> external eeprom for additional program space? and if so how?
>
>
>
>
>
> to unsubscribe, go to http://www.yahoogroups.com and follow the
instructions
> Yahoo! Groups Links
>
>
>
>
>
>
	The information contained in this Internet message is confidential 
and intended only for the use of the individual or entity 
identified. If the reader of this message is not the intended 
recipient, any dissemination, distribution or copying of the 
information contained in this Internet message is strictly 
prohibited. If you received this message in error, please notify 
the sender immediately.
	


(You need to be a member of piclist -- send a blank email to piclist-subscribe@yahoogroups.com )

Re: Microchip self programmer - Chad Russel - Mar 1 22:02:00 2006

There is information and sample bootloader programs at the microchip
website: 
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1490&filterID=382

--- R Ramesh <ramesh_talk@rame...> wrote:

> Note : i want to do my microchipp need to uograde its programm
> memory. I will be sending the hex codes thru the I2C then i need to
> load in to the program memory. 
>   This is to help whenthe system in customer place, if we want to
> upgrade it then it will be easy 
>    
>   ////////////////////
>   thanks for you reply, 
>    
>   My intention is ,customer not to know about the codes. now the
> memory for my usage us more enough. ( the flash memory is 64K). so i
> want to uograde the microchip itself.
>    
>   Is anybidy know about the self programming?? Is any infomation
> plese convey it to me. Not much info on web.
>    
>   Thanks
>   Ramesh
>    
> 
> mr_gees100_peas <geovar13@geov...> wrote:
>   Hi,
>     I'm not an expert at his so my question may seem a bit naive. Is
> there a way to have more program space for you pic micro besides
> upgrading to a pic with more space. I mean is it possible to use an
> external eeprom for additional program space? and if so how? 
> 
> 
> 
> 
> 
> to unsubscribe, go to http://www.yahoogroups.com and follow the
> instructions 
> 
> 
> 
>   SPONSORED LINKS 
>         Microcontroller   Microprocessor   Microchip pic    
> Microcontrollers   Picmicro   Pic microcontrollers 
>     
> ---------------------------------
>   YAHOO! GROUPS LINKS 
> 
>     
>      
> 
>     
> ---------------------------------
>   
> 
> 
> 
> 
>         urs, 
>        Ramesh
>   
> 
> 
> 
> 		
> ---------------------------------
>
	My software has no bugs, only undocumented features.



(You need to be a member of piclist -- send a blank email to piclist-subscribe@yahoogroups.com )

Re: more program space - Chris - Mar 2 6:28:00 2006

--- In piclist@picl..., "mr_gees100_peas" <geovar13@...> wrote:
>
> Hi,
>     I'm not an expert at his so my question may seem a bit naive. Is
> there a way to have more program space for you pic micro besides
> upgrading to a pic with more space. I mean is it possible to use an
> external eeprom for additional program space? and if so how?
>

It is possible, but you need to be sure that you're using a pic which 
can write to it's own program space, such as the 18 series products 
and some of the 16F flash series.

The technique is to reserve a space in program memory in the pic for 
your EEPROM stored routines to be read into, then just read the eeprom 
data and write to the program space and run it. The management of the 
memory needs to be very tight, and you need to make sure you don't 
overwrite an area of program space which has prime code which never 
changes.

It's a solution but it should really only be used when you can justify 
not moving to a larger device to benefit from the extended memory.

chris
	


(You need to be a member of piclist -- send a blank email to piclist-subscribe@yahoogroups.com )

Re: more program space - upand_at_them - Mar 2 21:46:00 2006

So you're going to write a chunk of code into memory, run it, write 
another chunk, run it....?  You've actually done this?

No, the PIC program space cannot be expanded by any practical means 
with external EEPROM.

If speed isn't an issue, you could implement an interpreter like the 
Basic Stamp and run the code from the external EEPROM.  But, then, 
that's not practical either.  Need more program space?...Buy a bigger 
PIC.

Mike
	--- In piclist@picl..., "Chris" <fixitsan@...> wrote:
>
> --- In piclist@picl..., "mr_gees100_peas" <geovar13@> wrote:
> >
> > Hi,
> >     I'm not an expert at his so my question may seem a bit naive. 
Is
> > there a way to have more program space for you pic micro besides
> > upgrading to a pic with more space. I mean is it possible to use 
an
> > external eeprom for additional program space? and if so how?
> >
> 
> It is possible, but you need to be sure that you're using a pic 
which 
> can write to it's own program space, such as the 18 series products 
> and some of the 16F flash series.
> 
> The technique is to reserve a space in program memory in the pic 
for 
> your EEPROM stored routines to be read into, then just read the 
eeprom 
> data and write to the program space and run it. The management of 
the 
> memory needs to be very tight, and you need to make sure you don't 
> overwrite an area of program space which has prime code which never 
> changes.
> 
> It's a solution but it should really only be used when you can 
justify 
> not moving to a larger device to benefit from the extended memory.
> 
> chris
>
	


(You need to be a member of piclist -- send a blank email to piclist-subscribe@yahoogroups.com )

Re: more program space - Chris - Mar 3 8:47:00 2006

--- In piclist@picl..., "upand_at_them" <upand_at_them@...> 
wrote:
>
> So you're going to write a chunk of code into memory, run it, write 
> another chunk, run it....?  You've actually done this?
> 

To the extent that I downloaded new code via the serial port, yes. 
Which is quite a good way to do it, albeit a little slow when compared 
to parallel access schemes.
	> No, the PIC program space cannot be expanded by any practical means 
> with external EEPROM.
	I agree, unless you can't get a pic that is big enough.....
	


(You need to be a member of piclist -- send a blank email to piclist-subscribe@yahoogroups.com )

Re: more program space - rtstofer - Mar 3 10:53:00 2006

--- In piclist@picl..., "Chris" <fixitsan@...> wrote:
>
> --- In piclist@picl..., "upand_at_them" <upand_at_them@> 
> wrote:
> >
> > So you're going to write a chunk of code into memory, run it, write 
> > another chunk, run it....?  You've actually done this?
> > 
> 
> To the extent that I downloaded new code via the serial port, yes. 
> Which is quite a good way to do it, albeit a little slow when compared 
> to parallel access schemes.
> 
> 
> > No, the PIC program space cannot be expanded by any practical means 
> > with external EEPROM.
> 
> 
> I agree, unless you can't get a pic that is big enough.....
>

Then change to something like the Atmel ATmega128 which has 128k of
flash, 4k of RAM and 4k of EEPROM.  Runs at 16 MHz with one
instruction per clock - 16 MIPS.  Compared to maybe 2.5 MIPS for the
mid-range PIC

Even the most glutonous C programs will have  difficulty filling this
up.  Heck, I'm using the worst of the library functions, full floating
point printf, scanf, ATAN2 plus a couple of thousand lines of code and
I'm still less than 20k.

If RAM becomes tight consider adding 128k of external RAM.  It uses a
bunch of pins but memory just became a non-issue.  See the MAVRIC IB
at www.bdmicro.com for an example.

Or, move to the LPC2106 ARM7 with 128k of flash and 64k of RAM -
running at 60 MIPs by the way.

Richard
	


(You need to be a member of piclist -- send a blank email to piclist-subscribe@yahoogroups.com )

Re: more program space - Chris - Mar 3 13:37:00 2006

--- In piclist@picl..., "rtstofer" <rstofer@...> wrote:
>
> --- In piclist@picl..., "Chris" <fixitsan@> wrote:
> >
> > --- In piclist@picl..., "upand_at_them" <upand_at_them@> 
> > wrote:
> > >
> > > So you're going to write a chunk of code into memory, run it, 
write 
> > > another chunk, run it....?  You've actually done this?
> > > 
> > 
> > To the extent that I downloaded new code via the serial port, 
yes. 
> > Which is quite a good way to do it, > >
> 
> Then change to something like the Atmel ATmega128 which has 128k of
> flash, 4k of RAM and 4k of EEPROM.  Runs at 16 MHz with one
> instruction per clock - 16 MIPS.  Compared to maybe 2.5 MIPS for the
> mid-range PIC

I'm assuming that the MEGA part of it's name means it's the most 
advanced part. To compare like with like, Microchip's most advanced 
range, at the top of the 18F series, has comparable specs to the 
ATmega.

But there are times when 128k isn't enough. Honestly. If you need 
advanced maths routines, perhaps you need to do 4 part logarithmic 
differentiation on real-time data then you need a lot of resources, 
lot's of routines, and many lookup tables. And then if the data needs 
to be output in different languages you have a huge language file 
which has to be stored too.

I worked on a print server which had to parallel process 8 data 
channels, do font substitutions, page formatting and language 
conversions.....you can soon eat up 128k bytes of program space.
Most of the routines, it has to be said, were trivial.Most were 
lookup tables and if the demand for instant access hadn't of been 
there the next step was in fact to read data from serial eproms. At 
the end of the project the code was re-written for an SBC with a hard-
drive.

Perhaps we should have found out what was being deemed to be 
insufficient program space, because for the most part you can upgrade 
to a larger device

Chris
	


(You need to be a member of piclist -- send a blank email to piclist-subscribe@yahoogroups.com )

Re: more program space - rtstofer - Mar 3 14:20:00 2006

--- In piclist@picl..., "Chris" <fixitsan@...> wrote:
>
> --- In piclist@picl..., "rtstofer" <rstofer@> wrote:
> >
> > --- In piclist@picl..., "Chris" <fixitsan@> wrote:
> > >
> > > --- In piclist@picl..., "upand_at_them" <upand_at_them@> 
> > > wrote:
> > > >
> > > > So you're going to write a chunk of code into memory, run it, 
> write 
> > > > another chunk, run it....?  You've actually done this?
> > > > 
> > > 
> > > To the extent that I downloaded new code via the serial port, 
> yes. 
> > > Which is quite a good way to do it, > >
> > 
> > Then change to something like the Atmel ATmega128 which has 128k of
> > flash, 4k of RAM and 4k of EEPROM.  Runs at 16 MHz with one
> > instruction per clock - 16 MIPS.  Compared to maybe 2.5 MIPS for the
> > mid-range PIC
> 
> I'm assuming that the MEGA part of it's name means it's the most 
> advanced part. To compare like with like, Microchip's most advanced 
> range, at the top of the 18F series, has comparable specs to the 
> ATmega.

I don't know enough about the product line of either manufacturer to
say.  I use the 16F877(A), the 16F628 and I really like the 16F88.  I
haven't looked at the high end PICs but I don't like the architecture
of the mid-range devices.  That banking and paging stuff is complete
nonsense.  I am also not fond of the high voltage programming and I
not sure what to make of LVP.  The high cost of UNIVERSAL programmers
is a downside.  Sure, there are a bunch of low component count
programmers for one or two chips.  But, I want to program them all! 
Even the 16F57.

I know even less about the Atmel line.  The only device I have used is
the ATmega128 although I have a few of the smaller devices laying
around.  I like the architecture and the ISP programming.  No
expensive programming devices needed and it works reliably.

I got interested in the ATmega128 because I wanted to think about the
MicroMouse contests for maze solving bots.  The flood-fill algorithm
is simple enough, assuming sufficient RAM, and the first device I
tried was the ATmega128.  I can't recall the calculation time but it
was adequate to do it at a full run.  Then I decided to pick up the
pace by putting it in an ARM7.  Now, that chip just hauls.

> 
> But there are times when 128k isn't enough. Honestly. If you need 
> advanced maths routines, perhaps you need to do 4 part logarithmic 
> differentiation on real-time data then you need a lot of resources, 
> lot's of routines, and many lookup tables. And then if the data needs 
> to be output in different languages you have a huge language file 
> which has to be stored too.
> 
> I worked on a print server which had to parallel process 8 data 
> channels, do font substitutions, page formatting and language 
> conversions.....you can soon eat up 128k bytes of program space.
> Most of the routines, it has to be said, were trivial.Most were 
> lookup tables and if the demand for instant access hadn't of been 
> there the next step was in fact to read data from serial eproms. At 
> the end of the project the code was re-written for an SBC with a hard-
> drive.
> 
> Perhaps we should have found out what was being deemed to be 
> insufficient program space, because for the most part you can upgrade 
> to a larger device
> 

The ARM7 has a 32 bit address bus so it can directly address 4 GB. 
Various devices have external memory interfaces such as the LPC2292
which has four 16 MB banks with 8, 16 or 32 bit data width.  Other
devices handle it differently.

Processors are never large enough to handle a programmer's need to
stuff more features in the box.  Sometimes these features are actually
requested/required by the customer.  At some point you wind up moving
to ARM9 with Linux or even up to the ITX boards with high end Pentium
chips.  I kind of like the Intel PXA255 and I'll probably like the 270
even more.  But, I am not conversant enough with Linux to do my own
embedded programming.  I do have the gumstix (www.gumstix.com) but I
can't claim to understand much of the kernel.

But, speed still costs money.  How fast can you afford to go?

Richard
	


(You need to be a member of piclist -- send a blank email to piclist-subscribe@yahoogroups.com )