The PICKIT2 programmer is based on the PIC18F2550 microcontroller, which supports connection to a computer via the USB 2.0 port and does not require a separate power source. In addition to microcontroller firmware, the programmer can be used to debug the UART protocol homemade, the source code of the program and the scheme can be easily accessed on the Internet, so if you have free time, the necessary parts and direct hands, you can assemble it yourself.
Included with the programmer is a small board with a ZIF panel for flashing microcontrollers in DIP cases and a pretty good USB cable. For a computer, download the program from the official site, with which you can flash microcontrollers, debug the program, and update the firmware of the programmer itself.
Cost: ~ 605