Re: universal programmer



"Abstract Dissonance" <Abstract.Dissonance.hotmail.com> wrote in message
news:11qoqhlquql4kd3@xxxxxxxxxxxxxxxxxxxxx
> Since I'm trying to get into MCU it seems I will need a programmer to get
> anywhere. From looking online it seems that any "decent" programmer is
> pretty expensive(1k+) and those that are cheap seem to offer very few
> features and few chip support.

That may be, but since you're just "getting into MCUs," you might as well get
some <$50 "family specific" programmers until you decide what you really want.
Those programmers you see for $1k+ are meant for production environments where
you really are going to test the device at the voltage and frequency limits,
you need to program devices very quickly, etc. -- very few hobbyists use them,
and there are plenty of low-volume products out there that don't either.

> I was thinking that it shouldn't be very difficult to program just about any
> chip by using a computer if the computer had "access" to all the pins on the
> chip. From looking at a few data sheets it seems that its very easy to
> program a MCU by simply handling the procedure through the software.

Yes it is. In fact, you don't even have to write the software yourself --
there are plenty of freeware programmers out there, like
http://www.lancos.com/prog.html . Most MCU companies give away their
programming software anyway, if you're willing to wire up (or buy a clone of)
the company's own programming pod (they vary greatly in complexity -- some are
nothing more than a buffer chip or two and a handful of resistors, others
contain pre-programmed MCUs themselves, etc.).

> It seems to me that if most chips follow a very similar method where you use
> a few pins(lets say arbitrary too) to get it into program mode and a serial
> communication on one pin to transfer the code then it would be extremly easy
> to program any of those chips by using a computer(with just about any number
> of pins). Is this the actual case?

Pretty much, yes... although if you're looking for production speeds, there's
often a parallel programming mode than -- for some devices -- is much faster.
Those fancy universal programmers will usually have multiple DACs in them to
support "weird" programming voltages as well.

> Lets suppose I have a device that simply lets me access any of the pins on a
> chip from software.... could I then not use the software to program the
> chip? If so, is this true of pretty much most of the MCU's and EEPROMS or
> just a few? If not, what are the reasons why I couldn't do this?

In general that's true. The tricky part is that, for complex chips, sometimes
getting the programming information is difficult. (The manufacturer may want
you to sign an NDA agreement, and may not even talk to you if you're just some
single guy who's doing this for his own edification.)

> Only thing I can think of that could prevent it from being so easy is
> supplying the proper voltage to the right pin(but this shouldn't be that
> hard) and getting the right clock into the chip.

....and being able to route those voltages/clocks to multiple pins easily
(older universal programmers had adapter sockets to do this). And being able
to generate precisely timed pulses (for some devices), which is difficult to
do under, e.g., Windows.

> Definately would be much cheaper to do than buying a 1000$ programmer.

What you're talking about is more in line with the capabilities of the <$50
programmers. :-) Keep in mind that a significant portion of the $1000 for a
universal programmer is for someone to sit around and add new chips as they
come out -- you're paying for the development of programming algorithms for
thousands of devices, which is kinda silly if you're only using 2 or 3.

> Any ideas?

Goto somewhere like AVRFreaks.Com or pick up a copy of Nuts & Volts
magazine -- you see literally dozens if not hundreds of inexpensive
programmers that should cover your needs, as well as plenty of schematics for
rolling your own.

---Joel


.