On 7 Dec 2008 at 18:44, Tony Duell wrote:
Can you program and debug either or both of these
chips without
propietary hardware or software. In other words, is documentation for the
following availalbe (without signing an NDA, etc )
Absolutely. Many of the tools are open-source, royalty-free, running
on a variety of OS platforms. The chips themselves are documented to
a fare-thee-well. For example, the ATMega8 user's manual runs to
over 300 pages (PDF downloadable for free) and it doesn't even
discuss the instruction set--that's in the "AVR family" manual.
1) How to send/receive words to the chip (what lines
to wiggle and how,
what voltages to apply, etc)
2) The binary instruction set
3) THe debugging commands/responses
Yes, all of that, provided that you're working with a chip that has
onboard breakpoint capabilities (not all do).
When checking out a new circuit, I use a little debugger that I wrote
myself for the AVR that communicates over an RS-232C serial port (I
had to add a MAX202 to provide EIA voltage levels). It allows me to
twiddle bits on various ports and on-chip devices to see what
happens. It took me about 2 days to learn the instruction set and
write the debugger. It worked on the 2nd try.
Even if you're reduced to "cut and try", programming is usually very
fast and can be done in-circuit.
Could I, if I wanted, make the programmer and write
the software from
scratch?
Many people in fact, do just that.
Here, for example, is one parallel-port in-circuit programmer for the
AVR:
http://wiredworld.tripod.com/tronics/atmel_isp.html
It is by no means the simplest, requiring one 74HCT245 to work. If
you want to write your own programming software, the manual documents
the protocol.
Similar devices and documentation exist for the PIC uCs.
uCs are simple, cheap and ubiquitous. They're even "vintage." It's
just plain silly to eschew them.
Ceers,
Chuck