The first time you use the AVRISP with your board, you should follow these setup instructions. Once the drivers are loaded, the LED on the AVRISP should turn green to indicate that it detects the target voltage on your board.
#AVRISP DRIVER INSTALL#
Plug the USB cable into your PC, and install the drivers when Windows prompts you. The red wire indicates the side of the connector with pin 1. Plug the 6-pin connector on the end of the AVRISP's cable into the 6-pin header on your board. The result should look something like this: Both the programmer and LEDs will work properly with everything connected at the same time. It's okay that you will be sharing some wires with the LEDs you have connected to PORTB. Wire VCC and GND to VCC and GND on your board, and connect MISO, MOSI, SCK, and RESET to the corresponding pins on your ATmega16 (see the AVR datasheet for the pins on the ATmega16). The following diagram shows the pinout for the ISP (In-System Programming) connector: You probably want to locate it near pin 1 on the ATmega16 to keep your wires short. Use your pliers to bend the longer set of pins so that the header can be plugged in across one of the gaps in your breadboard. I've placed a bunch of these in the supply cabinet with the resistors.
The setup for the AVRISP is different than the JTAGICE, but you can have your breadboard set up with headers to connect both devices so that it's easy to switch between the two.
You should try using the AVRISP first, and then if you find that you can't debug your program without stepping through and setting breakpoints, switch to the JTAGICE. The AVRISP programmer does not have the advanced debugging features of the JTAGICE, but it still allows you to load your program onto the ATmega16.
The AVRISP looks just like the JTAGICE, except it's a bit smaller and it has a 6-pin connector on the end of the cable instead of the 10-pin connector on the JTAGICE. Using the AVRISP Programmer Using the AVRISP Programmer Introduction