This is a programmer for PIC microcontrollers I built a while ago. parallel_port_programmer: This is the first programmer I built. It uses a 3rd party library called DlPortIo that allows user space programmers to execute IN/OUT instructions. It bit bangs data over the parallel port. It is difficult to get microsecond accurate timing, so I ended up using fairly large granularity delays. As a result, it was really slow. serial_port_programmer: This uses a PIC to drive the programming lines, so a programmer is required to bootstrap it. The programmer PIC communicates with the host computer using a serial port. I prototyped the first version on a piece of perf board with point-to-point connections. The schematic is captured in serial-programmer.sch. I also design a version that would use a USB-to-serial converter and was bus powered, but never built it.
jbush001/PIC-Programmer
I guess PIC is pretty passé now with all the Arduino stuff, but this is a programmer I made a while back for Microchip's low end microcontrollers.
CApache-2.0