David Harmon wrote: > If you really want to build a programmer that can be used on a generic > serial port with pins 2, 3, and 7, like say on a UNIX box, I think it has > to have a baud rate generator, the functionality of a UART, and plenty of > glue. I would be delighted to learn that's not true. David, Although I could argue about the need for a baud rate generator (I use a monostable to recover timing) I don't think that I can really refute what you say. If I wanted an RS232 hosted 8-bit bi-directional parallel port I would use a UART without question. I didn't; I wanted a simple interface to bit-bang SPI/I2C using the serial port. That's enough functionality to program the 16C84 at least. I admit the circuit I came up with is not so very simple, but it is probably no more complex than a UART based design. Furthermore it has the advantages of smaller size (it doesn't use a 40-pin chip), lower cost and can be powered directly from the RS232 port in many cases. I also admit it could be done better by a micro-controller but that defeats my main objective. I will even admit that the name Machine Independent Parallel Interface is probably over the top for such a modest thing. If you (or anybody else for that matter) is interested I can e-mail a copy of my circuit and description and you would then be in a better position to judge if the idea has any merit at all. You quoted William Chops Westfield: > > Creating a port capable of doing this in a general fashion, while > > maintaining the ability to control timing of the bit-twiddling to a very > > fine degree (which is probably why the parallel port was used in the first > > place) is going to be a difficult task. and wrote: > Yep. I would expect that things like the timing of a program pulse would > have to be done with a one-shot or something. One of the things I really like about the PIC16C84 is the fact that the programming operation is self-timed (though you have to make sure you don't ask it to program another location until 10ms or so has elapsed). So I see a 16C84 as being the heart of my universal PIC programmer. The downside is that the 16C84 doesn't have enough I/O to program the 16C5X PICs without the addition of some glue. I guess that I could get the complexity of the final programmer down to a bare minimum by a two-step boostrapping process: use MIPI to program 'C84; use 'C84 to program 'C64 (say); use 'C64 in final design. I think this is taking things a bit too far. As I said in one of my (too frequent) recent posts, I don't see members of the PICLIST as being the primary audience for this project, so perhaps I should tout my wares elsewhere. Thanks to you and everyone else who has contributed to the discussion. David -- david.tait@man.ac.uk