Forums

Ins and Outs of ISP

Started by martin griffith October 29, 2004
I've just been wading through the Atmel In System Progam PDF files,
(mainly trying to catch up on all they things I've avoided)

I'm trying to work out, for a new project, the best way for the user
to download new system software, though a PC and internet.

Currently I use boring old 8051s programed in C, but have used AVR's a
few years ago, with the Imagecraft compiler.

I could move over to MSP430's and investigate JTAG, but the 8051 is
adequate for my needs. Generally the programs will fit inside 8K of
Flash of an 8051.
Press a button on one box, send it down a RS422 i/f, then close and
open  a few relays  and  twiddle a few DAC's accordingly in a second
box, is more or less what I'm doing. 
But I would avoid (the customer) pulling IC's out etc., when a
software upgrade is required

Any comments on things to look out for, or the best route to go?




martin

 Serious error. 
   All shortcuts have disappeared. 
      Screen. Mind. Both are blank. 
martin griffith schrieb:

> I've just been wading through the Atmel In System Progam PDF files, > (mainly trying to catch up on all they things I've avoided) > > I'm trying to work out, for a new project, the best way for the user > to download new system software, though a PC and internet. > > Currently I use boring old 8051s programed in C, but have used AVR's a > few years ago, with the Imagecraft compiler. > > I could move over to MSP430's and investigate JTAG, but the 8051 is > adequate for my needs. Generally the programs will fit inside 8K of > Flash of an 8051. > Press a button on one box, send it down a RS422 i/f, then close and > open a few relays and twiddle a few DAC's accordingly in a second > box, is more or less what I'm doing. > But I would avoid (the customer) pulling IC's out etc., when a > software upgrade is required > > Any comments on things to look out for, or the best route to go?
First you should think about if you want ISP or IAP. With ISP (In System Programming), a special programming interface is provided where you must connect to with a programming cable. The AT89S5x family uses this mode, the programming interface is of SPI type and uses a few regular port pins. To use this kind of ISP, you must take care that these ports (and the reset input) are accessible for the programming adaptor - this sometimes requires additional circuitry (a series resistor in the simplest case). This method is sometimes also called ICP (In Circuit Programming). With IAP (In Application Programming), reprogramming of the code memory is done via the normal serial interface. This requires a special bootloader located in a separate memory region (which is not erased when the application flash is being erased and programmed). Your application must provide code to enter this bootloader upon command, so no "electrical" interaction at the unit is needed. The Atmel/Philips 89C51Rx2 series or the Philips 89LPC900 series use this method. Atmel and Philips also provide free PC software for use with the built-in bootloader. Slightly confusing, they also call this mode "ISP". Both methods are handy, however IAP is more comfortable and sounds it would better fit your needs. -- Dipl.-Ing. Tilmann Reh Autometer GmbH Siegen - Elektronik nach Ma�. http://www.autometer.de
On Fri, 29 Oct 2004 16:54:52 +0200, in comp.arch.embedded you wrote:

>martin griffith schrieb: > >> I've just been wading through the Atmel In System Progam PDF files, >> (mainly trying to catch up on all they things I've avoided) >> >> I'm trying to work out, for a new project, the best way for the user >> to download new system software, though a PC and internet. >> >> Currently I use boring old 8051s programed in C, but have used AVR's a >> few years ago, with the Imagecraft compiler. >> >> I could move over to MSP430's and investigate JTAG, but the 8051 is >> adequate for my needs. Generally the programs will fit inside 8K of >> Flash of an 8051. >> Press a button on one box, send it down a RS422 i/f, then close and >> open a few relays and twiddle a few DAC's accordingly in a second >> box, is more or less what I'm doing. >> But I would avoid (the customer) pulling IC's out etc., when a >> software upgrade is required >> >> Any comments on things to look out for, or the best route to go? > >First you should think about if you want ISP or IAP. > >With ISP (In System Programming), a special programming interface is >provided where you must connect to with a programming cable. The >AT89S5x family uses this mode, the programming interface is of SPI >type and uses a few regular port pins. To use this kind of ISP, you >must take care that these ports (and the reset input) are accessible >for the programming adaptor - this sometimes requires additional >circuitry (a series resistor in the simplest case). This method is >sometimes also called ICP (In Circuit Programming). > >With IAP (In Application Programming), reprogramming of the code >memory is done via the normal serial interface. This requires a >special bootloader located in a separate memory region (which is >not erased when the application flash is being erased and programmed). >Your application must provide code to enter this bootloader upon >command, so no "electrical" interaction at the unit is needed. >The Atmel/Philips 89C51Rx2 series or the Philips 89LPC900 series >use this method. Atmel and Philips also provide free PC software >for use with the built-in bootloader. >Slightly confusing, they also call this mode "ISP". > >Both methods are handy, however IAP is more comfortable and sounds >it would better fit your needs.
Thanks for pointing me to IAP. It does sound more comfortable for me (and the clients) martin Serious error. All shortcuts have disappeared. Screen. Mind. Both are blank.